adb_grant_permission
Grant a runtime permission to a package
How to use it
adb_grant_permission is exposed by the DeepADB MCP server. Add the server to your MCP client (Claude Desktop, Cursor, Windsurf and others), and the adb_grant_permission tool becomes available to the model automatically. See the full listing for setup details and every tool this server provides.
Install DeepADB
npm install && npm run buildOther tools in DeepADB (39)
Read text file from device with optional line limit
Clear all app data and cache
Detailed device properties (model, OS, SDK, build, security patch, ABI)
List all connected devices with state, model, and product info
SHA-256/SHA-1/MD5 hash with size-based timeout estimation
Change permissions (Zod-validated octal mode, depth-based recursive protection)
Change ownership (root required, depth-based recursive protection)
Copy with pre-flight size+space check and post-verify size match
Filesystem report: type, mount, capacity, capabilities, SELinux, limitations
Move/rename with source depth protection and post-verify
Find/replace text in files (sed-backed, proper escaping, backup option)
File metadata: size, permissions, timestamps, ownership, SELinux context
Create empty files or update timestamps (explicit timestamp support)
Create or overwrite text files via heredoc (buffer limit warning, fs-aware, post-verify)
Search for files by name/pattern with depth control and result capping
Force-stop an app immediately
Read a specific system property or dump all properties
Search file contents with fixed-string default, recursive depth control, result capping
Comprehensive toolchain validation: ADB binary, server, device connection, authorization, root access, and storage writability
Install APK with replace/downgrade options
List packages filtered by name or type (all/system/third-party)
List all declared and granted permissions for a package, filterable by granted/denied
Filtered logcat snapshot with tag, priority, grep, and buffer selection
Clear all logcat buffers
Crash buffer log snapshot
Start a background logcat watcher with ring buffer accumulation
List device directory contents (simple or detailed)
Create directories with parent creation (-p), hard-blocked kernel paths
Detailed package info (version, permissions, paths)
Pull file from device to local filesystem
Push local file to device (hard-blocked kernel paths, fs-type awareness, storage reporting)
Discover registered activities, services, and receivers with intent filters
Force-stop then re-launch in one call (configurable delay)
Revoke a runtime permission from a package (reset permission state for testing denial flows)
Delete files/directories with depth-based recursive protection and symlink resolution
Execute commands as root via su (requires rooted device, security-checked)
Execute arbitrary shell commands with configurable timeout (security-checked)
Launch an app by package name (resolves launcher activity)
Remove package with optional data retention