项目简介
Mobile MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为大型语言模型 (LLM) 提供与移动设备(目前仅支持安卓手机)交互的能力。它允许 LLM 通过结构化的 UI 信息(而非截图)理解和操作移动应用,实现自动化任务。
主要功能点
- 获取UI结构 (mobile_dump_ui): 获取当前手机屏幕上所有可交互 UI 元素的详细层级结构,包括位置、文本和属性,用于精确导航和操作。
- 模拟点击 (mobile_tap): 在屏幕指定坐标模拟点击操作,与 UI 元素进行交互。
- 模拟滑动 (mobile_swipe): 模拟从一个坐标滑动到另一个坐标的手势,可用于页面滚动等操作。
- 文本输入 (mobile_type): 在当前文本输入框中输入文本内容。
- 按键模拟 (mobile_key_press): 模拟按下特定的按键,如返回键、Home 键等。
- 屏幕截图 (mobile_screenshot): 捕获当前屏幕截图,作为视觉辅助或 UI 结构信息不足时的补充。
- 应用包列表 (mobile_list_packages): 列出设备上已安装的应用包名,可用于查询特定应用。
- 启动应用 (mobile_open_app): 根据应用包名启动指定的应用程序。
安装步骤
- 安装 Node.js 和 npm: 确保你的电脑上已安装 Node.js 和 npm (Node 包管理器)。
- 安装 Android SDK Platform Tools: 下载并安装 Android SDK Platform Tools,并将其 'platform-tools' 目录添加到系统环境变量 'PATH' 中,以便可以使用 'adb' 命令。
- 安装 mobile-mcp: 使用 npm 安装 mobile-mcp 包。在命令行终端中运行:
npm install mobile-mcp
服务器配置
MCP 客户端需要配置以下 JSON 信息以连接到 Mobile MCP Server:
{ "mcpServers": { "mobile": { // 服务器名称,客户端可以自定义 "command": "npx", // 启动服务器的命令,这里使用 npx 执行本地安装的 mobile-mcp 包 "args": ["mobile-mcp"] // 命令参数,这里是 mobile-mcp,表示执行 mobile-mcp 入口文件 } } }
配置说明:
- '"mobile"': 是你为该 MCP 服务器定义的名称,在客户端中用于标识和调用。
- '"command": "npx"': 指定用于启动服务器的命令为 'npx'。'npx' 允许你执行本地安装的 npm 包的可执行文件。
- '"args": ["mobile-mcp"]': 指定传递给 'npx' 命令的参数。'"mobile-mcp"' 是 'mobile-mcp' 包提供的可执行文件名,用于启动 MCP 服务器。
基本使用方法
-
启动 MCP 服务器: 在命令行终端中,确保你已安装 'mobile-mcp' 包,然后运行命令启动服务器:
npx mobile-mcp服务器成功启动后,会在终端输出 'Mobile use mcp server is running.'
-
配置 MCP 客户端: 在你的 MCP 客户端(例如,支持 MCP 协议的 LLM 应用或开发工具)中,配置上述提供的服务器配置 JSON。确保服务器名称 ('"mobile"') 与客户端配置中使用的名称一致。
-
使用 LLM 调用工具: 在 LLM 中,你可以指示它使用以下工具来与移动设备交互:
- 'mobile_dump_ui': 获取 UI 结构
- 'mobile_tap': 模拟点击
- 'mobile_swipe': 模拟滑动
- 'mobile_type': 文本输入
- 'mobile_key_press': 按键模拟
- 'mobile_screenshot': 屏幕截图
- 'mobile_list_packages': 列出应用包
- 'mobile_open_app': 启动应用
例如,你可以指示 LLM "使用 'mobile_dump_ui' 工具获取当前屏幕的 UI 结构" 或 "使用 'mobile_tap' 工具点击坐标 (100, 200)"。
注意: 确保你的安卓手机已连接到电脑,并已启用 USB 调试模式,且 'adb devices' 命令可以检测到你的设备。
信息
分类
桌面与硬件