项目简介

Android MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器,它允许大型语言模型 (LLM) 客户端通过 ADB (Android Debug Bridge) 远程控制 Android 设备。该服务器将 Android 设备的多种功能封装成 MCP 工具,使得 LLM 可以通过标准的 MCP 协议与 Android 设备进行交互,实现自动化控制和数据获取。

主要功能点

  • ADB 命令执行: 允许 LLM 客户端执行任意 ADB 命令,实现对 Android 设备的底层控制。
  • 设备截图: 允许 LLM 客户端获取 Android 设备当前屏幕的截图,用于视觉分析或内容理解。
  • UI 布局分析: 允许 LLM 客户端分析当前 Android 设备 UI 布局,提取可点击元素的信息(文本、描述、位置等),辅助进行基于 UI 的自动化操作。
  • 应用包管理: 允许 LLM 客户端获取设备上已安装的应用包列表,用于应用管理或分析。
  • 应用 Intent 查询: 允许 LLM 客户端查询特定应用包的 Action Intents,用于更深入的应用交互和功能发现。

安装步骤

  1. 克隆仓库: 打开终端,执行以下命令克隆 GitHub 仓库到本地:

    git clone https://github.com/minhalvp/android-mcp-server.git
    cd android-mcp-server
  2. 安装依赖: 该项目使用 'uv' 进行依赖管理。确保您已安装 'uv',然后在项目目录下执行:

    uv sync

    如果未安装 'uv',请先参考 uv installation 进行安装。

服务器配置

要将此 MCP 服务器与 MCP 客户端(例如 Claude Desktop 或 Cursor)配合使用,您需要在客户端的配置文件中添加服务器配置。以下是 Claude Desktop 的配置示例,您需要根据您的 MCP 客户端进行相应配置:

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

配置参数说明:

  • '"android"': 服务器名称,可以自定义,用于在 MCP 客户端中标识和选择该服务器。
  • '"command"': 启动 MCP 服务器的命令,这里需要配置 'uv' 可执行文件的绝对路径。 您可以使用 'which uv' 命令查找 'uv' 的路径,并替换 'path/to/uv'。
  • '"args"': 启动命令的参数列表。
    • '"--directory"': 指定 MCP 服务器代码所在的目录,需要替换 'path/to/android-mcp-server' 为您克隆仓库的绝对路径
    • '"run server.py"': 指示 'uv' 运行 'server.py' 文件,启动 MCP 服务器。

请注意:

  • 确保您的 Android 设备已通过 ADB 连接到电脑,并且 ADB 环境已正确配置。
  • 您需要根据实际 'uv' 的安装路径和仓库的存放路径,修改上述配置示例中的 'command' 和 'args' 字段。

基本使用方法

  1. 启动 MCP 服务器: 按照上述服务器配置,在 MCP 客户端中配置并启动 "android" MCP 服务器。
  2. 连接 MCP 客户端: 确保您的 MCP 客户端已成功连接到 "android" MCP 服务器。
  3. 使用 MCP 工具: 在 MCP 客户端中,您应该能够看到 "android" MCP 服务器提供的工具列表(例如 'get_packages', 'execute_adb_command', 'get_screenshot', 'get_uilayout', 'get_package_action_intents')。您可以根据需要选择并调用这些工具,从而控制 Android 设备或获取设备信息。

具体工具的使用方法和参数,请参考仓库 'README.md' 文件中 "Available Tools" 部分的描述。

信息

分类

桌面与硬件