mcpbeat Sign in

MCP Android MCP Server

local only

MCP Android runs on your own machine — the client starts it, so there is no endpoint to ping. Last commit 14 Oct 2026.

Control Android devices over ADB from AI agents — safe-by-default, read-only by default, audited.

—
Installs / week
npm · @dockndevai/mcp-android
0
Stars
0 open issues
14 Oct 2026
Last commit
from GitHub
MIT
License
TypeScript

What the code does

We read the source, 20 h ago · rules ccca72095570

Evidence

Things with no honest explanation: a promise that contradicts the code, code that runs at install time while hiding what it does, data leaving the machine.

Claims read-only, but the code runs commands src/adb/client.ts:20
      execFile(
Capabilities

What this server is able to do. For an MCP server this is often the job itself — a terminal server runs commands because that is what it is for. Listed so you know what you are plugging in, not as an accusation.

Runs an external command src/adb/client.ts:20
      execFile(

Is this your server and something here is wrong? Tell us — corrections are free and do not require a plan.

We found things in this code

Code changes quietly between releases, and nobody reads the diff of a dependency. We do, on every release — watch MCP Android and you get told the day something new turns up.

Three servers free · no card

Connect this server

This server runs on your own machine — install it with the package manager and the client starts it for you. Package name taken from the official registry entry.

run in your terminal
claude mcp add mcp-android -- npx -y @dockndevai/mcp-android
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "mcp-android": {
      "args": [
        "-y",
        "@dockndevai/mcp-android"
      ],
      "command": "npx"
    }
  }
}
~/.codex/config.toml
[mcp_servers.mcp-android]
command = "npx"
args = ["-y", "@dockndevai/mcp-android"]
.cursor/mcp.json
{
  "mcpServers": {
    "mcp-android": {
      "args": [
        "-y",
        "@dockndevai/mcp-android"
      ],
      "command": "npx"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "mcp-android": {
      "args": [
        "-y",
        "@dockndevai/mcp-android"
      ],
      "command": "npx"
    }
  }
}

This one needs environment variables set before it will start: ANDROID_MODE (Access mode: read-only | read-write | admin.), ANDROID_ADB_PATH (Path to the adb binary (default: adb on PATH).), ANDROID_SERIAL (Target device serial from `adb devices`. Empty = the only connected device.), ANDROID_TIMEOUT_MS (Per-command adb timeout in milliseconds.), ANDROID_PACKAGE_ALLOWLIST (Comma-separated package allowlist for launch/uninstall/clear. Empty = all.), ANDROID_PROTECTED_PACKAGES (Packages that can be launched/inspected but never uninstalled or data-cleared.), ANDROID_ALLOW_INSTALL (Enable install_apk / uninstall_app / clear_app_data (requires admin mode too).), ANDROID_ALLOW_SHELL (Enable run_shell (arbitrary adb shell; requires admin mode too).), ANDROID_DRY_RUN (Validate + log write/admin actions without executing them on the device.), ANDROID_AUDIT_LOG (Emit a JSON audit line to stderr per guarded operation (default true).). The author declared them in the registry entry; get the values from the project itself.

Alternatives to MCP Android

same job, measured the same way
MCP Ios
by dockndevai

Drive iPhone/iPad via Appium/WebDriverAgent from AI agents — safe-by-default, read-only by default.

local only
gws-admin-mcp
by antct11

Safe Google Workspace admin for AI agents: read-only by default, confirm-gated deletes, audit log.

local only
ESP32 Control
by pixharvest

Control ESP32 IoT devices from AI agents: status, GPIO, ADC, reboot.

local only
QueryBear
by spencerpauly

Safe, read-only Postgres and MySQL access for AI agents. Audit log + column-level controls.

answering
Samarth Gtm MCP
by samarthanalytics-sj

Google Tag Manager + read-only GA4 MCP server. Read-only by default, gated writes, audits.

122 installs/wk local only
Rowbase
by djstreet11

Safe, read-only-by-default MySQL, PostgreSQL & SQLite access for AI agents. TOON output.

324 installs/wk local only
Mobilerun
by droidrun

Control real Android and iOS devices with LLM agents — tap, swipe, type, automate flows.

answering
Quarry
by wangggym

Safety-railed database access for agents: Postgres, MySQL, Redis. Read-only by default.

local only

MCP Android — questions

Answers built from our own checks of this server.

Why is there no uptime for MCP Android?
MCP Android runs on your own machine over stdio — there is no network address to reach, so uptime cannot be measured for it by anyone. What can be measured is adoption: the npm package @dockndevai/mcp-android.
How do I connect MCP Android?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It runs locally, so the command pulls @dockndevai/mcp-android straight from npm; nothing to host, nothing to sign up for.
Is MCP Android open source?
Yes — it is published under the MIT licence, written in TypeScript and 0 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.