Android DevTools MCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ADB_PATH | No | The path to the adb executable if not on PATH | |
| ANDROID_SERIAL | No | The serial number of the Android device to connect to when multiple devices are connected |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| android_list_devicesA | List all ADB-connected emulators and physical devices, including offline and unauthorized targets. |
| android_take_snapshotA | Capture a compact UI Automator hierarchy. Use its snapshot and node IDs for safe node-targeted taps. |
| android_take_screenshotC | Capture the current Android display as a PNG image. |
| android_get_app_stateA | Get the foreground package/activity, optional package process state, and display metadata. |
| android_tapB | Tap either explicit screen coordinates or a node from the latest snapshot. Node taps are revalidated before acting. |
| android_type_textA | Type ADB-safe ASCII text into the focused UI node. Optionally clear its existing content first. |
| android_swipeB | Perform a swipe gesture between two screen coordinates. |
| android_press_keyA | Press Back, Home, Enter, Delete, a directional key, a KEYCODE_* name, or a numeric Android keycode. |
| android_wait_forA | Poll the semantic UI until matching nodes exist, disappear, or have the requested state. |
| android_get_logsA | Read bounded logcat output filtered to the requested or foreground application's current process IDs. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 10 tools
Each tool has a clearly distinct purpose: device listing, app state, logs, input methods (tap, swipe, key, type), UI capture (screenshot, snapshot), and UI waiting. No overlaps.
All tools follow the consistent prefix 'android_' and use snake_case with verb_noun pattern (e.g., get_app_state, press_key, take_screenshot). Minor exception with 'wait_for' but still consistent pattern.
10 tools is well-scoped for Android UI automation, covering essential actions without being too many or too few.
Covers core UI interaction (tap, swipe, type, key press), device info, logging, screenshots, and UI hierarchy snapshots. Missing actions like long press or scroll, but these can be worked around.