mobile-next /mobile-mcp
Mobile MCP: let AI agents drive your iOS and Android apps. MCP server for simulators, emulators and real devices. Works with Claude Code, Codex, Cursor and any MCP client.
★ 10,265⑂ 921👁 55▤ 66
10,265
stars
+0+37+1,579
921
forks
55
watchers
–
prs
–
issues
66
releases
–
discussions
README
Mobile Next - 用于移动开发与自动化的 MCP 服务器 | iOS、Android、模拟器、仿真器与真机
English | 日本語 | 简体中文
这是一个 MCP 服务器,它通过与平台无关的接口实现可扩展的移动自动化与开发,让你无需掌握 iOS 或 Android 的专门知识。你可以在仿真器、模拟器以及真机(iOS 和 Android)上运行它。
该服务器让智能体和 LLM 能够通过结构化的无障碍(accessibility)快照,或基于截图的坐标点击,来与原生 iOS/Android 应用和设备交互。
支持 Claude Code、Codex、Gemini、GitHub Copilot、Antigravity —— 以及任何兼容 MCP 的客户端。
你可以在自己机器上的设备运行它,也可以通过 Mobile Next Cloud 在云端真实 iOS 和 Android 设备上运行 —— 工具完全相同,无需本地环境配置。
https://github.com/user-attachments/assets/bb084777-beb3-4930-ae6f-8d3fe694ddde
🚀 快速开始
快速安装:自动检测本机上的 MCP 客户端(Claude Code、Codex、Cursor、VS Code、Gemini CLI 等),并让你选择要配置哪些:
bash
npx @mobilenext/mobile-mcp@latest install
加上 --yes 可不经询问直接配置所有检测到的客户端。
各客户端的手动配置: 安装与配置
主要使用场景
我们如何帮助你扩展移动自动化:
- 📲 面向测试或数据录入场景的原生应用自动化(iOS 和 Android)
- 📝 无需手动操作模拟器/仿真器或真机(iPhone、三星、Google Pixel 等)即可执行的脚本化流程与表单交互
- 🧭 由 LLM 驱动的多步骤用户旅程自动化
- 👆 面向智能体框架的通用移动应用交互能力
- 🤖 为移动自动化和数据提取场景提供智能体之间的通信能力
主要特性
- 🚀 无障碍优先 —— 快速且低成本: 基于原生无障碍树驱动应用(无需视觉模型,不消耗图像 token),仅在必要时回退到截图 + 坐标方式。
- 📱 一套 API,覆盖所有目标: 同一套工具同时适用于 iOS 和 Android —— 模拟器、仿真器和真机皆可。
- 🧠 无需平台专业知识: 不需要 XCUITest,不需要 Espresso,也不需要各平台的胶水代码 —— 描述目标,智能体来完成。
- 🧰 完整的设备控制: 点击、滑动与手势;应用安装/启动/终止;屏幕录制;硬件按键;深度链接;屏幕方向。
- 📊 结构化、确定性的输出: 读取真实的 UI 元素并提取结构化数据,减少纯截图方案带来的歧义。
- 🪞 在 Claude Code 中镜像设备: 适用于在 Ghostty 或 kitty 中运行的 Claude Code。安装插件后运行 /mobile-mirror,即可在侧边窗格中查看设备的实时画面,并且无需离开终端就能点按、输入文字以及按 Home/Back。
🎯 平台支持
| 目标 | 是否支持 | 环境准备 |
|---|:---:|---|
| iOS 模拟器 | ✅ | Xcode 以及已启动的模拟器 (xcrun simctl) |
| iOS 真机 | ✅ | 通过 USB 连接并已信任的设备 |
| Android 仿真器 | ✅ | Android SDK 以及运行中的仿真器 (adb) |
| Android 真机 | ✅ | adb,并已启用并授权 USB 调试 |
🔧 可用的 MCP 工具
设备管理
- mobile_list_available_devices - 列出所有可用设备(模拟器、仿真器和真机)
- mobile_get_screen_size - 获取移动设备的屏幕尺寸(像素)
- mobile_get_orientation - 获取设备当前的屏幕方向
- mobile_set_orientation - 更改屏幕方向(竖屏/横屏)
- mobile_set_location - 覆盖设备上报的 GPS 位置,或清除该覆盖
- mobile_clipboard - 读取或替换设备剪贴板内容
远程设备(Mobile Next Cloud)
- mobile_login_to_cloud_provider - 将本机与云设备提供方进行认证(基于浏览器的设备码登录)
- mobile_list_remote_devices - 列出可从云设备池中预约的设备型号
- mobile_allocate_remote_device - 预约一台物理云设备以供独占使用
- mobile_release_remote_device - 将已预约的云设备释放回设备池
应用管理
- mobile_list_apps - 列出设备上已安装的所有应用
- mobile_get_foreground_app - 获取当前处于前台的应用
- mobile_launch_app - 使用包名启动应用
- mobile_terminate_app - 停止并终止正在运行的应用
- mobile_install_app - 从文件安装应用(.apk、.ipa、.app、.zip)
- mobile_uninstall_app - 使用 bundle ID 或包名卸载应用
屏幕交互
- mobile_take_screenshot - 截取屏幕截图以了解屏幕上的内容
- mobile_save_screenshot - 将截图保存为文件
- mobile_list_elements_on_screen - 列出 UI 元素及其坐标和属性
- mobile_click_on_screen_at_coordinates - 点击指定的 x,y 坐标
- mobile_double_tap_on_screen - 双击指定坐标
- mobile_long_press_on_screen_at_coordinates - 长按指定坐标
- mobile_swipe_on_screen - 向任意方向滑动(上、下、左、右)
- mobile_start_screen_recording - 开始将设备屏幕录制为视频文件
- mobile_stop_screen_recording - 停止当前的屏幕录制并保存视频
输入与导航
- mobile_type_keys - 向获得焦点的元素输入文本,可选择是否提交
- mobile_press_button - 按下设备按键(HOME、BACK、VOLUME_UP/DOWN、ENTER 等)
- mobile_open_url -