android-mcp-server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ANDROID_HOME | No | The path to the Android SDK. If your SDK is not in the default location (~/Library/Android/sdk on macOS), set this variable to point to your SDK directory. |
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 |
|---|---|
| list_devicesA | List connected Android devices and emulators |
| list_avdsB | List available Android Virtual Devices |
| start_emulatorA | Start an Android emulator. Waits up to 60s for it to come online. |
| screenshotA | Take a screenshot of the Android device. Returns the image for visual analysis. Optionally saves to a file path. |
| get_ui_treeA | Get the UI element hierarchy of the current screen. Returns interactive elements with their bounds, text, resource IDs, and state. Use this to find elements before tapping. |
| tapC | Tap at specific screen coordinates |
| tap_elementA | Tap a UI element by its resource-id, text, or content-desc. Finds the element in the UI tree and taps its center. |
| tap_and_waitA | Tap element then wait for UI to settle and return the new UI tree. Combines tap + wait + get_ui_tree into a single fast operation. |
| type_textB | Type text into the currently focused input field |
| press_keyC | Press a hardware/software key |
| swipeC | Perform a swipe gesture on the screen |
| scroll_to_elementA | Scroll down repeatedly until an element matching the given criteria is visible |
| wait_for_elementB | Wait for a UI element to appear on screen. Polls every 500ms. |
| launch_appC | Launch an Android app by package name |
| install_apkC | Install an APK file on the device |
| get_current_activityC | Get the currently displayed app and activity |
| adb_shellC | Run an arbitrary ADB shell command |
| get_logsA | Get device logcat output. Use to find crashes, exceptions, and errors after reproducing a bug. |
| clear_logsA | Clear the logcat buffer. Call this before reproducing a bug to get clean logs. |
| get_device_infoB | Get device details: model, manufacturer, Android version, API level, screen size, and DPI. |
| pull_fileC | Pull a file from the Android device to the local filesystem. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/martingeidobler/android-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server