Skip to main content
MCP server CX Codex

Agent Droid Bridge — Claude Code MCP server: ADB control for agents

Wires an AI agent to an Android phone or emulator over ADB, so it can tap, swipe, grab screenshots, launch apps and run shell commands from chat.

Install into Claude Code · Platform CLI All methods and platforms ↓
claude mcp add --env ADB_EXECUTION_MODE=<ADB_EXECUTION_MODE> --env ADB_ALLOW_SHELL=<ADB_ALLOW_SHELL> --env ADB_PATH=<ADB_PATH> --env ADB_EXTRA_TOOL_PACKS=<ADB_EXTRA_TOOL_PACKS> --env ADB_DENIED_TOOLS=<ADB_DENIED_TOOLS> --transport stdio agent-droid-bridge -- uvx agent-droid-bridge
Open on GitHub

What Agent Droid Bridge does

The server hands the agent ADB-backed tools: capture the screen, inspect the UI tree, pull out elements, type text, send keycodes, start apps, run shell commands. Responses are compact and structured, so a long automation run does not drown the context in XML. A separate app_manager pack adds nine more tools for packages, app lifecycle, APK extraction, permissions and intents; switch it on with ADB_EXTRA_TOOL_PACKS=app_manager.

It speaks stdio, which means any MCP-capable client can use it. Start it with uvx agent-droid-bridge and skip cloning anything. The host needs Python 3.11+ and a working ADB install; point ADB_PATH at the binary when it is not on PATH. One attached device is picked automatically, several trigger a prompt.

The default mode is unrestricted, meaning full ADB access. On a device you do not own that is too much: set ADB_EXECUTION_MODE=restricted with an allowlist, or cut shell off entirely via ADB_ALLOW_SHELL=false. Tools you never want the agent to call go in ADB_DENIED_TOOLS, and commands are parsed through shlex. Session logs land in JSONL files once MCP_LOG_ENABLED=true and MCP_LOG_DIR are set.

What it helps with

  • run a UI flow on a real device without writing test code
  • capture a screenshot and read the screen from a prompt
  • pull an APK off the device onto the host
  • check declared permissions and fire an intent
  • verify the screen state after installing a build

Example prompts for the agent

  • Connect to the device, open Settings and turn on dark mode
  • Launch the app and tell me what is on screen right now
  • Extract the calculator APK to the host and show me the path

How to install Agent Droid Bridge

Platform CLI

claude mcp add --env ADB_EXECUTION_MODE=<ADB_EXECUTION_MODE> --env ADB_ALLOW_SHELL=<ADB_ALLOW_SHELL> --env ADB_PATH=<ADB_PATH> --env ADB_EXTRA_TOOL_PACKS=<ADB_EXTRA_TOOL_PACKS> --env ADB_DENIED_TOOLS=<ADB_DENIED_TOOLS> --transport stdio agent-droid-bridge -- uvx agent-droid-bridge

Replace <…> with your own values. 11 more environment variables are in the server README. uvx runs the command named after the package; if the README names another one, use uvx --from agent-droid-bridge <command>

Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more

Questions about Agent Droid Bridge

How to install Agent Droid Bridge in Claude Code?

Run claude mcp add agent-droid-bridge -- uvx agent-droid-bridge. For environment variables use the variant with --env flags and --transport stdio.

What does Agent Droid Bridge do?

It exposes ADB to the agent: taps, swipes, text input, screenshots, UI reading and shell commands on a connected Android device or emulator.

What does it need to run?

Python 3.11+ and ADB on the host, plus an attached device or a running emulator. When adb is not on PATH, set the full path in ADB_PATH.

Similar MCP servers

All MCP servers for Agent setup: memory, context, orchestration →

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor