ADB MCP 服务器是一个用于管理 Android 调试桥接 (ADB) 连接,并与 Android 设备进行交互的 Model Context Protocol (MCP) 服务器。它提供了设备管理、截图捕获等多种功能,能有效提升与 Android 设备交互的效率。
ADB MCP 服务器作为 Model Context Protocol 服务器通过 stdio 运行:
npm start
用于开发时,带有文件更改自动重启的功能:
npm run dev
git clone https://github.com/yourusername/adb-mcp-server.git
cd adb-mcp-server
npm install
npm run build
get_devices
返回所有连接的 Android 设备及其 ID 和连接状态的列表。
capture_screenshot
参数:
deviceId:要从中捕获屏幕截图的设备 IDpath:保存截图的路径截图将按照以下格式命名:YYYYMMDD_HH_MM_SS.png
get_ui_elements
参数:
deviceId:要提取其 UI 层次结构的设备 ID返回完整的 UI 层次结构,以 XML 格式呈现,适用于 UI 自动化和测试。
execute_adb_command
参数:
deviceId:要在其上执行命令的设备 IDcommand:要执行的 ADB 命令允许在指定设备上运行任意 ADB 命令。
adb-mcp-server
├── src
│ ├── index.ts # 主 MCP 服务器入口点
│ ├── handlers/ # 每个功能的请求处理程序
│ │ ├── deviceList.ts # 设备列表功能
│ │ ├── screenshot.ts # 屏幕截图捕获功能
│ │ └── uiElements.ts # UI 层次结构提取功能
│ ├── utils/ # 工具函数
│ │ ├── adb.ts # ADB 命令执行工具
│ │ └── screenshot.ts # 截图处理工具
│ └── types/ # TypeScript 类型定义
├── package.json # 项目依赖和脚本
└── tsconfig.json # TypeScript 配置
此项目根据 MIT 许可证发布,详细信息见 LICENSE 文件。
欢迎贡献!请随意提交 Pull Request。