你是否曾经希望AI能够直接控制Android设备,自动执行ADB命令、截取屏幕、分析UI布局、管理应用包?今天要介绍的开源项目Android MCP控制服务器,正是为了实现这个目标而设计的。它通过ADB实现对Android设备的程序化控制,让AI能够管理Android设备。

项目基本信息

信息项详情
项目名称Android MCP 控制服务器
GitHub地址https://github.com/minhalvp/android-mcp-server
项目描述一个通过ADB实现对Android设备程序化控制的服务器,提供截图捕获、UI布局分析和包管理等功能。
作者minhalvp
开源协议Unknown
开源状态公开状态
LanguagesPython
支持平台Windows / macOS / Linux
最后更新2026-04-23

一、项目介绍

Android MCP控制服务器是一个让AI能够通过ADB控制Android设备的MCP工具。它提供了设备截图捕获、UI布局分析、包管理和ADB命令执行等功能。

这个服务器提供了以下工具:

  • get_packages:获取设备上所有已安装的包
  • execute_adb_command:执行ADB命令并返回输出
  • get_uilayout:检索当前UI中可点击元素的信息
  • get_screenshot:获取设备的截图
  • get_package_action_intents:获取包的Activity操作列表

二、核心优势

设备控制全面

覆盖Android设备管理的核心功能:

  • ADB命令执行
  • 截图捕获
  • UI布局分析
  • 包管理

灵活设备选择

支持多种设备选择模式:

  • 自动选择(单设备)
  • 手动选择(多设备)

UI分析

可以获取当前UI中可点击元素的信息,包括文本、内容描述、边界和中心坐标。

包管理

支持获取已安装包列表和包的Activity操作。

三、适用场景

Android自动化测试

让AI自动执行ADB命令、截图、分析UI,实现自动化测试。

应用管理

AI可以获取已安装应用列表,分析应用组件。

UI自动化

AI可以分析UI布局,识别可点击元素。

设备监控

AI可以定期获取设备状态和截图。

四、安装教程

系统要求

工具用途下载/安装方式
Python运行环境[https://python.org/] (版本要求:3.11 或更高)
ADBAndroid调试桥[https://developer.android.com/studio/command-line/adb]
Android设备或模拟器测试目标真机或模拟器
MCP客户端如Claude Desktop等根据客户端官网下载
UVPython包管理器pip install uv

安装步骤

第一步:安装ADB并连接设备

  1. 下载并安装ADB
  2. 启用设备的开发者选项和USB调试
  3. 连接设备并验证:adb devices

第二步:克隆项目并安装依赖

git clone https://github.com/minhalvp/android-mcp-server.git
cd android-mcp-server
uv python install 3.11
uv sync

第三步:配置设备(可选)

如果连接多个设备,创建config.yaml

device:
  name: "your-device-serial"  # 从adb devices获取

如果不配置,服务器会自动选择唯一连接的设备。

第四步:配置Claude Desktop

找到配置文件:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%APPDATA%\Claude\claude_desktop_config.json

添加配置:

{
  "mcpServers": {
    "android": {
      "command": "/path/to/uv",
      "args": ["--directory", "/path/to/android-mcp-server", "run", "server.py"]
    }
  }
}

第五步:重启Claude Desktop

保存配置后,重启Claude Desktop。

五、使用示例

配置完成后,你就可以在MCP客户端中使用自然语言来控制Android设备了。

示例1:获取已安装包列表

用户指令:“获取设备上所有已安装的包”

AI会调用get_packages工具。

示例2:执行ADB命令

用户指令:“执行adb shell dumpsys battery命令”

AI会调用execute_adb_command工具:

{
  "command": "shell dumpsys battery"
}

示例3:获取UI布局

用户指令:“分析当前屏幕的可点击元素”

AI会调用get_uilayout工具,返回可点击元素的信息。

示例4:获取截图

用户指令:“截取当前设备屏幕”

AI会调用get_screenshot工具,返回截图。

示例5:获取包的操作意图

用户指令:“获取com.android.settings包的所有操作”

AI会调用get_package_action_intents工具:

{
  "package_name": "com.android.settings"
}

六、设备选择说明

单设备(自动选择)

只需确保仅连接一个设备,服务器会自动连接,无需配置。

多设备(手动选择)

  1. 运行adb devices获取设备序列号
  2. 创建config.yaml

    device:
      name: "13b22d7f"  # 设备序列号

无设备

如果未连接设备,服务器会显示“无设备”错误。

多设备无配置

如果连接多个设备且未指定设备,服务器会显示错误并列出所有可用设备。

七、常见问题

问题1:ADB命令找不到

解决方案:确保ADB已安装并添加到系统PATH。

问题2:设备未授权

解决方案:在设备上确认USB调试授权。

问题3:多设备选择错误

解决方案:在config.yaml中指定设备序列号。

问题4:Python版本要求

解决方案:需要Python 3.11或更高版本。

问题5:UV安装问题

解决方案:运行pip install uv安装UV包管理器。

八、总结

Android MCP控制服务器是一个让AI能够通过ADB控制Android设备的MCP工具,提供了截图、UI分析、包管理等核心功能。

这个项目的最大价值在于:

  1. 设备控制全面:覆盖ADB命令、截图、UI分析、包管理
  2. 灵活设备选择:支持单设备自动选择和多设备手动选择
  3. UI分析:可识别可点击元素的位置和属性
  4. 易于集成:通过MCP协议与AI客户端集成
  5. 开源免费:代码公开,可自由使用

如果你是Android开发者或测试工程师,并且希望用AI来自动化设备操作,Android MCP控制服务器是一个非常实用的工具。

标签: 开发者工具

已有 34 条评论

    1. UlyssesUse UlyssesUse

      作为移动测试工程师,这个工具很实用。

    2. VeraVerify VeraVerify

      希望未来能支持模拟点击操作。

    3. WillWait WillWait

      已经加星,期待功能完善。

    4. XenaXray XenaXray

      开源协议未知,但代码公开。

    5. YaleYarn YaleYarn

      和直接使用ADB相比,这个更AI友好。