15分钟搭建AI手机自动化助手

60 次阅读 0 点赞 0 评论 9 分钟原创技术教程

厌倦了写 Appium 脚本?本文教你用 MCP 协议 + mobile-mcp 工具,通过 Claude/Cursor 等 AI 客户端用自然语言直接操控 iOS/Android 设备。15分钟完成配置,轻松实现 App 自动化、UI 测试和数据抓取。

#MCP #AI自动化 #移动开发 #Appium替代 #自然语言编程 #Claude #Cursor #Android自动化 #iOS自动化
15分钟搭建AI手机自动化助手

15分钟搭建AI手机自动化助手

一、你一定会遇到的痛点

做移动开发或写自动化脚本时,你一定经历过这些折磨:

  • 写 Appium 脚本:光配环境就要半天,XCUITest、Espresso 两套 API 要分别维护,每次 App UI 一变,选择器全失效;
  • 做数据抓取:要手动控制模拟器点来点去、截屏识别,或者花钱接商业 SDK;
  • 日常小任务:比如「帮我从这个 App 里把今天的通知消息复制出来」,其实就几步操作,但写代码的成本太高。

如果只需告诉 AI 你想做什么,AI 就自动在手机上帮你完成点击、滑动、输入、读取数据,是不是高效多了?

接下来我们用 15 分钟搭建这样一个系统,学会用 Claude 或 Cursor 等 AI 助手直接操控手机(或模拟器),完成自动化操作和数据抓取。

二、前置条件

开始前确认你手头有这些:

  • Node.js v20+:项目通过 npm 分发,建议用 nvm 管理版本;
  • 移动开发环境(二选一即可)
    • iOS 路线:Mac 电脑 + Xcode 命令行工具(运行 xcode-select --install);
    • Android 路线:Android SDK + adb 可用(安装 Android Studio 后在 SDK Manager 启用 Platform Tools);
  • 一个 AI 客户端:Claude Desktop、Cursor、VS Code + Copilot、Codex、Gemini CLI 等任意支持 MCP 协议的工具。

为什么需要 MCP? MCP(Model Context Protocol)是 Anthropic 推出的开放协议,让 AI 模型能安全地调用外部工具。通过 MCP Server 把手机控制能力暴露给 AI,相当于给 AI 装上一双「操控手机的手」。

三、15分钟搭建教程

第一步:安装 mobile-mcp Server

项目已发布到 npm,无需 clone 仓库或手动编译。在你的 AI 客户端 MCP 配置中添加:

json 复制代码
{
  "mcpServers": {
    "mobile-mcp": {
      "command": "npx",
      "args": ["-y", "@mobilenext/mobile-mcp@latest"]
    }
  }
}

这段配置放哪? 取决于你用的客户端:

客户端 配置方式
Claude Desktop Settings → Developer → Edit Config,粘贴进 mcpServers
Cursor Settings → MCP → Add new MCP Server,选 command 类型,填入 npx -y @mobilenext/mobile-mcp@latest
VS Code + Copilot 编辑 ~/.copilot/mcp-config.json,按上面格式添加
Claude Code (CLI) 终端运行:claude mcp add mobile-mcp -- npx -y @mobilenext/mobile-mcp@latest

配置完成后重启客户端即可生效,Claude Desktop 和 Cursor 对 MCP 的支持最成熟,添加后立刻就能调用。

第二步:启动模拟器或连接真机

MCP Server 本身不创建设备,需要你提前启动好模拟器。

Android 模拟器

bash 复制代码
## 查看已有模拟器
emulator -list -avds

## 启动模拟器
emulator @Pixel_6_API_33

## 确认设备在线
adb devices

iOS 模拟器

bash 复制代码
## 列出可用模拟器
xcrun simctl list devices

## 启动 iPhone 16 模拟器
xcrun simctl boot "iPhone 16"

关键理解:MCP Server 启动后会通过 adb(Android)或 XCUITest 可访问性树(iOS)自动发现已连接设备,因此必须先有设备在线,Server 才能正常工作。

第三步:验证连接

重启 AI 客户端后,对它发出指令:

列出所有可用的移动设备

配置正确时会看到类似回复:

复制代码
Found 1 device:
- Pixel_6_API_33 (Android Emulator, booted)

列表为空说明模拟器未启动或 adb/Xcode 工具链异常,排查设备连接后再继续。

四、实战:用自然语言完成完整任务

场景 1:浏览网页并抓取数据

在 Claude Desktop 或 Cursor 的 Agent 模式中输入:

复制代码
打开浏览器,访问 https://news.ycombinator.com,
抓取第一条新闻的标题和链接,返回给我

AI 会自动调用这些 MCP 工具(无需手写调用代码):

  1. mobile_list_apps → 查找浏览器应用
  2. mobile_launch_app → 启动浏览器
  3. mobile_open_url → 打开指定网址
  4. mobile_list_elements_on_screen → 读取页面 UI 元素的可访问性树
  5. 从结构化数据中提取标题和链接

你只需要描述目标,AI 自动拆解成工具调用链,无需编写 Appium 脚本或处理 WebDriver 连接。

场景 2:多步自动化测试

尝试这个适合 QA 测试的指令:

复制代码
在设备上打开计算器 App,计算 123 + 456 = ?
把结果显示在屏幕上后截屏保存,
最后告诉我计算结果是否为 579

AI 会依次执行:启动计算器 → 点击数字键 → 等待结果 → 截屏 → 返回结果验证。

场景 3:复杂工作流

对于需要连续操作的场景:

复制代码
打开 Instagram,搜索 "AI automation",
打开第一个 profile,点击 Follow 按钮,
返回操作是否成功的状态

注意:多步操作依赖 AI 规划能力,Claude 3.5 Sonnet 或 GPT-4o 效果最佳。若 AI 中途卡住,可手动补充提示:「你现在在 XX 页面,下一步应该点 YY 按钮」。

五、核心 MCP 工具一览

了解工具列表有助于写出更精准的提示词:

工具 作用 典型场景
mobile_list_available_devices 列出设备 调试用
mobile_launch_app / mobile_terminate_app 打开/关闭 App 流程起点/终点
mobile_take_screenshot / mobile_save_screenshot 截屏 调试、留证
mobile_list_elements_on_screen 读取 UI 元素 数据抓取、元素定位
mobile_click_on_screen_at_coordinates 坐标点击 无可访问性 ID 时降级使用
mobile_swipe_on_screen 滑动屏幕 列表滚动、翻页
mobile_type_keys 输入文字 表单填写、搜索

项目优先使用可访问性树解析 UI,速度快且不消耗图像 token,返回结构化数据。仅当可访问性信息不足时,才降级到截图 + 坐标方案。

六、常见问题与排查

设备列表为空

模拟器未启动或 adb 权限不足。排查命令:

bash 复制代码
## Android
adb kill-server && adb start-server
adb devices  # 应显示 emulator-xxx

## iOS
xcrun simctl list devices | grep Booted  # 应有 Booted 状态设备

AI 提示「找不到 mobile-mcp 工具」

新增 MCP 配置后需重启客户端才能加载。Claude Desktop 用户确认 claude_desktop_config.json 格式正确(注意末尾无多余逗号)。

点击操作不精准

部分 App 未正确实现可访问性属性。此时提示 AI 降级:

复制代码
如果看不到按钮的可访问性 ID,请截屏后通过视觉识别点击坐标

真机连接较复杂

iOS 真机需额外安装 go-ios 和 WebDriverAgent 并配置隧道。建议先用模拟器跑通流程,真机调试参考项目 Wiki

关闭遥测数据

添加环境变量禁用匿名遥测:

bash 复制代码
MOBILEMCP_DISABLE_TELEMETRY=1 npx @mobilenext/mobile-mcp@latest

或在配置中添加 env 字段。

七、下一步探索

完成从 0 到 1 搭建后,你可以:

  • 将重复操作写成提示词模板,如「每天从 XX App 抓取数据并保存至文件」
  • 结合 mobilewright(移动端 Playwright)将 AI 探索出的操作流程固化为可重复测试脚本
  • 大规模测试或 CI/CD 场景可了解 Mobile Next Cloud 服务

项目拥有 6244 Stars,社区活跃。工具调用问题可前往 GitHub 仓库 提 Issue 或加入 Slack 交流。

遇到配置问题欢迎留言讨论。

最后更新:2026-08-31T10:02:25

评论 (0)

发表评论

blog.comments.form.loading
0/500
加载评论中...