Agent Droid Bridge MCP Server

Agent Droid Bridge is an MCP server that connects AI agents to Android devices and emulators over ADB. It is built for mobile automation, app

Local serverstdioPython

What is the Agent Droid Bridge MCP server?

Most developer tooling work still happens through a UI a human drives. Agent Droid Bridge MCP server moves it into the conversation instead. Agent Droid Bridge is an MCP server that connects AI agents to Android devices and emulators over ADB. It is built for mobile automation, app testing, dynamic analysis, and reverse engineering: exposing the full surface of ADB as.

The short version

  • 14 built-in tools for screen capture, UI inspection, text reading, element extraction, touch and swipe input, text entry, keycode events, app launching, ADB commands, and device inspection
  • app_manager pack adds 9 tools for package management, app lifecycle, APK extraction, permissions, and intent injection. Load it with ADB_EXTRA_TOOL_PACKS=app_manager
  • Tool availability is reflected in the server's startup instructions. Agents receive an accurate catalog at connect time
  • Auto-detects a single connected device; prompts for selection when multiple devices are present
  • Runs over stdio, compatible with any MCP-capable AI client
  • Structured responses instead of raw XML dumps, keeping agent context lean across long automation runs

Getting it running

agent-droid-bridge on PyPI is all you need. Most clients run it directly, so configuration is a few lines and a restart.

The tools it exposes

The server publishes 14 tools. What each one is for:

  • get_ui_hierarchy — Returns the current screen as an XML UI hierarchy
  • take_screenshot — Captures the screen as a base64-encoded PNG
  • tap_screen — Sends a tap gesture at pixel coordinates
  • swipe_screen — Sends a swipe gesture between two points over a given duration
  • type_text — Types text into the focused input field
  • press_key — Sends an Android keycode event (Back, Home, Enter, etc.)
  • launch_app — Launches an app by its package/activity component name
  • execute_adb_command — Runs an arbitrary ADB or ADB shell command
  • list_devices — Lists all Android devices currently visible to ADB with their serial, state, and model
  • snapshot_ui — Takes a lightweight UI snapshot and returns a token for use with detect_ui_change
  • detect_ui_change — Polls for a UI change after an action; accepts a snapshot token as baseline; returns hierarchy only when requested
  • get_screen_elements — Parses the UI hierarchy and returns structured elements with coordinates and interaction properties; supports tappable, interactive, input, and all

What it needs from you

Configuration is passed through the environment: ADB_EXECUTION_MODE, ADB_ALLOW_SHELL, ADB_PATH, ADB_EXTRA_TOOL_PACKS, MCP_LOG_ENABLED, MCP_LOG_DIR. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

Things to watch

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Agent Droid Bridge.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

How it compares

Plenty of developer tooling servers cover similar ground. The differences that matter in practice are scope of access and how much setup stands between you and a working tool call. Agent Droid Bridge's toolset — get_ui_hierarchy, take_screenshot, tap_screen and 11 more — is a fair guide to whether it matches your workflow. It is maintained by neverlow512; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Available tools

ToolWhat it does
get_ui_hierarchyReturns the current screen as an XML UI hierarchy
take_screenshotCaptures the screen as a base64-encoded PNG
tap_screenSends a tap gesture at pixel coordinates
swipe_screenSends a swipe gesture between two points over a given duration
type_textTypes text into the focused input field
press_keySends an Android keycode event (Back, Home, Enter, etc.)
launch_appLaunches an app by its package/activity component name
execute_adb_commandRuns an arbitrary ADB or ADB shell command
list_devicesLists all Android devices currently visible to ADB with their serial, state, and model
snapshot_uiTakes a lightweight UI snapshot and returns a token for use with detect_ui_change
detect_ui_changePolls for a UI change after an action; accepts a snapshot token as baseline; returns hierarchy only when requested
get_screen_elementsParses the UI hierarchy and returns structured elements with coordinates and interaction properties; supports tappable, interactive, input, and all modes
get_screen_textReturns all visible text on screen sorted top-to-bottom, as plain text
check_device_capabilitiesReturns structured device information — identity, security posture, and hardware specs — in a single call; supports identity, security, hardware, and all modes

How to install the Agent Droid Bridge MCP server

{
  "mcpServers": {
    "agent-droid-bridge": {
      "command": "uvx",
      "args": ["agent-droid-bridge"],
      "env": {
        "ADB_EXECUTION_MODE": "your-value",
        "ADB_ALLOW_SHELL": "your-value",
        "ADB_PATH": "your-value",
        "ADB_EXTRA_TOOL_PACKS": "your-value",
        "MCP_LOG_ENABLED": "your-value",
        "MCP_LOG_DIR": "your-value"
      }
    }
  }
}

Add to claude_desktop_config.json, then restart Claude Desktop.

Configuration

VariableDescriptionRequired
ADB_EXECUTION_MODEConfiguration value read at startup.Optional
ADB_ALLOW_SHELLConfiguration value read at startup.Optional
ADB_PATHFilesystem location the server is allowed to use.Optional
ADB_EXTRA_TOOL_PACKSConfiguration value read at startup.Optional
MCP_LOG_ENABLEDConfiguration value read at startup.Optional
MCP_LOG_DIRFilesystem location the server is allowed to use.Optional

Example prompts to try

  • Use Agent Droid Bridge to get ui hierarchy.
  • Use Agent Droid Bridge to take screenshot.
  • Use Agent Droid Bridge to tap screen.

Frequently asked questions

It connects Agent Droid Bridge to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (get_ui_hierarchy, take_screenshot, tap_screen, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Agent Droid Bridge directly.