摘要
感谢 Mobile Next 提供的 Mobile CLI 与 Mobile MCP (https://github.com/mobile-next/mobile-mcp):
- Mobile CLI 允许你用命令行(CLI)操控手机模拟器或真机;
- Mobile MCP 则把这些能力暴露为 MCP(Model Context Protocol) 工具,让 Claude、Cherry Studio 等 MCP 客户端能够用自然语言驱动手机操作。
想象一下:你在聊天框里说出——“打开星巴克 App,下单一杯摩卡,少糖加冰,送到办公室。” 随后手机自动完成全部点击与输入。或者说:“从今天的相册里挑 3 张图,发个朋友圈/推文并@小王。” 这就是把手机变成“可编程界面”的震撼体验。
本文以 macOS + iOS 模拟器 为例完成一套最小可行路径(真机与 Android 同理,参考官方 Wiki)。
你将获得什么
- 一套从 0 到 1 的环境搭建清单
- 在 Cherry Studio 中配置 Mobile MCP 的模板
- 可复制粘贴的一条龙命令
- 首个自动化示例(用自然语言驱动 Safari 访问页面并上传文件)
前置条件
- macOS(已安装 Xcode 与 iOS Simulator)
- Node.js(含
npx) - 一款 MCP 客户端(如 Cherry Studio、Claude 桌面版等)
- 具备基础命令行操作能力
真机调试需要额外的签名/信任配置;Android 环境需替换对应驱动与工具,思路一致。官方WIKI(https://github.com/mobile-next/mobile-mcp/wiki/)提供不同设备的操作指导。
架构一眼看懂

MCP 客户端(Claude / Cherry Studio)
⇅ MCP 协议(stdio)
Mobile MCP(@mobilenext/mobile-mcp)
⇅ WebDriver 协议
WebDriverAgent(iOS 自动化驱动)
⇅
iOS 模拟器 / 物理设备
步骤一:启动 WebDriverAgent(WDA)
WDA 是 iOS 端自动化的“底层遥控器”。我们用 Xcode 跑起它的测试 Runner 即可。
# 1) 获取 WDA
git clone --depth 1 https://github.com/appium/WebDriverAgent.git
cd WebDriverAgent
# 2) 确保模拟器已启动(任选其一)
open -a Simulator
# 或:列出现有设备并手动选择一个名称
xcrun simctl list devices
# 3) 使用 xcodebuild 以测试方式启动 WDA
# 注意将 iPhone 名称替换为你的模拟器名称;注意使用直引号而非花引号
xcodebuild \
-project WebDriverAgent.xcodeproj \
-scheme WebDriverAgentRunner \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro Max' \
test
常见坑:
- 目的地字符串里不要用“弯引号”,要用
'或"直引号。- 若报 “找不到设备” ,先用
xcrun simctl list devices查到精确名称再替换。- 初次运行若遇到签名/权限弹窗,按提示在 Xcode 里授权一次即可(模拟器通常无需真机签名)。
可选验证(WDA 默认监听 8100 端口):
curl http://127.0.0.1:8100/status
看到包含 status / sessionId 等字段即表示 WDA 正常响应。
步骤二:启动 Mobile MCP Server
mobile-mcp 以 stdio 模式运行,供 MCP 客户端连接。
# 任意目录下执行
npx -y @mobilenext/mobile-mcp@latest
# 若看到:
# mobile-mcp server running on stdio
# 表示服务已就绪
提示:保持该进程 常驻(不要关闭该终端),以便客户端连接。
步骤三:在 Cherry Studio 配置 MCP
- 打开 Cherry Studio → 设置 → MCP 设置
- 选择“添加 MCP”,使用 JSON 导入 模式,粘贴以下配置:
{
"mcpServers": {
"mobile-mcp": {
"command": "npx",
"args": ["-y", "@mobilenext/mobile-mcp@latest"]
}
}
}
- 添加成功后点击 启用。在 Tools 页面可看到
mobile-mcp暴露的全部动作列表。

步骤四:用自然语言驱动手机(首个自动化)
回到 Cherry Studio 的聊天界面,选择你的大模型(如 Claude),并开启 mobile-mcp。然后直接下达指令即可。
示例 1:下单类操作(演示思路)
“打开星巴克 App,下单一杯摩卡,少糖加冰,送到办公室。”
注:模拟器要先安装目标 App;否则可以先从 App Store 或使用 Safari 完成替代流程。
示例 2:浏览器 + 上传
“打开 Safari,访问:https://tmpfile.link ,并上传一个本地文件。”
这正是本文演示路径:模型会调用 MCP 工具,借助 WDA 在模拟器里完成打开 Safari → 访问链接 → 操作上传的全过程。



贴士:复杂表单/多步流程建议拆成多句指令,让模型逐步执行并在关键处回显页面状态。
常见问题与排错
- WDA 编译通过但无法访问 8100
- 重启模拟器:
xcrun simctl shutdown all && open -a Simulator - 重新执行
xcodebuild ... test,观察终端是否有崩溃/挂起日志。
- 重启模拟器:
xcodebuild提示 destination 不存在- 用
xcrun simctl list devices获取准确设备名称(包含型号与 iOS 版本),逐字替换。
- 用
- 端口占用(8100 被占)
- 查占用:
lsof -i :8100,结束相关进程后重启 WDA。
- 查占用:
- App 未安装/无法自动拉起
- 先在模拟器里手动安装需要的 App,或者改用 Safari 网页版流程。
- JSON 配置导入失败
- 检查是否是合法 JSON(逗号/引号),或在 Cherry Studio 中手动添加同等配置。
安全与权限提示
- 自动化可能涉及支付、隐私与账号操作。建议在测试环境或非生产账号中先验证完整流程。
- 对“购买/转账/删除”等敏感操作,务必要求模型在执行前二次确认。
- 保护你的 API Key、账号密码与本地文件路径,避免出现在分享的日志与截图中。
延伸:真机与 Android
- iOS 真机:需要有效的签名与开发者权限,且需在手机上信任证书/驱动,并安装go-ios。
- Android:思路一致,驱动由对应的 Android 自动化框架提供(ADB/UIAutomator 等)。
- 多设备/多会话:进阶可在 MCP 层做设备路由与会话隔离。
小结 & 致谢
到这里,你已经完成了WDA → Mobile MCP → MCP 客户端的全链路打通:
- WDA 负责 iOS 端底层输入与页面结构;
- Mobile MCP 把手机能力以“工具”的形式暴露;
- Claude/Cherry Studio 等 MCP 客户端将自然语言转译为可执行动作。
感谢 Mobile Next 带来的 Mobile CLI / Mobile MCP。剩下的,就是你的想象力了:排班打卡、批量发消息、表单填写、内容采集、自动化测试……通通用自然语言来驱动吧。
复制即用清单
# 1. 启动模拟器(如未开启)
open -a Simulator
xcrun simctl list devices
# 2. 获取并启动 WDA
git clone --depth 1 https://github.com/appium/WebDriverAgent.git
cd WebDriverAgent
xcodebuild -project WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner \
-destination 'platform=iOS Simulator,name=iPhone 16 Pro Max' test
# 3. 启动 Mobile MCP(保持此进程常驻)
npx -y @mobilenext/mobile-mcp@latest
# 看到 "mobile-mcp server running on stdio" 即成功
# 4. Cherry Studio 中导入以下 JSON 并启用
# {
# "mcpServers": {
# "mobile-mcp": {
# "command": "npx",
# "args": ["-y", "@mobilenext/mobile-mcp@latest"]
# }
# }
# }
之后在聊天界面启用
mobile-mcp,用自然语言提指令即可。祝玩得开心!


留下评论