Token导航 LogoToken导航TokenDH.com
Scrcpy MCP logo
运维云端stdio官方级别未说明来源级核验

Scrcpy MCP

MCP Server

scrcpy-mcp

一个通过ADB和scrcpy为AI代理提供对Android设备完整视觉和控制的MCP服务器,适用于自动化测试、远程控制和应用开发。

工具数

34

提示词数

0

GitHub Stars

14

资源数

0
设备管理TypeScriptClaude远程控制ClaudeCursorVS Code

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

JuanCF

提供方

JuanCF

最后核验

2026/5/17 20:21

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx scrcpy-mcp

详细介绍

scrcpy mcp

MCP服务器,通过ADB和scrcpy为AI代理提供对Android设备的完全视觉和控制。

将任何兼容MCP的AI助手(Claude Code、OpenCode、Cursor、VS Code Copilot等)连接到您的Android设备。AI可以看到屏幕、点击、滑动、键入、启动应用程序、检查UI元素、传输文件和运行shell命令。

特性

  • 34工具 涵盖屏幕截图、输入、应用程序、UI自动化、shell、文件和剪贴板
  • scrcpy优先:使用scrcpy的二进制控制协议,输入速度提高10-50倍,屏幕截图近乎即时(约33ms)
  • ADB回退:每个工具都可以在没有scrcpy的情况下工作——速度较慢,但始终可用
  • 图片返回截图:AI实际上看到的是屏幕,而不仅仅是文件路径
  • UI元素查找: ui_find_element 返回点击坐标,以便AI可以根据它看到的内容采取行动
  • 适用于Android 10的剪贴板+:scrcpy绕过了打破亚行专用解决方案的限制

先决条件

必需的

要求安装验证
Node.js 22+nvm install (使用 )node --version
安卓调试桥 (安卓平台工具)developer.android.com/tools/releases/platform-toolsadb version
安卓设备 带USB调试设置→ 开发人员选项→ USB调试adb devices

可选(用于增强性能)

需求安装好处
屏幕镜像输入速度提高10-50倍,截图时间约为33毫秒
FFmpegapt install ffmpeg / brew install ffmpegscrcpy视频流解码所需

设备设置

  1. 启用开发人员选项: 设置→ 关于手机→ 点击“内部版本号”7次
  2. 启用USB调试: 设置→ 开发人员选项→ USB调试
  3. 通过USB连接设备
  4. 接受设备上的RSA指纹提示
  5. 验证: adb devices 应将您的设备显示为 device (不是 unauthorized)

安装

# Run directly with npx (no install needed)
npx scrcpy-mcp

# Or install globally
npm install -g scrcpy-mcp

MCP客户端配置

克劳德代码

claude mcp add android -- npx scrcpy-mcp

或添加到 .mcp.json 在项目根目录中:

{
  "mcpServers": {
    "android": {
      "command": "npx",
      "args": ["scrcpy-mcp"]
    }
  }
}

开源代码

增添 .mcp.json:

{
  "mcpServers": {
    "android": {
      "command": "npx",
      "args": ["scrcpy-mcp"]
    }
  }
}

光标

设置→ MCP → 添加服务器:

{
  "android": {
    "command": "npx",
    "args": ["scrcpy-mcp"]
  }
}

克劳德桌面版

编辑 ~/.config/Claude/claude_desktop_config.json (Linux)或 %APPDATA%\Claude\claude_desktop_config.json (Windows):

{
  "mcpServers": {
    "android": {
      "command": "npx",
      "args": ["scrcpy-mcp"]
    }
  }
}

VS代码(GitHub副本)

增添 .vscode/mcp.json:

{
  "servers": {
    "android": {
      "command": "npx",
      "args": ["scrcpy-mcp"]
    }
  }
}

工具参考

会话管理

工具说明
start_session启动scrcpy会话。活动时,输入和屏幕截图使用快速路径(快10-50倍)。
stop_session停止scrcpy会话。工具退回到ADB。

设备管理

工具说明
device_list列出所有连接的设备,包括串行、状态和型号
device_info获取型号、Android版本、屏幕大小、SDK级别、电池
screen_on唤醒设备屏幕
screen_off关闭屏幕
rotate_device旋转屏幕(需要活动会话)
expand_notifications下拉通知面板(需要活动会话)
expand_settings下拉快速设置面板(需要活动会话)
collapse_panels折叠通知/设置面板(需要活动会话)

视觉

工具说明
screenshot捕获屏幕并将其作为图像返回。使用scrcpy约33ms,通过ADB约500ms。
screen_record_start开始将屏幕录制到设备上的文件中
screen_record_stop停止录制,并可选择将文件拉到主机

输入控制

当会话处于活动状态时,所有输入工具都使用scrcpy(~5-10ms),否则回退到ADB(~100-300ms)。

工具说明
tap点击屏幕坐标
swipe从一个点滑动到另一个点
long_press长按坐标
drag_drop从一个点拖动到另一个点
input_text在焦点字段中键入文本字符串
key_event发送一个关键事件:HOME、BACK、ENTER、VOLUME_UP、VOLUME_DOWN、POWER等。
scroll在某个位置滚动(dx=水平,dy=垂直)

应用程序管理

工具说明
app_start按程序包名称启动应用程序。前缀为 + 在发射前强制停止。
app_stop强制停止应用程序
app_install从主机安装APK
app_uninstall卸载应用程序
app_list列出已安装的软件包,可选择按名称或系统/第三方进行筛选
app_current获取当前前台应用程序和活动

用户界面自动化

工具说明
ui_dump将整个UI层次结构转储为XML
ui_find_element按文本、资源ID、类名或内容描述查找元素。返回点击坐标。

外壳和文件

工具说明
shell_exec执行任意ADB shell命令并返回输出
file_push将文件从主机推送到设备
file_pull将文件从设备拉到主机
file_list列出设备上的目录内容

剪贴板

工具说明
clipboard_get获取剪贴板内容。使用scrcpy绕过Android 10+限制。
clipboard_set设置剪贴板内容。通过 paste: true 也可以立即粘贴。

演出

操作scrcpy(会话活动)ADB回退
屏幕截图~33ms~500ms
点击/滑动~5-10ms~100-300ms
文本输入~5ms~100-300ms
剪贴板~10ms在Android 10+上不可靠

在开始时启动一次会话以解锁快速路径:

start_session → take screenshots → tap → swipe → ...

环境变量

变量默认值描述
ADB_PATHadbADB二进制文件的路径
ANDROID_SERIAL(无)默认设备序列,覆盖自动检测
SCRCPY_SERVER_PATH(auto)scrcpy服务器二进制文件的路径
SCRCPY_SERVER_VERSION(auto)scrcpy服务器二进制文件的版本
FFMPEG_PATHffmpegffmpeg二进制文件的路径

当只有一个设备连接时,工具会自动检测到它。对于多个设备,传递 serial 显式或设置参数 ANDROID_SERIAL.

故障排除

adb devices 显示 unauthorized 接受设备上的RSA指纹提示。如果未出现提示,请在“开发人员选项”中撤销USB调试授权并重新连接。

start_session 失败 确保scrcpy已安装 scrcpy-server 二进制文件是可访问的。集 SCRCPY_SERVER_PATH 如果它位于非标准位置。

截图速度较慢(~500ms) 启动scrcpy会话 start_session 以启用快速视频流路径。需要scrcpy和ffmpeg。

expand_notifications / expand_settings / collapse_panels 失败 这些工具需要一个活动的scrcpy会话。跑 start_session 第一。

剪贴板在Android 10上不起作用+ ADB剪贴板访问在Android 10+上受到限制。启动scrcpy会话——scrcpy剪贴板协议绕过了此限制。

多台设备已连接 通过 serial 每个工具或设置 ANDROID_SERIAL 环境变量。

安全

此服务器提供对连接的Android设备的完全控制。这 shell_exec 该工具可以运行任意命令,以及 file_push/file_pull 可以读取和写入shell用户可访问的任何文件。

  • 服务器通过stdio在本地运行,不暴露在网络中
  • ADB要求在设备上明确启用USB调试
  • 设备必须在第一次连接时接受主机的RSA密钥
  • 仅连接您拥有的设备并信任您正在使用的AI代理

许可证

麻省理工学院——见 许可证

目录标签

目录标签

设备管理TypeScriptClaude远程控制Android自动化本地部署AI控制UI自动化

支持客户端

ClaudeCursorVS Code

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

none

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

scrcpy-mcp

工具数量(toolCount,工具数)

34

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdionone部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP