martingeidobler avatar

Android

martingeidobler/android-mcp-server

This gives Claude direct control over Android devices and emulators through ADB's full API surface. You get 25 tools covering screenshots with automatic compression, UI hierarchy inspection with element bounds and IDs, touch automation (tap, swipe, scroll, type), logcat filtering by package or log level, and app lifecycle management (install, launch, pull files). The tap_and_wait compound action is clever: it taps an element, waits for UI to settle, and returns the new element tree in one round trip. Reach for this when you're debugging Android apps, documenting bugs with AI assistance, or automating UI testing workflows without modifying your app. It maintains a persistent ADB shell session and caches device info for faster execution across multiple commands.

GitHub stars
46
tools
25
transport
STDIO
env var
1
last updated
Mar 17, 2026

Tools

25 tools

Public tool metadata for what this MCP can expose to an agent.

list_devicesList connected Android devices and emulators

List connected Android devices and emulators

No parameter schema in public metadata yet.

list_avdsList available Android Virtual Devices

List available Android Virtual Devices

No parameter schema in public metadata yet.

start_emulatorStart an AVD by name (waits up to 60s)

Start an AVD by name (waits up to 60s)

No parameter schema in public metadata yet.

screenshotTake screenshot for visual analysis. Optional `save_path` to save to disk

Take screenshot for visual analysis. Optional `save_path` to save to disk

No parameter schema in public metadata yet.

get_ui_treeGet UI element hierarchy with bounds, text, resource IDs, and state

Get UI element hierarchy with bounds, text, resource IDs, and state

No parameter schema in public metadata yet.

tapTap at screen coordinates

Tap at screen coordinates

No parameter schema in public metadata yet.

tap_elementTap element by resource-id, text, or content-desc

Tap element by resource-id, text, or content-desc

No parameter schema in public metadata yet.

tap_and_waitTap element, wait for UI to settle, return new UI tree — single round trip

Tap element, wait for UI to settle, return new UI tree — single round trip

No parameter schema in public metadata yet.

long_pressLong press at coordinates (context menus, drag handles)

Long press at coordinates (context menus, drag handles)

No parameter schema in public metadata yet.

double_tapDouble tap at coordinates

Double tap at coordinates

No parameter schema in public metadata yet.

multi_tapTap the same coordinates N times with a fixed interval (spam tapping)

Tap the same coordinates N times with a fixed interval (spam tapping)

No parameter schema in public metadata yet.

tap_sequenceMulti-step action chain: taps, waits, text input, key presses, swipes in any order

Multi-step action chain: taps, waits, text input, key presses, swipes in any order

No parameter schema in public metadata yet.

type_textType text into focused input

Type text into focused input

No parameter schema in public metadata yet.

press_keyPress key (back, home, enter, tab, delete, menu, etc.)

Press key (back, home, enter, tab, delete, menu, etc.)

No parameter schema in public metadata yet.

swipeSwipe gesture between coordinates

Swipe gesture between coordinates

No parameter schema in public metadata yet.

scroll_to_elementScroll until element is visible

Scroll until element is visible

No parameter schema in public metadata yet.

wait_for_elementWait for element to appear (with timeout)

Wait for element to appear (with timeout)

No parameter schema in public metadata yet.

get_logsGet logcat output, filterable by package, log level, and time

Get logcat output, filterable by package, log level, and time

No parameter schema in public metadata yet.

clear_logsClear logcat buffer (call before reproducing a bug for clean output)

Clear logcat buffer (call before reproducing a bug for clean output)

No parameter schema in public metadata yet.

get_device_infoGet model, Android version, API level, screen size, DPI

Get model, Android version, API level, screen size, DPI

No parameter schema in public metadata yet.

launch_appLaunch app by package name

Launch app by package name

No parameter schema in public metadata yet.

install_apkInstall APK file

Install APK file

No parameter schema in public metadata yet.

get_current_activityGet foreground app and activity

Get foreground app and activity

No parameter schema in public metadata yet.

pull_filePull a file from the device to local filesystem

Pull a file from the device to local filesystem

No parameter schema in public metadata yet.

adb_shellRun arbitrary ADB shell command

Run arbitrary ADB shell command

No parameter schema in public metadata yet.

Sponsors

Configuration

ANDROID_HOME

Path to Android SDK (auto-detected on macOS at ~/Library/Android/sdk)

Readme

Android MCP Server

npm version npm downloads License: MIT android-mcp-server MCP server Awesome MCP Servers SocketBadge

MCP server for controlling Android emulators and devices via ADB. Gives AI assistants the ability to see, interact with, and debug Android apps — taking screenshots, tapping elements, reading logs, and documenting bugs.


View the full README on GitHub

Details

Repository
github.com/martingeidobler/android-mcp-server
Categories
Automation & Workflows, Mobile Development
Package
android-mcp-server
Transport
STDIO
Registry
MCP registry, active

Related Automation & Workflows MCP servers

View all
1webdriverio avatarMcpwebdriverio/mcpMCP server with WebdriverIO for browser and mobile app automation (iOS/Android via Appium)0stars
2mybolide avatarMcp Probe Kitmybolide/mcp-probe-kitSpec-driven dev workflow MCP: start_* orchestration, memory, GitNexus, quality gates.41stars
3blockscout avatarBlockscout Mcp Serverblockscout/mcp-serverProvide AI agents and automation tools with contextual access to blockchain data including balance…0stars
4tstockham96 avatarEngramtstockham96/engramIntelligent agent memory with automatic extraction, consolidation, and bi-temporal recall.39stars
5simplemindedbot avatarMnemexsimplemindedbot/mnemexTemporal memory for AI with decay and reinforcement. Two-layer storage (JSONL + Markdown).36stars
6cyanheads avatarWorkflows Mcp Servercyanheads/workflows-mcp-serverStore, query, and create YAML workflow playbooks for LLM agents.32stars