
人工智能AI AgentMCP 服务GUI 自动化移动开发测试【免费下载链接】mobile-mcpModel Context Protocol Server for Mobile Automation and Scraping (iOS, Android, Emulators, Simulators and Real Devices)项目地址https://gitcode.com/GitHub_Trending/mo/mobile-mcp点击查看免费下载Mobile MCP 是一个面向移动自动化与抓取的 Model Context ProtocolMCP服务器让 AI AgentCline、Cursor、Claude Code 等通过统一的接口驱动真实的 iOS/Android 真机、模拟器与仿真器。本文围绕仓库中的 llms-install.md 展开完整梳理前置条件、标准配置、客户端接入方式、安装验证、环境变量、Streamable HTTP 远程模式等实战要点并结合仓库源码src/index.ts、src/server.ts、src/mobilecli.ts 等说明底层实现原理。读完后你可以在自己的机器上完成 Mobile MCP 的安装、验证、认证与调试并让任意 MCP 兼容客户端具备移动设备操作能力。服务器能做什么Mobile MCP 让 Agent 通过一个接口驱动 iOS 与 Android 两类平台的设备、模拟器与仿真器核心能力包括点击、滑动与手势操作应用的安装、启动与终止屏幕截图与结构化 UI 元素提取基于无障碍树 accessibility tree不依赖视觉模型屏幕录制崩溃报告读取与设备日志采集。从源码看所有工具以mobile_前缀注册在 MCP 服务器上见 src/server.ts 中createMcpServer()的registerTool调用并通过mobilecli二进制与底层设备通信。仓库自带的 Agent 技能文档 skills/mobile-automation/SKILL.md 总结了标准工作流先用mobile_list_available_devices挑选设备再用mobile_list_elements_on_screen读取无障碍树比截图更快、更便宜、更可靠执行操作后用mobile_click_on_screen_at_coordinates、mobile_swipe_on_screen、mobile_type_keys等工具交互并在每一步之后重新读取元素确认 UI 变化。前置条件按照 llms-install.md 的说明安装前需确认用户机器满足以下条件Node.js v20服务器通过npx运行无需单独安装。仓库 package.json 中engines.node声明为20README.md 同样要求 Node.js v20。Android 目标Android Platform Tools且adb在PATH中。验证方式为adb devices能看到目标设备。iOS 目标仅 macOSXcode 命令行工具。至少一个可用目标已启动的 iOS Simulator、运行中的 Android 模拟器或已连接且被授权的真机。无需 API Key 或任何凭据。安装的是本地运行的服务器只与你连接的设备通信。安装步骤把服务器加入 MCP 配置即可。标准配置在绝大多数客户端中通用原样取自 llms-install.md 与 README.md{ mcpServers: { mobile-mcp: { command: npx, args: [-y, mobilenext/mobile-mcplatest] } } }npx -y mobilenext/mobile-mcplatest会临时拉取并直接运行 npm 上的最新发布包无需手工安装。从 package.json 的bin字段看包内可执行入口为lib/index.js命令名mcp-server-mobile构建产物经tsc编译后位于lib/。各客户端的接入方式README.md 给出了主流 MCP 客户端的安装配置以下是几种常见方式Claude CodeCLI 命令claude mcp add mobile-mcp -- npx -y mobilenext/mobile-mcplatestCodexCLI 命令或编辑~/.codex/config.tomlcodex mcp add mobile-mcp npx mobilenext/mobile-mcplatest[mcp_servers.mobile-mcp] command npx args [mobilenext/mobile-mcplatest]Gemini CLIgemini mcp add mobile-mcp npx -y mobilenext/mobile-mcplatestAntigravity 2手动编辑~/.gemini/config/mcp_config.json加入与标准配置一致的mcpServers块。Copilot在 Copilot CLI 中交互式执行/mcp add或编辑~/.copilot/mcp-config.json配置中包含type: local与tools: [*]字段{ mcpServers: { mobile-mcp: { type: local, command: npx, tools: [*], args: [mobilenext/mobile-mcplatest] } } }Cursor进入Cursor Settings→MCP→Add new MCP Server选择command类型并填写命令npx -y mobilenext/mobile-mcplatest。Windsurf在设置中打开 MCP servers以command类型添加命令为npx mobilenext/mobile-mcplatest也可直接使用上方的标准mcpServers配置。其他客户端Amp编辑settings.json的amp.mcpServers或执行amp mcp add mobile-mcp -- npx mobilenext/mobile-mcplatest、Claude Desktop按官方 MCP 安装指南使用同一 JSON、GooseAdvanced settings→Extensions→Add custom extension类型选STDIO、Kiro.kiro/settings/mcp.json、opencode~/.config/opencode/opencode.json含type: local与enabled: true等配置主体均为相同的npx mobilenext/mobile-mcplatest命令。验证安装是否成功安装完成后让 Agent 调用mobile_list_available_devices工具正常返回列出当前机器上已连接/已启动的模拟器、仿真器与真机列表返回空列表说明目标设备不可用请确认模拟器或仿真器正在运行或真机已连接并完成授权Android 侧需在adb devices中可见。从 src/server.ts 的实现看该工具会先调用ensureMobilecliAvailable()校验mobilecli --version随后通过mobilecli.getDevices({ includeOffline: true })获取设备列表并只把state online的设备返回给客户端。也就是说列表为空通常意味着mobilecli未就绪Node 环境或平台工具缺失或设备本身未就绪二者皆可从返回文本中判断。仓库还提供了标准工作流的建议提示词来自 README.md配置完成后直接要求 Agent list available devices列出可用设备若能返回运行中的模拟器、仿真器和已连接设备即代表 Mobile MCP 已正确接线。运行模式与环境变量默认 stdio 模式Mobile MCP 默认通过stdio运行src/index.ts这也是大多数本地客户端采用的方式MCP 客户端以子进程方式启动服务器通过标准输入输出进行 JSON-RPC 通信。Streamable HTTP 远程模式--listen如需以 HTTP 方式对外提供服务例如部署在 CI/CD 或远程主机使用--listen标志详见 README.md 与 src/index.tsnpx mobilenext/mobile-mcplatest --listen 3000该命令绑定localhost:3000若要绑定到指定网卡npx mobilenext/mobile-mcplatest --listen 0.0.0.0:3000随后将 MCP 客户端指向http://host:3000/mcpTLS 场景下为https://…/mcp。该端点使用Streamable HTTP传输POST /mcp且为无状态模式不需要会话亲和性适合 Smithery 等横向扩展主机。需要注意的迁移事项源码中有明确体现旧版本--listen曾提供已被废弃的 HTTPSSE 传输。现在/sse路径返回410 Gone提示客户端改用 Streamable HTTP见 src/index.ts。GET /mcp与DELETE /mcp返回405 Method Not Allowed因为无状态模式没有长生命周期会话SSE 流与会话拆除均不适用见 src/index.ts。绑定 localhost 时自动启用 Host 头 DNS rebinding 防护由createMcpExpressApp({ host })提供src/index.ts。仓库提供了可复用的冒烟验证脚本 scripts/verify-streamable-http.mjs它会启动一个--listen服务器实例、通过StreamableHTTPClientTransport完成 initialize 握手、调用tools/list并断言mobile_list_available_devices存在——这份脚本可作为你验证 HTTP 部署是否正常的参考模板。环境变量参考变量说明示例MOBILEMCP_AUTH为 Streamable HTTP 服务器--listen启用 Bearer token 认证设置后每个请求都必须携带Authorization: Bearer tokenMOBILEMCP_AUTHmy-secret-tokenMOBILEMCP_DISABLE_TELEMETRY关闭匿名使用遥测MOBILEMCP_DISABLE_TELEMETRY1MOBILEMCP_ALLOW_UNSAFE_URLS允许mobile_open_url打开非标准 URL scheme默认被阻止MOBILEMCP_ALLOW_UNSAFE_URLS1MOBILEMCP_LEGACY_ROBOT对 Android 真机与 iOS 真机使用旧的平台专用 Robot 实现iOS 模拟器继续使用mobilecliMOBILEMCP_LEGACY_ROBOT1从源码确认的实现细节认证实现src/index.ts读取MOBILEMCP_AUTH后中间件校验req.headers.authorization Bearer token不匹配返回401 Unauthorized未设置该变量时服务器接受未认证连接并输出警告日志。遥测实现src/server.ts默认通过 PostHog 上报工具调用事件、通过 Scarf 上报一次进程级像素设置MOBILEMCP_DISABLE_TELEMETRY后两者都会被跳过。旧 Robot 模式src/server.ts设置MOBILEMCP_LEGACY_ROBOT1时createRobotFromDevice会先尝试通过IosManager/AndroidDeviceManager匹配 iOS 真机与 Android 设备否则回退到mobilecli驱动的MobileDevice。在 JSON 配置中传递环境变量若不想在 shell 中设置环境变量可在 MCP 配置的env字段中注入以关闭遥测为例来自 README.md{ mcpServers: { mobile-mcp: { command: npx, args: [-y, mobilenext/mobile-mcplatest], env: { MOBILEMCP_DISABLE_TELEMETRY: 1 } } } }同理MOBILEMCP_AUTH、MOBILEMCP_ALLOW_UNSAFE_URLS、MOBILEMCP_LEGACY_ROBOT以及MOBILECLI_PATH指定 mobilecli 二进制路径都可通过该方式注入。底层原理mobilecli 二进制如何被发现服务器并不内置设备驱动而是依赖随包分发的mobilecli二进制与设备通信。src/mobilecli.ts 中的getMobilecliPath()揭示了其查找逻辑若设置了环境变量MOBILECLI_PATH直接使用该路径否则按process.platform与process.arch匹配平台架构查找node_modules下mobilecli-{platform}-{arch}作用域包中的二进制Windows 为.exe也兼容旧版mobilecli/bin目录布局找不到则抛出 Could not find mobilecli binary 错误。这意味着只要npx能拉取到mobilenext/mobile-mcp其依赖的 mobilecli 二进制会随包自动安装到node_modules中。mobile_list_available_devices、设备操作、屏幕截图、崩溃报告等能力全部经由mobilecli的子命令如devices、device info、io swipe、screenshot、device crashes list等完成src/mobilecli.ts、src/mobile-device.ts。另一个值得注意的自动化细节当目标为 iOS 模拟器且首次访问时服务器会自动检查并安装 WebDriverAgent agentmobilecli.agentStatus/mobilecli.agentInstall见 src/server.ts无需手工干预。常见问题排查mobile_list_available_devices返回空列表按前述验证逻辑先确认模拟器/仿真器已启动Android 可用avdmanager/emulator启动iOS 需 Xcode 环境并执行xcrun simctl list、xcrun simctl boot iPhone 16启动模拟器或真机已连接并授权。iOS 真机需要额外配置llms-install.md 特别注明iOS 真机需要 go-ios WebDriverAgent 设备隧道device tunnel的额外设置iOS 模拟器与 Android 目标则无需额外配置只需满足前述前置条件即可。相关细节在仓库 README.md 与 wiki 中有完整说明。遥测不想要设置MOBILEMCP_DISABLE_TELEMETRY1见上文环境变量小节。升级迁移若客户端仍指向旧的/sse端点会收到410 Gone响应提示改用 Streamable HTTP 的/mcp端点。小结安装 Mobile MCP 本质上只有三步确认 Node.js v20 与平台工具链就绪 → 把npx -y mobilenext/mobile-mcplatest写入你的 MCP 客户端配置 → 让 Agent 调用mobile_list_available_devices验证。在此基础上--listen可切换为 Streamable HTTP 远程模式、MOBILEMCP_AUTH可加装 Bearer 认证、MOBILEMCP_DISABLE_TELEMETRY可关闭遥测iOS 真机则需额外的 go-ios/WebDriverAgent 配置。结合仓库源码src/index.ts、src/server.ts、src/mobilecli.ts、scripts/verify-streamable-http.mjs阅读可以进一步理解其设备发现、agent 自动安装与认证校验的完整链路。赞分享人工智能AI AgentMCP 服务GUI 自动化移动开发测试【免费下载链接】mobile-mcpModel Context Protocol Server for Mobile Automation and Scraping (iOS, Android, Emulators, Simulators and Real Devices)项目地址https://gitcode.com/GitHub_Trending/mo/mobile-mcp点击查看免费下载相关推荐Mobile MCP 实战指南基于 MCP 协议的 iOS/Android 移动自动化与开发Mobile MCP 实战指南基于 MCP 协议的 iOS/Android 移动自动化与开发 导读 本文以 README.zh CN.md https://l人工智能AI AgentMCP 服务GUI 自动化移动开发测试mobile-mcp移动自动化的终极革命让AI轻松操控iOS和Android设备mobile mcp移动自动化的终极革命让AI轻松操控iOS和Android设备 你是否曾经为移动应用测试的复杂性而头疼是否希望有一种简单的方法让AI助手人工智能AI AgentMCP 服务GUI 自动化移动开发测试mobile-mcp 移动设备自动化实战Agent 驱动 iOS/Android 真机、模拟器与仿真器的完整指南mobile mcp 移动设备自动化实战Agent 驱动 iOS/Android 真机、模拟器与仿真器的完整指南 本篇技术指南以 skills/mobile人工智能AI AgentMCP 服务GUI 自动化移动开发测试创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考