📇 🏠 🐧 🍎 - Android and iOS app and device automation, development and app scraping on simulators, emulators…
Mobile Next - MCP server for Mobile Development and Automation | iOS, Android, S
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**English** | 日本語 | 简体中文
This is an MCP Server that enables scalable mobile automation, development through a platform-agnostic interface, eliminating the need for distinct iOS or Android knowledge. You can run it on emulators, simulators, and real devices (iOS and Android).
This server allows Agents and LLMs to interact with native iOS/Android applications and devices through structured accessibility snapshots or coordinate-based taps based on screenshots.
**Works with Claude Code, Codex, Gemini, GitHub Copilot, Antigravity** — or any MCP-compatible client.
Run it against devices on your own machine, or against real iOS and Android devices in the cloud with **Mobile Next Cloud** — same tools, no local setup.
https://github.com/user-attachments/assets/bb084777-beb3-4930-ae6f-8d3fe694ddde
Main use cases
How we help to scale mobile automation:
- 📲 Native app automation (iOS and Android) for testing or data-entry scenarios.
- 📝 Scripted flows and form interactions without manually controlling simulators/emulators or real devices (iPhone, Samsung, Google Pixel etc)
- 🧭 Automating multi-step user journeys driven by an LLM
- 👆 General-purpose mobile application interaction for agent-based frameworks
- 🤖 Enables agent-to-agent communication for mobile automation usecases, data extraction
Main Features
- 🚀 **Accessibility-first — fast and cheap**: drives apps from the native accessibility tree (no vision model, no image tokens), falling back to screenshots + coordinates only when needed.
- 📱 **One API, every target**: the same tools work across iOS and Android — simulators, emulators, and real devices.
- 🧠 **No platform expertise required**: no XCUITest, no Espresso, no per-platform glue — describe the goal and the agent does it.
- 🧰 **Full device control**: taps, swipes, and gestures; app install/launch/terminate; screen recording; hardware buttons; deep links; orientation.
- 📊 **Structured, deterministic output**: reads real UI elements and extracts structured data, cutting the ambiguity of screenshot-only approaches.
- 🪞 **Device mirroring in Claude Code**: for Claude Code running in Ghostty or kitty. Install the plugin and run /mobile-mirror to see the device's live screen in a side pane, then tap, type and press Home/Back without leaving the terminal.
🎯 Platform Support
| Target | Supported | Setup |
|---|:---:|---|
| iOS Simulator | ✅ | Xcode + a booted simulator (xcrun simctl) |
| iOS Real Device | ✅ | Device connected over USB and trusted |
| Android Emulator | ✅ | Android SDK + running emulator (adb) |
| Android Real Device | ✅ | adb + USB debugging enabled & authorized |
🔧 Available MCP Tools
Device Management
- **mobile_list_available_devices** - List all available devices (simulators, emulators, and real devices)
- **mobile_get_screen_size** - Get the screen size of the mobile device in pixels
- **mobile_get_orientation** - Get the current screen orientation of the device
- **mobile_set_orientation** - Change the screen orientation (portrait/landscape)
- **mobile_fold_device** - Fold or unfold a foldable device (iPhone Duo simulators, foldable Android emulators)
- **mobile_set_location** - Override the GPS location reported by the device, or clear the override
- **mobile_clipboard** - Read or replace the device clipboard
Remote Devices (Mobile Next Cloud)
- **mobile_login_to_cloud_provider** - Authenticate this machine with the cloud device provider (browser-based device-code login)
- **mobile_list_remote_devices** - List device models available to reserve from the cloud fleet
- **mobile_allocate_remote_device** - Reserve a physical cloud device for exclusive use
- **mobile_release_remote_device** - Release a reserved cloud device back to the fleet
App Management
- **mobile_list_apps** - List all installed apps on the device
- **mobile_get_foreground_app** - Get the app currently in the foreground
- **mobile_launch_app** - Launch an app using its package name
- **mobile_terminate_app** - Stop and terminate a running app