返回 MCP 目录
public公开dns本地运行

mobai-mcp

MobAI MCP服务器是一个用于移动设备自动化的Model Context Protocol服务,通过HTTP API连接MobAI桌面应用,使AI编程助手能够控制Android和iOS设备、模拟器,实现UI自动化、Web操作和批量脚本执行。

article

README

🚀 MobAI MCP 服务器

MobAI MCP 服务器是用于 MobAI 的 MCP(模型上下文协议)服务器,可实现基于人工智能的移动设备自动化。此服务器能让像 Cursor、Windsurf、Cline 等支持 MCP 的人工智能编码助手控制 Android 和 iOS 设备、模拟器以及仿真器。

🚀 快速开始

要使用 MobAI MCP 服务器,你需要满足以下前提条件:

  • Node.js 18 及以上版本
  • 本地运行 MobAI 桌面应用(该应用会在 8686 端口提供 HTTP API)
  • 连接 Android 或 iOS 设备(或模拟器/仿真器)

✨ 主要特性

  • 设备控制:列出、连接和管理 Android/iOS 设备。
  • UI 自动化:点击、输入、滑动以及与原生应用进行交互。
  • 网页自动化:使用 CSS 选择器控制 Safari/Chrome 浏览器和 WebView。
  • DSL 批量执行:高效执行多个自动化步骤。
  • AI 代理:运行自主代理以完成复杂任务。
  • 屏幕截图:捕获并保存设备屏幕截图。

📦 安装指南

Cursor

.cursor/mcp.json 中添加以下内容:

{
  "mcpServers": {
    "mobai": {
      "command": "npx",
      "args": ["-y", "mobai-mcp"]
    }
  }
}

Claude Desktop

在 macOS 系统的 ~/Library/Application Support/Claude/claude_desktop_config.json 中添加以下内容:

{
  "mcpServers": {
    "mobai": {
      "command": "npx",
      "args": ["-y", "mobai-mcp"]
    }
  }
}

Windsurf

在 Windsurf MCP 配置中添加以下内容:

{
  "mcpServers": {
    "mobai": {
      "command": "npx",
      "args": ["-y", "mobai-mcp"]
    }
  }
}

Cline / 其他 MCP 客户端

根据客户端的 MCP 服务器设置进行配置。该服务器使用标准输入输出传输。

{
  "command": "npx",
  "args": ["-y", "mobai-mcp"]
}

💻 使用示例

列出设备并截图

使用 list_devices 工具查看已连接的设备。
然后使用 get_screenshot 工具并指定设备 ID 进行截图。

自动化设置应用

使用 execute_dsl 工具并传入以下内容:
{
  "version": "0.2",
  "steps": [
    {"action": "open_app", "bundle_id": "com.apple.Preferences"},
    {"action": "delay", "duration_ms": 1000},
    {"action": "observe", "context": "native", "include": ["ui_tree"]},
    {"action": "tap", "predicate": {"text_contains": "General"}}
  ]
}

运行 AI 代理

使用 run_agent 工具,传入设备 ID 和任务:"Open Settings and enable WiFi"

📚 详细文档

可用工具

设备管理

  • list_devices - 列出所有已连接的设备
  • get_device - 获取设备信息
  • start_bridge - 启动设备上的自动化桥接
  • stop_bridge - 停止自动化桥接

UI 自动化

  • get_screenshot - 捕获设备屏幕截图
  • get_ui_tree - 获取可访问性树(支持文本正则表达式和边界过滤)
  • tap - 通过索引或坐标点击元素
  • type_text - 输入文本
  • swipe - 执行滑动手势
  • go_home - 导航到主屏幕
  • launch_app - 通过包 ID 启动应用
  • list_apps - 列出已安装的应用

DSL 执行

  • execute_dsl - 执行批量自动化脚本

AI 代理

  • run_agent - 运行自主代理以完成复杂任务

网页自动化

  • web_list_pages - 列出浏览器标签页/WebView
  • web_navigate - 导航到指定 URL
  • web_get_dom - 获取 DOM 树
  • web_click - 通过 CSS 选择器点击元素
  • web_type - 通过 CSS 选择器在元素中输入文本
  • web_execute_js - 执行 JavaScript

底层操作

  • http_request - 向 MobAI API 发起原始 HTTP 请求

可用资源

  • mobai://api-reference - 完整的 API 文档
  • mobai://dsl-guide - DSL 批量执行指南
  • mobai://native-runner - 原生应用自动化指南
  • mobai://web-runner - 网页自动化指南

与 Claude 代码插件的比较

| 特性 | Claude 代码插件 | MCP 服务器 | |------|-----------------|------------| | 平台 | 仅适用于 Claude 代码 | 任何支持 MCP 的客户端 | | 工具 | http_request(通用) | 命名工具 + http_request | | 资源 | 技能(Markdown 格式) | MCP 资源 | | 设置 | 插件安装 | npx |

MCP 服务器提供了与 Claude 代码插件相同的功能,但可与任何支持 MCP 的人工智能工具配合使用。

🔧 技术细节

故障排除

"Connection refused" 错误

  • 确保 MobAI 桌面应用正在运行
  • 检查 API 是否可在 http://127.0.0.1:8686 访问

"Bridge not running" 错误

  • 在进行自动化操作前,先使用 start_bridge 工具启动桥接
  • iOS 桥接可能需要长达 60 秒才能启动

屏幕截图不可见

  • 屏幕截图保存到 /tmp/mobai/screenshots/ 目录
  • 使用你的人工智能工具的文件读取功能查看截图

开发

# 克隆仓库
git clone https://github.com/MobAI-App/mobai-mcp.git
cd mobai-mcp

# 安装依赖
npm install

# 构建项目
npm run build

# 本地运行
node dist/index.js

📄 许可证

本项目采用 Apache 2.0 许可证,详情请参阅 LICENSE 文件。

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端