科学工具
科学工具让世界更美好
让世界更美好

Android MCP Server:通过ADB协议提供设备控制、截图、UI分析等功能的服务器Android MCP Server:通过ADB协议提供设备控制、截图、UI分析等功能的服务器

Android MCP Server是一个通过ADB协议提供设备控制、截图、UI分析等功能的服务器,可被客户端调用,利用 ADB (Android Debug Bridge) 对 Android 设备进行程序化控制,实现了 MCP (Model Context Protocol),可以让你通过 MCP 客户端(例如 Claude desktop 和 Cursor 等代码编辑器)访问和操作 Android 设备。Android MCP Server是一个桥梁,让你的开发工具能够更智能地与 Android 设备进行交互。

Android MCP Server特点

ADB 命令执行:执行各种 ADB 命令,用来管理设备。

设备截图捕获:获取设备的屏幕截图。

UI 布局分析:分析当前 UI 中的可点击元素。

设备包管理:管理设备上安装的应用包。

安装条件

• Python 3.x

• 安装并配置 ADB(Android Debug Bridge)

• Android 设备或模拟器

安装

1、克隆仓库:

git clone https://github.com/minhalvp/android-mcp-server.git
cd android-mcp-server

2、安装依赖项,使用 uv 进行项目管理。

3、配置:服务器使用简单的 YAML 配置文件(config.yaml)指定目标 Android 设备。

自定义配置

创建一个新的配置文件:

touch config.yaml

配置设备:

device:
  name: "google-pixel-7-pro"  # 你的设备标识符,从 'adb devices' 获取

使用方法

你要需要一个 MCP 客户端来使用该服务器,以Claude 桌面应用程序为例。

要在 Claude 桌面中使用此服务器:

1、找到你的 Claude 桌面配置文件:

• Windows: %APPDATA%\Claude\claude_desktop_config.json

• macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

2、在 mcpServers 部分添加 Android MCP 服务器配置:

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

替换:

path/to/uv 为你的 uv 可执行文件的真实路径。

path/to/android-mcp-server 为你克隆此仓库的绝对路径。

可用工具

服务器暴露了以下工具:

get_packages():获取设备上安装的所有应用包,返回一个字符串形式的包列表。

execute_adb_command(command: str):执行 ADB 命令并返回输出。

get_uilayout():检索当前 UI 中的可点击元素信息,返回一个包含每个可点击元素的详细信息(如文本、内容描述、边界和中心坐标)的格式化字符串。

get_screenshot():拍摄设备的屏幕截图并返回。

get_package_action_intents(package_name: str):获取包的非数据动作,返回活动解析表中所有非数据动作的列表。