CodeDroid 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.app-e2etests an app end to end: it explores the app, writes a test PRD, critical user journeys and test cases into its repo (e2e/), stops for your review of each, runs the cases on the phone and writes a report with a screenshot per case. Each step is its own skill (app-e2e-explore,-prd,-cujs,-testcases,-run). Thenapp-e2e-rerunruns some of the cases (by id, journey or priority, last failures, the ones a change touches, a flaky check),app-e2e-bugturns a bug into a case that reproduces it, andapp-e2e-maintainkeeps the cases current as the app changes. 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