About CodeDroid
CodeDroid is an MCP server for coding agents and other MCP clients to operate a paired Android phone. It provides screen inspection, input, app control and device testing tools, with phone and computer able to use different networks.
Key features
- 01Read screens and capture screenshots
- 02Tap, type, swipe and open apps
- 03Delegate multi-step phone tasks
- 04Install APKs from a computer
- 05Run adb commands and read logs
Use cases
- 01Inspect an app during development
- 02Test sign-in flows on a phone
- 03Install a build and check for crashes
- 04Run device tests and inspect logs
MCP support
Provides MCP tools that relay actions and screen data between an MCP client and a paired Android phone. The local server connects through CodeDroid’s server; an optional adb tool runs commands on the computer.
Configuration
Local server config is the same for every client. Copy it into your client’s MCP config file.
npx -y @codedroid/mcpCODEDROID_MCP_ADBSet to 0 to turn off the adb tool, which runs adb commands on this computer.CODEDROID_SERIALadb serial of the phone to use when several devices are connected.CODEDROID_MCP_CLIENTClient name shown on the phone while the agent uses it.Local servers need a runtime on your machine (e.g. Node.js 18+). Config file locations differ by client; see your client’s docs.
Tools
2Saved tool list · updated today
This tool takes no parameters.
Details
From the project READMECodeDroid MCP
Let Claude Code, Codex, Gemini CLI, or any MCP client use your Android phone. Read the screen, interact with apps, take screenshots, and test what you build through CodeDroid. Your phone and computer can be on different networks.
Get started
You'll need Node.js 20+ and CodeDroid on your Android phone, signed in with its accessibility service enabled. Both devices need internet access.
1. Install for your coding client
Every client at once — run in your terminal:
npx -y @codedroid/mcp setup
It finds Claude Code, Codex, Gemini CLI, Cursor, VS Code, Claude Desktop, and Windsurf, and adds CodeDroid to each one after you confirm. Run it again after an update; it skips clients that are already set up. Or install for one client:
Claude Code — run inside Claude Code:
/plugin marketplace add codedroid-team/codedroid-mcp
/plugin install codedroid@codedroid
Codex — run in your terminal:
codex plugin marketplace add codedroid-team/codedroid-mcp
codex plugin add codedroid@codedroid
Gemini CLI — run in your terminal:
gemini extensions install https://github.com/codedroid-team/codedroid-mcp
Each installation includes the MCP server and skills for phone control and Android app testing. Restart your coding client after installing.
Using another client? See manual MCP setup.
2. Pair your phone
-
Open CodeDroid → Settings → Computers → Pair a computer on your phone.
-
Run the command shown there in your computer's terminal. For example:
npx -y @codedroid/mcp pair ABCD-EFGH -
Tap Allow on your phone when prompted.
Use the command exactly as shown. Pairing codes expire after 10 minutes and work once.
3. Ask your agent
Read the screen on my phone and describe what is open.
Then try:
- “Open Android Settings and check the Android version.”
- “Open my app, navigate to sign-in, and take a screenshot.”
- “Install this APK, launch it, and check for crashes.”*
*install_apk works over CodeDroid's connection, with one setting to allow. Reading logs with adb also requires
Android platform-tools and a USB or wireless debugging connection. See adb setup.
What it includes
- MCP tools to read the screen, take screenshots, tap, type, swipe, open apps, and hand CodeDroid's agent a multi-step task, on one phone or several. See the tool list.
- Skills:
codedroid-phoneteaches the agent to drive the phone one checked step at a time, andtest-on-devicewalks it through building, installing, and verifying an Android app change.create-cujswrites an app's critical user journeys as markdown files in its repo (cujs/),create-testsadds test cases to them, andtest-on-deviceruns them on the phone. install_apkto install a build from your computer, with no cable or shared network.- An
adbtool that runs adb commands on your computer, to read logs and run tests. You can turn it off.
Privacy and security
The plugin runs npx -y @codedroid/mcp@<version>, which downloads this exact release from npm
and starts a local MCP server. Everything it sends goes over TLS to the CodeDroid server, orchestrator.codedroid.com
unless the pairing command shown on your phone names another:
- Pairing sends the one-time code, your computer's name, and its OS (for example
darwin), so the phone can show which computer is connected. - Tool calls are relayed between your agent and the phone: screen contents, screenshots, text you ask it to type, clipboard reads and writes, and task progress. Each call also names the MCP client that made it and its version. The phone asks you to Allow a computer the first time, shows when one is in use, and can stop or revoke it.
The local server listens on 127.0.0.1 only and requires a per-user token. Pairing credentials,
the token, and logs stay in ~/.codedroid on your computer. The adb tool runs only on your
computer, and its push and pull stay within your project and temp directories. See
Architecture for details.
The plugin itself collects no analytics. The CodeDroid app and server keep usage records under
your CodeDroid account: pairing and connecting, whether a computer was allowed, and for each phone
tool call its name, whether it worked and its error code, how long it took, the MCP client,
session and versions involved, your computer's OS and a random id for it, and the task id of a
run_task. Usage records never include tool arguments, screen contents, or text you type.
Need help?
Check your connection:
npx -y @codedroid/mcp status
Manage or revoke computer access in CodeDroid → Settings → Computers.
See the reference guide for tools, manual setup, configuration, troubleshooting, and development.
License
MIT © 2026 CodeDroid
Comments
New to MCP?
From what the protocol is to installing your first server, these answers cover most first questions.
An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.