Data as of

Android MCP Server for Cursor: Setup & Config

Cursor: Android MCP Server exposes ADB-based device operations to MCP clients.

What you can do with Android in Cursor

Pick it for direct ADB access paired with screenshot and clickable-UI inspection.

  • List installed packages and inspect package actions
  • Run ADB commands from an MCP client

Before you start: Android in Cursor

  • Python 3.x; setup example installs 3.11
  • uv
  • ADB installed and configured
  • An Android device; emulator support is untested

Replace both path placeholders. Clone the repository and run uv sync first. Select a device in config.yaml when more than one is attached.

Android Cursor configuration

  1. Choose Cursor configuration scope

    For Android MCP Server, open Project: .cursor/mcp.json User: ~/.cursor/mcp.json. Merge into mcpServers at project or user scope.

  2. Add Android MCP Server to Cursor

    Use the android-mcp-server entry below in mcpServers. Keep Android MCP Server's documented stdio connection fields and your other Cursor entries.

  3. Check Android MCP Server in Cursor

    Android MCP Server: Enable in Cursor’s MCP settings; inspect tools.

Config file · Project: .cursor/mcp.json

User: ~/.cursor/mcp.json

JSON
{
  "mcpServers": {
    "android-mcp-server": {
      "command": "path/to/uv",
      "args": [
        "--directory",
        "path/to/android-mcp-server",
        "run",
        "server.py"
      ],
      "env": {}
    }
  }
}

Android tools available to Cursor

Android's stored tool list documents 5 tools; compare it with Cursor's connected tool list, because the stored list is not a live check.

get_packages

Find get_packages under Android in Cursor's MCP settings; inspect its arguments when the agent requests a call.

List packages installed on the selected device.

execute_adb_command

Find execute_adb_command under Android in Cursor's MCP settings; inspect its arguments when the agent requests a call.

get_uilayout

Find get_uilayout under Android in Cursor's MCP settings; inspect its arguments when the agent requests a call.

get_screenshot

Find get_screenshot under Android in Cursor's MCP settings; inspect its arguments when the agent requests a call.

Capture the current device screen.

get_package_action_intents

Find get_package_action_intents under Android in Cursor's MCP settings; inspect its arguments when the agent requests a call.

Retrieve non-data activity actions for a package.

Android: full stored tool descriptions

Troubleshooting Android in Cursor

  • Cursor must find uv for Android MCP Server. Enable the project/user entry in MCP settings and inspect its tools.
  • Android MCP Server uses stdio here: Cursor must keep the configured process running; protocol output belongs on stdout and diagnostics on stderr.
  • Known limitation: Emulator use is marked untested
  • Known limitation: Requires ADB installation and a connected device
  • General Cursor troubleshooting lives in the /clients/cursor guide.

Android MCP Server — details. Cursor guide

Frequently asked questions

Cursor's Android MCP Server entry belongs under mcpServers in .cursor/mcp.json (project) or ~/.cursor/mcp.json (user). Confirm the active scope in MCP settings.

Cursor's android-mcp-server example uses stdio.

Android MCP Server's Cursor configuration invokes uv.

Android MCP Server's stored list contains 5 tools, including get_packages, execute_adb_command, get_uilayout. Compare those names with Cursor's connected tool list; the stored list is not a live check.

Clickable-element text, content descriptions, bounding boxes, and center coordinates are documented.

The README mentions emulators but explicitly marks them untested.