io.github.fullread/deepadb
NPM · DEEPADB · SCANNED SEP 22
Full-featured ADB MCP server — 209 tools across 49 modules, from UI to baseband.
Available components
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security98
- No malware found by supply-chain analysis.Pass
- No known CVEs affecting this package version or its production dependencies.Pass
- No install/post-install scripts declared.Pass
- 31 of 95 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency48
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (Apache-2.0).Pass
- Actively maintained (last published 22 days ago).Pass
- Publishes a security disclosure policy (SECURITY.md).Pass
Schema Quality & AI Usability89
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Tool/resource definitions use about 19701 tokens (~93/item across 210 items; 209 tools + 1 resources), lean.Pass
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management100
- No destabilizing schema changes in the last 30 days.Pass
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety75
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- 0 of 15 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation; "adb_shell" implies "execute" and declares no destructiveHint at all, which the MCP spec reads as destructive by default. See how to fix → Fail
- An AI judge read all 210 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the io.github.fullread/deepadb MCP server?
io.github.fullread/deepadb runs locally as an npm package, launched with npx -y deepadb. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · deepadb
claude mcp add fullread-deepadb -- npx -y deepadb
{
"mcpServers": {
"fullread-deepadb": {
"command": "npx",
"args": [
"-y",
"deepadb"
]
}
}
} {
"servers": {
"fullread-deepadb": {
"command": "npx",
"args": [
"-y",
"deepadb"
]
}
}
} codex mcp add fullread-deepadb -- npx -y deepadb
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"fullread-deepadb": {
"type": "local",
"command": [
"npx",
"-y",
"deepadb"
],
"enabled": true
}
}
} openclaw mcp add fullread-deepadb --command npx --arg -y --arg deepadb
mcp_servers:
fullread-deepadb:
command: "npx"
args: ["-y", "deepadb"] {
"McpServers": {
"fullread-deepadb": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"deepadb"
]
}
}
} assistant mcp add fullread-deepadb -t stdio -c npx -a -y deepadb
{
"mcpServers": {
"fullread-deepadb": {
"command": "npx",
"args": [
"-y",
"deepadb"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 22 Sept 26 +1
- Stability: 0.97 → pass security
- 20 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 18 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 16 Sept 26 −3
- Stability: pass → 0.80 functional
- 15 Sept 26 +1
- Stability: 0.97 → pass security
- 13 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 90 to 93. That category is still filling its 30-day observation window: 27 days of observed history at the previous scan, 28 at this one. The score rises as the window fills, whether or not the server changes.
- 11 Sept 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 83 to 87. That category is still filling its 30-day observation window: 25 days of observed history at the previous scan, 26 at this one. The score rises as the window fills, whether or not the server changes.
- 9 Sept 26 −3
- Stability: pass → 0.80 functional
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 22 Sept 2026 · Analysed npm/deepadb@1.1.4
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Dependencies 95 packages
| Packages resolved | 95 |
|---|---|
| Stale | 31 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
adb_ril_start ~115
Start capturing RIL (Radio Interface Layer) messages from the radio logcat buffer. Captures network registration, cell info, signal strength, authentication, handover, and NAS events. Useful for radio diagnostics and cellular network research.
| Name | Type | Req | Description |
|---|---|---|---|
| bufferSize | number | – | Max messages to keep in ring buffer (100-50000, default 5000) |
| device | string | – | Device serial |
| includeKernel | boolean | – | Also capture from main and kernel logcat buffers for modem framework and kernel-level radio messages |
No output schema declared.
No examples provided.
adb_ril_stop ~52
Stop a RIL capture session. Shows a summary of captured message categories.
| Name | Type | Req | Description |
|---|---|---|---|
| session | string | yes | Session ID to stop (e.g., 'ril_1'), or 'all' to stop all |
No output schema declared.
No examples provided.
adb_rm ~140
Delete a file or directory on the device. Recursive deletion uses depth-based protection: refuses at depth ≤ 2 from root (blocks rm -rf /system or /sdcard but allows /sdcard/project/build/). Symlinks are resolved before depth checks to prevent traversal bypasses. Hard-blocks /dev, /proc, /sys. For recursive deletes, reports a pre-flight file count.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| path | string | yes | File or directory path to delete |
| recursive | boolean | – | Delete directory recursively (-rf). Depth-protected. |
| root | boolean | – | Use root shell for protected paths |
No output schema declared.
No examples provided.
adb_root_shell ~42
Execute a command as root via su. Requires rooted device.
| Name | Type | Req | Description |
|---|---|---|---|
| command | string | yes | Command to run as root |
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_runtime_audit ~69
Run a unified, read-only DeepADB readiness audit covering transport, authorization, Android state, root, SELinux, storage, common binaries, UI/network support, SQLite, chipset/modem nodes, and Wear prerequisites. Makes no device changes.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial to audit |
No output schema declared.
No examples provided.
adb_screen ~194
Control screen state: wake, sleep, toggle, lock, or unlock. Lock and unlock verify actual keyguard state via dumpsys window. Unlock uses wm dismiss-keyguard (works for swipe keyguards); supply 'pin' to perform the full PIN entry sequence for PIN-protected devices: wakes screen, dismisses keyguard, swipes up to reveal keypad, types PIN, confirms with ENTER, and verifies the keyguard sleep token was released.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Screen action — one of: wake (power on + dismiss keyguard if no PIN), sleep (power off), toggle (flip current state), lock (force keyguard), unlock (dismiss keyguard, with PIN if supplied) |
| device | string | – | Device serial |
| pin | string | – | PIN/password to enter when unlock encounters an active keyguard (digits only for PIN, alphanumeric for password). Only used with action='unlock'. |
No output schema declared.
No examples provided.
adb_screen_size ~53
Get the screen resolution and display density. Returns physical width, height (in pixels), and DPI density. Useful for calculating tap/swipe coordinates and understanding the UI layout grid.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_screen_state ~96
Get a combined screen state snapshot in one call: foreground activity, screen dimensions and density, orientation, battery level, and a TSV list of interactive UI elements. Replaces 3-4 separate tool calls with a single round-trip. Ideal as a first step in any automation workflow.
| Name | Type | Req | Description |
|---|---|---|---|
| clickableOnly | boolean | – | Only include clickable/scrollable elements in TSV output (default true) |
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_screencap ~51
Take a screenshot and save to local filesystem. Returns the file path.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| filename | string | – | Output filename (default: screenshot_<timestamp>.png) |
No output schema declared.
No examples provided.
adb_screencap_annotated ~116
Take a screenshot with UI element bounding boxes and numbered labels composited directly onto the image. Returns the annotated PNG path plus a text legend mapping each element number to its identity. Ideal for LLM workflows that need to reference specific UI elements by number rather than by coordinates.
| Name | Type | Req | Description |
|---|---|---|---|
| clickableOnly | boolean | – | Only annotate clickable/scrollable elements (default true — reduces visual noise) |
| device | string | – | Device serial |
| filename | string | – | Output filename (default: annotated_<timestamp>.png) |
No output schema declared.
No examples provided.
adb_screenrecord_start ~64
Start recording the device screen. Recording runs on-device. Use adb_screenrecord_stop to finish and pull the video file.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| maxDuration | number | – | Maximum recording duration in seconds (1-180, default 60) |
No output schema declared.
No examples provided.
adb_screenrecord_stop ~48
Stop an active screen recording and pull the video file locally. If the recording has already finished (hit time limit), this just pulls the file.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_screenshot_baseline ~190
Capture a named screenshot baseline for later comparison. Saves the screenshot and metadata to the baselines directory.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| name | string | yes | Baseline name (e.g., 'home_screen', 'login_page', 'threat_alert') |
| result_handle | string | – | Optional. If provided, store this tool's result under `result://<tool>/<name>` for retrieval after compaction. Name must be 1-32 chars, [a-zA-Z0-9_-]. Existing handles with the same tool+name are ove… |
| result_handle_ttl | integer | – | Optional. TTL in seconds for the result handle (60 to 604800). Default 43200 (12 hours). Ignored if result_handle is not provided. |
No output schema declared.
No examples provided.
adb_screenshot_compressed ~162
Take a screenshot and pull the full-resolution PNG, plus metadata for client-side compression. Returns local file path, dimensions, file size, and a ready-to-run imagemagick command for converting to a smaller JPEG. (Android doesn't ship imagemagick, so the actual compression is post-processing — this tool sets up everything you need.)
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| filename | string | – | Output filename (default: screenshot_compressed_<timestamp>.jpg) |
| quality | integer | – | JPEG quality (10-100, default 50). Lower = smaller file, more artifacts |
| scale | number | – | Scale factor (0.1-1.0, default 0.5). 0.5 = half resolution |
No output schema declared.
No examples provided.
adb_screenshot_diff ~254
Compare the current screen against a saved screenshot baseline. Decodes PNGs and performs pixel-level comparison (RGB channels), reporting exact pixel difference count, percentage, and the bounding box of the changed region. Supports a tolerance threshold for absorbing minor dynamic elements like clocks or notification badges.
| Name | Type | Req | Description |
|---|---|---|---|
| baseline | string | yes | Baseline name to compare against (from adb_screenshot_baseline) |
| device | string | – | Device serial |
| result_handle | string | – | Optional. If provided, store this tool's result under `result://<tool>/<name>` for retrieval after compaction. Name must be 1-32 chars, [a-zA-Z0-9_-]. Existing handles with the same tool+name are ove… |
| result_handle_ttl | integer | – | Optional. TTL in seconds for the result handle (60 to 604800). Default 43200 (12 hours). Ignored if result_handle is not provided. |
| tolerancePercent | number | – | Pixel difference percentage threshold below which the result reports IDENTICAL. 0 = exact match required. 1-2 absorbs clock/status bar changes. |
No output schema declared.
No examples provided.
adb_screenshot_history ~153
List all saved screenshot baselines with their metadata (timestamp, dimensions, device, file size).
| Name | Type | Req | Description |
|---|---|---|---|
| result_handle | string | – | Optional. If provided, store this tool's result under `result://<tool>/<name>` for retrieval after compaction. Name must be 1-32 chars, [a-zA-Z0-9_-]. Existing handles with the same tool+name are ove… |
| result_handle_ttl | integer | – | Optional. TTL in seconds for the result handle (60 to 604800). Default 43200 (12 hours). Ignored if result_handle is not provided. |
No output schema declared.
No examples provided.
adb_scroll_until ~175
Scroll the screen repeatedly until a target element is found. Performs a swipe gesture, then checks the UI hierarchy for the target. Repeats until found or max iterations reached. Useful for finding elements in long lists or scrollable content.
| Name | Type | Req | Description |
|---|---|---|---|
| contentDesc | string | – | Match elements with this content-description (partial, case-insensitive) |
| device | string | – | Device serial |
| direction | string | – | Scroll direction (default 'down' = content moves up, revealing lower items) |
| maxScrolls | integer | – | Maximum scroll attempts (1-50, default 10) |
| resourceId | string | – | Match elements with this resource-id (partial match) |
| tapWhenFound | boolean | – | Automatically tap the element when found |
| text | string | – | Match elements containing this text (case-insensitive) |
No output schema declared.
No examples provided.
adb_selinux_denials ~100
List recent SELinux AVC denial messages from logcat and kernel logs. Shows which processes were blocked, what they tried to do, and the SELinux contexts involved. Useful for diagnosing permission issues and understanding security policy enforcement.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| lines | number | – | Max denial entries to return (1-1000, default 50) |
| process | string | – | Filter denials by process/source context name |
No output schema declared.
No examples provided.
adb_selinux_status ~63
Check SELinux enforcement mode, policy version, and recent denial count. Shows whether the device is in Enforcing, Permissive, or Disabled mode. Root access provides additional policy details from dmesg audit logs.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_sensor_read ~129
Read current hardware sensor values from the device. Enumerates all available sensors from sensorservice and returns their last-known readings with timestamps. Sensor availability is device-dependent — the tool reports what's present. No root required.
| Name | Type | Req | Description |
|---|---|---|---|
| category | string | – | Filter by sensor category: all, accelerometer, gyroscope, magnetometer, light, barometer, proximity, gravity, linear_accel, rotation, orientation, motion, step, temperature |
| device | string | – | Device serial |
| listOnly | boolean | – | If true, list available sensors without reading values (faster, useful for discovery) |
No output schema declared.
No examples provided.
adb_settings_get ~69
Read an Android settings value from any namespace (system, secure, global)
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| key | string | yes | Setting key (e.g., 'screen_brightness', 'location_mode', 'airplane_mode_on') |
| namespace | string | yes | Settings namespace |
No output schema declared.
No examples provided.
adb_settings_put ~151
Write an Android settings value to any namespace (system, secure, global)
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| key | string | yes | Setting key (e.g., 'screen_brightness' for system namespace, 'wifi_on' or 'airplane_mode_on' for global, 'location_providers_allowed' for secure). Use `adb_shell` with `settings list <namespace>` to… |
| namespace | string | yes | Settings namespace |
| value | string | yes | Value to write. Type depends on the key — typically a string, integer, or 0/1 for booleans. The setting framework accepts everything as a string and parses on read. |
No output schema declared.
No examples provided.
adb_shannon_session ~133
Preflight a Samsung Shannon/Exynos modem session by checking the chipset, root access, known AT ports, and a benign AT handshake together. Optionally sends ATI for identification after a successful handshake. Makes no modem configuration changes.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| includeIdentity | boolean | – | After a successful AT handshake, also send the read-only ATI identity query |
| port | string | – | Optional Shannon device node override (for example /dev/umts_router) |
| timeout | integer | – | Handshake timeout per port in milliseconds (1000-10000, default 3000) |
No output schema declared.
No examples provided.
adb_shell ~61
Execute a shell command on the Android device. Returns stdout and stderr.
| Name | Type | Req | Description |
|---|---|---|---|
| command | string | yes | Shell command to execute on the device |
| device | string | – | Device serial |
| timeout | number | – | Timeout in milliseconds (1s-10min) |
No output schema declared.
No examples provided.
adb_signal_detail ~56
Get detailed signal strength measurements: RSRP, RSRQ, SINR, RSSI, timing advance, and signal bars. Provides raw radio measurements for signal analysis and anomaly detection.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_snapshot_capture ~56
Capture a comprehensive device state snapshot: installed packages, key settings, and system properties. Saves to a JSON file.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| name | string | – | Snapshot name (default: auto-generated timestamp) |
No output schema declared.
No examples provided.
adb_snapshot_compare ~55
Compare current device state against a saved snapshot. Shows added/removed packages, changed settings, and property differences.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| snapshotPath | string | yes | Path to the saved snapshot JSON file |
No output schema declared.
No examples provided.
adb_snapshot_restore_settings ~71
Restore settings from a saved snapshot to the current device. Only restores global and secure settings — does not install/uninstall packages.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| namespace | string | – | Which settings namespace to restore |
| snapshotPath | string | yes | Path to the saved snapshot JSON file |
No output schema declared.
No examples provided.
adb_sqlite_inspect ~200
Safely inspect a Room or SQLite database inside an installed app. Lists package databases, shows schema, or executes one validated read-only query. Requires a debuggable app (run-as) or root; uses device sqlite3 when available and otherwise a bounded read-only host snapshot.
| Name | Type | Req | Description |
|---|---|---|---|
| access | string | – | Access method. auto prefers run-as and falls back to root. |
| action | string | – | List databases, show sqlite_master schema, or run a read-only query |
| database | string | – | Database filename inside the package databases directory (no path separators) |
| device | string | – | Device serial |
| maxRows | integer | – | Maximum rows returned for SELECT/WITH queries (1-1000, default 100) |
| packageName | string | yes | Installed Android package whose databases directory may be inspected |
| query | string | – | One read-only SELECT, WITH, EXPLAIN, or allowlisted PRAGMA statement |
No output schema declared.
No examples provided.
adb_start_activity ~64
Start an activity or app by intent or component name
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| intent | string | yes | Intent or component (e.g., 'com.example/.MainActivity' or '-a android.intent.action.VIEW -d https://example.com') |
No output schema declared.
No examples provided.
adb_start_app ~52
Launch an app by package name (resolves and starts the default launcher activity)
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| packageName | string | yes | Package name (e.g., 'com.example.app') |
No output schema declared.
No examples provided.
adb_tap_element ~135
Find a UI element by text, resource-id, or content-description, then tap its center. Combines UI hierarchy search with input tap in one atomic operation. More reliable than coordinate-based taps for dynamic layouts.
| Name | Type | Req | Description |
|---|---|---|---|
| contentDesc | string | – | Match elements with this content-description (partial, case-insensitive) |
| device | string | – | Device serial |
| index | integer | – | Which match to tap if multiple found (0 = first match, default) |
| resourceId | string | – | Match elements with this resource-id (partial match) |
| text | string | – | Match elements containing this text (case-insensitive) |
No output schema declared.
No examples provided.
adb_tcpdump_start ~114
Start a packet capture on the device using tcpdump. Requires root or tcpdump binary on device. Capture runs in background.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| filter | string | – | tcpdump filter expression (e.g., 'port 443', 'host 10.0.0.1') |
| interface | string | – | Network interface to capture (default: 'any') |
| maxPackets | number | – | Stop after N packets (1-1000000, omit for continuous until stop) |
No output schema declared.
No examples provided.
adb_tcpdump_stop ~34
Stop an active packet capture and pull the pcap file locally for analysis.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_tcpip ~76
Switch a USB-connected device to TCP/IP mode on the specified port (default 5555). After this, you can disconnect USB and use adb_connect.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial (must be USB-connected) |
| port | number | – | TCP port for ADB (1-65535, default 5555) |
No output schema declared.
No examples provided.
adb_telephony ~34
Get telephony state including cell info, signal strength, and network registration.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_test_gen_from_intents ~68
Analyze a package's registered activities and intent filters to generate a test workflow that launches each exported activity and verifies it renders. Produces workflow JSON compatible with adb_workflow_run.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| packageName | string | yes | Package name to analyze |
No output schema declared.
No examples provided.
adb_test_gen_from_ui ~115
Analyze the current screen and generate a test workflow that taps each interactive element, takes screenshots, and verifies the app doesn't crash. Produces a workflow JSON compatible with adb_workflow_run.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| packageName | string | yes | Package name to monitor during test (used for logcat filtering and crash detection) |
| returnToStart | boolean | – | Press Back after each tap to return to the starting screen |
| screenshotAfterEach | boolean | – | Take a screenshot after each tap |
No output schema declared.
No examples provided.
adb_test_gen_save ~53
Save a generated workflow JSON to the workflows directory for later execution with adb_workflow_run.
| Name | Type | Req | Description |
|---|---|---|---|
| name | string | yes | Workflow name (used as filename) |
| workflow | string | yes | Workflow JSON string to save |
No output schema declared.
No examples provided.
adb_test_session_end ~27
End the active test session. Writes a summary manifest and returns the session directory path.
Input schema present but exposes no named parameters.
No output schema declared.
No examples provided.
adb_test_session_start ~60
Start a structured test session. Creates a named directory for organizing numbered screenshots and logcat captures.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| name | string | yes | Test session name (e.g., 'login_flow', 'threat_detection') |
No output schema declared.
No examples provided.
adb_test_step ~78
Capture a numbered test step: takes a screenshot and captures logcat since the last step. Saves both to the session directory.
| Name | Type | Req | Description |
|---|---|---|---|
| captureLogcat | boolean | – | Capture logcat since last step |
| captureScreenshot | boolean | – | Take a screenshot for this step |
| description | string | yes | Description of what this step tests or verifies |
No output schema declared.
No examples provided.
adb_thermal_compare ~70
Compare current thermal/power state against a saved baseline. Reports temperature changes per zone, CPU frequency shifts, and battery drain rate differences.
| Name | Type | Req | Description |
|---|---|---|---|
| baselinePath | string | – | Path to baseline JSON. If omitted, uses the most recent baseline for the device. |
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_thermal_snapshot ~83
Capture a thermal and power snapshot: all thermal zone temperatures, per-CPU frequencies and governors, cooling device states, and battery temperature/current draw. Optionally save as a baseline for later comparison.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| label | string | – | Label for saved baseline |
| save | boolean | – | Save snapshot as a baseline JSON file |
No output schema declared.
No examples provided.
adb_top ~44
Get current CPU and memory usage snapshot
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | Number of iterations (1-100, 1 = snapshot) |
| device | string | – | Device serial |
No output schema declared.
No examples provided.
adb_tunnel_close ~88
Close a managed tunnel by ID, or all managed tunnels at once. The corresponding adb forward/reverse entry is removed and the tunnel is dropped from the cleanup registry. Use adb_tunnel_list to see active tunnel IDs.
| Name | Type | Req | Description |
|---|---|---|---|
| id | string | yes | Tunnel ID (tun_XXXXXX) returned by adb_tunnel_open, or the literal string 'all' to close every managed tunnel. |
No output schema declared.
No examples provided.
adb_tunnel_list ~89
List all active managed tunnels (opened via adb_tunnel_open). Shows tunnel ID, device, direction, and both endpoints. Note: this only surfaces tunnels created via adb_tunnel_open — tunnels created via the low-level adb_forward / adb_reverse won't appear here. For those, use adb_forward_list.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Filter to a specific device serial (default: all devices) |
No output schema declared.
No examples provided.
adb_tunnel_open ~206
Open a managed tunnel between host and device. Higher-level convenience wrapper over adb_forward / adb_reverse: auto-picks a free host port when one isn't specified (forward only), returns an opaque tunnel ID for later close, and registers cleanup so the tunnel is removed on server exit. Direction 'forward' = host port forwards TO device service; 'reverse' = device port forwards TO host service.
| Name | Type | Req | Description |
|---|---|---|---|
| device | string | – | Device serial |
| deviceSpec | string | yes | Device-side spec, e.g., 'tcp:3000' or 'localabstract:app_socket' |
| direction | string | yes | 'forward' (host → device) or 'reverse' (device → host) |
| hostSpec | string | – | Host-side spec, e.g., 'tcp:8080'. For 'forward' direction: omit to auto-pick a free host port. For 'reverse' direction: required (can't auto-pick device-side ports without an extra probe call). |
No output schema declared.
No examples provided.
adb_ui_dump ~122
Dump the current UI hierarchy. Parses the view tree into structured element data with coordinates, text, resource IDs, and interaction flags. Use format='tsv' for token-efficient compact output, format='xml' for raw uiautomator XML.
| Name | Type | Req | Description |
|---|---|---|---|
| clickableOnly | boolean | – | Only show clickable/interactive elements |
| device | string | – | Device serial |
| format | string | – | Output format: 'text' (default, human-readable), 'tsv' (tab-separated, token-efficient), 'xml' (raw uiautomator XML) |
No output schema declared.
No examples provided.
adb_ui_find ~98
Search the UI hierarchy for elements matching text, resource-id, or content-description. Returns matching elements with coordinates for precise adb_input targeting.
| Name | Type | Req | Description |
|---|---|---|---|
| contentDesc | string | – | Match elements with this content-description (partial, case-insensitive) |
| device | string | – | Device serial |
| resourceId | string | – | Match elements with this resource-id (partial match) |
| text | string | – | Match elements containing this text (case-insensitive) |
No output schema declared.
No examples provided.
What is the io.github.fullread/deepadb MCP server?
io.github.fullread/deepadb is an MCP server listed in the public MCP registry as io.github.fullread/deepadb. Full-featured ADB MCP server, 209 tools across 49 modules, from UI to baseband. This page covers its npm package (deepadb).
Is the io.github.fullread/deepadb MCP server safe to use?
io.github.fullread/deepadb scores 86 out of 100 on VerifyMCP. We found no known CVEs affecting it as of 22 September 2026. It declares no install or post-install scripts. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the io.github.fullread/deepadb MCP server expose?
io.github.fullread/deepadb exposes 209 tools: adb_devices, adb_device_info, adb_getprop, adb_shell, adb_root_shell, and 204 more. Their descriptions and schemas cost roughly 19,689 tokens of context every time the server is loaded.
Is the io.github.fullread/deepadb MCP server still maintained?
io.github.fullread/deepadb is still listed as active in the MCP registry. We last reached this channel on 22 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.fullread/deepadb MCP server under?
io.github.fullread/deepadb declares the Apache-2.0 licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.