CursorTouch

🤖 Android MCP

Community CursorTouch
Updated

Lightweight MCP Server for interacting with Android Operating System.

🤖 Android MCP

Android-MCP is a lightweight, open-source bridge between AI agents and Android devices. Running as an MCP server, it lets large-language-model agents perform real-world tasks such as app navigation, UI interaction and automated QA testing without relying on traditional computer-vision pipelines or preprogramed scripts.

https://github.com/user-attachments/assets/cf9a5e4e-b69f-46d4-8487-0f61a7a86d67

✨ Key Features

  • Native Android Integration Interact with UI elements via ADB and the Android Accessibility API: launch apps, tap, swipe, input text, and read view hierarchies.

  • Bring Your Own LLM (Vision Optional) Works with any language model—no fine-tuned CV model or OCR pipeline required.

  • Rich Toolset for Mobile Automation Pre-built tools for gestures, keystrokes, capture, device state.

  • Real-Time Interaction Typical latency between actions (e.g., two taps) ranges 2 – 5 s depending on device specs and load.

Supported Operating Systems

  • Android 10+

Installation

Prerequisites

  • Python 3.10+
  • Android Studio

🏁 Getting Started

  1. Clone the repository
   git clone https://github.com/CursorTouch/Android-MCP.git
   cd Android-MCP
  1. Install dependencies
   uv pip install -r pyproject.toml
  1. Connect to the MCP server

Add the following JSON (replace {{PATH}} placeholders) to your client config:

   {
     "mcpServers": {
       "android-mcp": {
         "command": "{{PATH_TO_UV}}",
         "args": [
           "--directory",
           "{{PATH_TO_SRC}}/Android-MCP",
           "run",
           "main.py"
         ]
       }
     }
   }

For Claude Desktop, save as %APPDATA%/Claude/claude_desktop_config.json.

  1. Enable ADB & authorize your device
   adb devices   # verify that your phone/tablet appears and is "authorized"
  1. Restart the Claude Desktop

Open your Claude Desktop, “Android-MCP” should now appear as an integration.

For troubleshooting tips (log locations, common ADB issues), see the MCP docs.

🛠️ MCP Tools

Claude can access the following tools to interact with Windows:

  • State-Tool: To understand the state of the device.
  • Click-Tool: Click on the screen at the given coordinates.
  • Long-Click-Tool: Perform long click on the screen at the given coordinates.
  • Type-Tool: Type text on the specified coordinates (optionally clears existing text).
  • Swipe-Tool: Perform swipe from one location to other.
  • Drag-Tool: Drag from one point to another.
  • Press-Tool: To press the keys on the mobile device (Back, Volume Up, ...etc).
  • Wait-Tool: Pause for a defined duration.
  • State-Tool: Combined snapshot of active apps and interactive UI elements.
  • Notification-Tool: To access the notifications seen on the device.

⚠️ Caution

Android-MCP can execute arbitrary UI actions on your mobile device. Use it in controlled environments (emulators, test devices) when running untrusted prompts or agents.

🪪 License

This project is licensed under the MIT License. See LICENSE for details.

🤝 Contributing

Contributions are welcome! Please read CONTRIBUTING for dev setup and PR guidelines.

Made with ❤️ by Jeomon George

Citation

@misc{
  author       = {Jeomon George},
  title        = {Android-MCP},
  year         = {2025},
  publisher    = {GitHub},
  howpublished = {\url{https://github.com/CursorTouch/Android-MCP}},
  note         = {Lightweight open-source bridge between LLM agents and Android},
}

MCP Server · Populars

MCP Server · New