Enables mobile device automation for Android devices and emulators via ADB, including screenshot capture, UI interactions (tap, swipe, long press), text input, app control (launch, stop, install), hardware button presses, and UI hierarchy inspection.
Enables mobile device automation for iOS Simulator via simctl, including screenshot capture, UI interactions (tap, swipe, long press), text input, app control (launch, stop, install), and URL handling.
Claude Mobile
MCP server for mobile device automation — Android (via ADB) and iOS Simulator (via simctl). Like Claude in Chrome but for mobile devices.
Control your Android phone, emulator, or iOS Simulator with natural language through Claude.
Features
Unified API — Same commands work for both Android and iOS
Screenshot capture — See what's on the device screen
UI interactions — Tap, long press, swipe by coordinates or element text
Text input — Type into focused fields
App control — Launch, stop, and install apps
Platform selection — Explicitly target Android or iOS, or auto-detect
Installation
Claude Code CLI (recommended)
To add globally (available in all projects):
From npm
From source
Manual configuration
Add to your Claude Code settings (~/.claude.json or project settings):
Windows
Requirements
Android
ADB installed and in PATH
Connected Android device (USB debugging enabled) or emulator
iOS
macOS with Xcode installed
iOS Simulator (no physical device support yet)
Available Tools
Tool | Android | iOS | Description |
| ✅ | ✅ | List all connected devices |
| ✅ | ✅ | Select active device |
| ✅ | ✅ | Take screenshot |
| ✅ | ✅ | Tap at coordinates or by text |
| ✅ | ✅ | Long press gesture |
| ✅ | ✅ | Swipe in direction or coordinates |
| ✅ | ✅ | Type text |
| ✅ | ✅ | Press hardware buttons |
| ✅ | ✅ | Launch app |
| ✅ | ✅ | Stop app |
| ✅ | ✅ | Install APK/.app |
| ✅ | ⚠️ | Get UI hierarchy (limited on iOS) |
| ✅ | ❌ | Find elements by text/id |
| ✅ | ❌ | Get foreground activity |
| ✅ | ✅ | Open URL in browser |
| ✅ | ✅ | Run shell command |
| ✅ | ✅ | Wait for duration |
Usage Examples
Just talk to Claude naturally:
Platform Selection
You can explicitly specify the platform:
Or set the active device:
How It Works
Claude sends commands through MCP protocol
Server routes to appropriate platform (ADB or simctl)
Commands execute on your device
Results (screenshots, UI data) return to Claude
License
MIT