Android MCP

An MCP server that drives an Android device over ADB: app navigation, input and automated tests

  • 924 ★ on the repository
  • Last commit
  • MIT
MCP server

Broad access

Why this level

  • The shell tool runs arbitrary commands on the device
  • The server can take any action in the device UI
All reasons and checks

cursortouch/android-mcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/android-mcp

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The shell tool runs arbitrary commands on the device
  • The server can take any action in the device UI

This is third-party code. Review the repository files before installing.

What it does

The server links an agent to an Android device or emulator through ADB and the Accessibility API. The agent reads screen state and active apps, launches apps, taps and long-taps, types text, swipes, drags, presses hardware buttons, reads notifications and runs shell commands on the device. It works from the UI tree rather than image recognition. The device is chosen automatically or set by serial and address through flags and environment variables, and both USB and Wi-Fi connections are supported.

Who it is for. For mobile developers and QA engineers who need Android automation through an agent.

Good fit when

  • You need to automate app navigation for a test
  • You need to type text and walk a scenario on a device or emulator
  • You need to capture screen state and the list of active apps

Not a fit when

  • You have no ADB set up and USB debugging enabled
  • You want to run untrusted prompts on a personal working device

Example request

Open the settings app, go to the about phone section and show the Android version

MCP

Transport
stdio
Authentication
not required

Environment variables

ANDROID_MCP_DEVICE
Device serial or host:port address for explicit selection.
ANDROID_MCP_CONNECTION
Connection type: auto, usb or wifi.
ANDROID_MCP_HOST
Wi-Fi device host, port 5555 is added automatically.
SCREENSHOT_QUANTIZED
Set to true to shrink the screenshot and reduce input tokens.

Limitations

You need Python 3.13, ADB installed and a device or emulator on Android 10 or newer. Device selection is set by flags and the ANDROID_MCP_DEVICE, ANDROID_MCP_CONNECTION and ANDROID_MCP_HOST variables. The shell tool runs arbitrary commands on the device, and the server can take any UI action, so the README advises using emulators and test devices when working with untrusted agents.

How to disable. Remove the server entry from your MCP client config and restart it.

FAQ

Do I need a computer vision model?

No, the server works from the UI tree via the Accessibility API rather than image recognition.

How do I pick a specific device?

With the --device, --wifi, --usb flags or the ANDROID_MCP_DEVICE, ANDROID_MCP_CONNECTION and ANDROID_MCP_HOST variables.

How is Android MCP different from running tests on a device?

The server links the agent to an Android device or emulator through ADB and the Accessibility API. The agent reads screen state, launches apps, taps and long presses and types text. A separate computer vision model is not needed.

How do I choose a specific Android device for Android MCP?

If several devices or emulators are connected, set the identifier of the one you need in the settings, as the README describes. The server connects with the uvx command, see the install block. It works with Claude Desktop and OpenCode. Risk is high.

Discussion

No questions or reviews yet.

An MCP server to drive iOS and Android: simulators, emulators and real devices via accessibility trees and screenshots

MCP serverBroad access10.5KRepository stars
Official

An MCP server exposes Android screens, element search, taps, input and screenshots to agents testing authorized applications.

MCP serverBroad access525Repository stars

Android Remote Control MCP

android-remote-control-mcp

An Android app that turns a phone or emulator into an MCP server: accessibility services and screenshots

MCP serverBroad access829Repository stars

Mobile Device MCP controls iOS and Android: taps, typing, screenshots and the element tree, with several devices at once

MCP serverBroad access53Repository stars
Official

The MobAI MCP server: an agent controls Android and iOS devices, emulators and simulators through one DSL scenario tool.

MCP serverExtended access255Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
Android MCP (this card)nonot required924
kubectl-mcp-servernonot required972reads cluster state and diagnoses pod failures
Unreal Engine MCP Servernonot required1,032Unreal Engine assets, actors and blueprints
VectorCodenonot required874code RAG for LLMs

README in short

The README describes a bridge between an agent and Android through ADB and the Accessibility API for app navigation, UI work and automated tests without a CV pipeline. It shows an ADB check, running via uvx or uv, configs for Claude Desktop and OpenCode, and device selection over USB and Wi-Fi. It lists tools for state, taps, input, swipes, buttons and shell, plus environment variables. It warns to run in a controlled environment. MIT licensed.

README badge

Report a problem