返回市场
安卓ADB MCP服务器

安卓ADB MCP服务器

作者:landicefu28 星标更新:2025-03-06

项目介绍

Android ADB MCP 服务器

这是一个模型上下文协议(MCP)服务器,它使AI助手能够通过Android调试桥(ADB)与Android设备进行交互。该服务器弥合了AI功能与Android设备管理之间的差距,实现了Android开发和测试操作的无缝自动化。

⚙️ 快速设置

将服务器添加到您的MCP配置文件中:

{
  "mcpServers": {
    "android-adb": {
      "command": "npx",
      "args": ["-y", "@landicefu/android-adb-mcp-server"],
      "env": {},
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

配置位置

  • Claude Desktop: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
  • Cline/Roo Code: ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_m_设置.json (macOS)
  • 对于Windows/Linux,请检查相应的应用支持目录

配置完成后,重启您的AI助手以加载新的服务器配置。

📋 先决条件

  • ADB (Android 调试桥) 必须安装并包含在系统PATH中
  • 对于剪贴板功能:
    • macOS: osascript (内置)
    • Windows: PowerShell (内置)
    • Linux: xclip (通过 apt-get install xclip 或等效命令安装)
  • Node.js 16.x 或更高版本

🚀 功能

  • 连接到并管理多个Android设备
  • 在Android设备上执行shell命令
  • 安装和卸载应用程序
  • 在本地系统和Android设备之间推送和拉取文件
  • 启动Android设备上的应用程序
  • 拍摄屏幕截图并保存到本地或复制到剪贴板
  • 当连接多个设备时智能选择设备

🛠️ 可用工具

工具描述必需参数可选参数
adb_devices列出已连接的设备
adb_shell执行shell命令commanddevice_id
adb_install安装APK文件pathdevice_id
adb_uninstall卸载应用程序package_namedevice_id
adb_list_packages列出已安装的包device_id, filter
adb_pull从设备拉取文件remote_path, local_pathdevice_id
adb_push将文件推送到设备local_path, remote_pathdevice_id
launch_app启动应用程序package_namedevice
take_screenshot_and_save拍摄并保存屏幕截图output_pathdevice_id, format
take_screenshot_and_copy_to_clipboard将屏幕截图复制到剪贴板device_id, format

设备管理

服务器智能处理设备选择:

  • 如果只连接了一个设备,则会自动使用该设备
  • 如果连接了多个设备,则必须指定一个 device_id 参数
  • 如果没有连接任何设备,则返回错误

屏幕截图路径解析

当指定保存屏幕截图的 output_path 时,路径解析如下:

  • 绝对路径按原样使用
  • ~ 开头的路径扩展为用户的主目录
  • 相对路径相对于用户的主目录解析

这确保了屏幕截图保存到MCP服务器具有写权限的位置。

🔍 故障排除

常见问题

  1. “ADB不可用”错误

    • 确保ADB已安装并在您的系统PATH中
    • 通过在终端运行 adb version 来验证
  2. “没有连接Android设备”错误

    • 检查设备是否正确连接,使用 adb devices
    • 确保设备上启用了USB调试
    • 尝试使用 adb kill-serveradb start-server 重新启动ADB
  3. “连接了多个设备”错误

    • 在工具调用中指定 device_id 参数
    • 使用 adb_devices 工具获取可用设备列表
  4. 屏幕截图到剪贴板不工作

    • 确保安装了所需的平台特定工具

🔧 替代安装方法

方案1:从npm安装

# 全局安装
npm install -g @landicefu/android-adb-mcp-server

# 或者在项目中本地安装
npm install @landicefu/android-adb-mcp-server

方案2:从源代码手动安装

  1. 克隆仓库:

    git clone https://github.com/landicefu/android-adb-mcp-server.git
    cd android-adb-mcp-server
    
  2. 安装依赖项并构建:

    npm install
    npm run build
    
  3. 使用直接路径配置:

    {
      "mcpServers": {
        "android-adb": {
          "command": "node",
          "args": ["/path/to/android-adb-mcp-server/build/index.js"],
          "env": {},
          "disabled": false,
          "alwaysAllow": []
        }
      }
    }
    

📄 许可证

本项目根据ISC许可证发布 - 查看LICENSE文件了解详情。

🤝 贡献

欢迎贡献!请随时提交Pull Request。

  1. 分叉仓库
  2. 创建您的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交更改 (git commit -m '添加一些惊人的功能')
  4. 推送到分支 (git push origin feature/amazing-feature)
  5. 打开Pull Request