Give any LLM agent a real Android or iPhone as its body. 62 MCP tools for mobile automation.
Ghost In The Droid MCP server is a locally run integration for AI assistants that speak the Model Context Protocol. Give any LLM agent a real Android or iPhone as its body. 62 MCP tools for mobile automation.
Website · Docs · Skill Hub · Releases
You will need 7 environment variables: IOS_DEVICE_UDID, IOS_APPIUM_URL, IOS_BUNDLE_ID, IOS_MJPEG_SERVER_PORT, ANTHROPIC_API_KEY, OPENAI_API_KEY, OPENROUTER_API_KEY. The server will not start without them, which is usually why the tools fail to appear on a first run. Keep credentials in your client's env block or a secrets manager rather than in a file you might commit.
adb devices should list your phone) - iOS: macOS with Xcode, Appium 2 + XCUITest driver, and a trusted iPhone or booted simulator - Node.js 18+ (for the frontend dev server) ---Installation goes through your MCP client rather than a global install: point it at vite on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.
This sits in the browser automation group, where several servers overlap in what they claim to do but differ sharply once you actually set them up. It is maintained by ghost-in-the-droid; worth a glance at recent repository activity before you build anything load-bearing on it.
This entry was verified against Ghost In The Droid's own documentation before publication; SyncDev keeps the directory reviewed rather than auto-generated.
{
"mcpServers": {
"android-agent": {
"command": "npx",
"args": ["-y", "vite"],
"env": {
"IOS_DEVICE_UDID": "your-value",
"IOS_APPIUM_URL": "your-value",
"IOS_BUNDLE_ID": "your-value",
"IOS_MJPEG_SERVER_PORT": "your-value",
"ANTHROPIC_API_KEY": "your-value",
"OPENAI_API_KEY": "your-value",
"OPENROUTER_API_KEY": "your-value"
}
}
}
}Add to claude_desktop_config.json, then restart Claude Desktop.
adb devices should list your phone) - iOS: macOS with Xcode, Appium 2 + XCUITest driver, and a trusted iPhone or booted simulator - Node.js 18+ (for the frontend dev server) ---| Variable | Description | Required |
|---|---|---|
| IOS_DEVICE_UDID | Configuration value read at startup. | Optional |
| IOS_APPIUM_URL | Endpoint or connection string the server talks to. | Yes |
| IOS_BUNDLE_ID | Configuration value read at startup. | Optional |
| IOS_MJPEG_SERVER_PORT | Configuration value read at startup. | Optional |
| ANTHROPIC_API_KEY | Credential the server authenticates with. | Yes |
| OPENAI_API_KEY | Credential the server authenticates with. | Yes |
| OPENROUTER_API_KEY | Credential the server authenticates with. | Yes |
Microsoft's official browser automation server — drive a real browser through the accessibility tree, no screenshots needed.
Industrial-strength web extraction — render, scrape, crawl and search entire sites into clean markdown.
The original Chromium automation reference server — simple, screenshot-driven browser control.
Give your coding agent the full DevTools toolbox: traces, network, console, heap snapshots and Lighthouse.
Puppeteer-powered browser control that drives pages from the accessibility tree instead of pixels.
Cloud browsers for AI agents — automation sessions that run in Browserbase's fleet, not on your machine.