Skip to content

Releases

v0.2.0 - 修复客户端发送消息报错

Choose a tag to compare

@wu737 wu737 released this 05 Nov 09:32

adbmcp v0.2.0

让 Android 手机变成 MCP 服务器,让 Claude / Cursor / RikkaHub / WorkBuddy 等任意 AI 客户端通过自然语言直接操作你的设备。

特性

  • 一键启动 —— Termux 里敲 adbmcp,MCP 服务与设备连接同时就绪
  • 不打扰设备 —— 启动时不主动连接任何设备,只输出接入信息
  • 延后守护 —— 后台守护先等待设备接入,检测到设备后才开始维持连接
  • 局域网直连 —— 任意 AI 客户端通过 http://<手机IP>:8081/mcp 接入,无需 PC 中转
  • 固定 Token —— 跨设备迁移时 AI 客户端配置无需改动
  • 84 个工具 —— 基于 termux-mcp v0.15.0,含 shell 执行、文件读写、截图、通知等
  • 危险命令拦截 —— 服务端识别高危命令并要求显式确认

v0.2.0 变更

启动不再主动连接设备

adbmcp 启动时只启动 MCP 并打印接入信息,不再执行任何 adb connect。
原先 banner 内与 start 分支各调一次连接函数,导致设备列表重复打印 —— 已移除。

守护进程改为两阶段:

  • 等待阶段 —— 只观察 adb 设备数量,为 0 时仅等待,不执行任何连接动作
  • 工作阶段 —— 检测到设备接入后才转入,开始维持连接并保证 MCP 存活

日志中会输出两条使用示例提示词,说明在 AI 客户端里怎么提问。

通用化,不再限定车机

项目定位改为通用的 Termux adb + MCP 通道,可操作任意支持 adb 的设备
(Android 手机、车机、开发板、路由器……)。

旧 新
car_watchdog.sh device_watchdog.sh
car_setup.sh device_setup.sh
boot_car_mcp.sh boot_mcp.sh
scan_car.py scan_device.py
cars.txt devices.txt
~/mcp-servers/car/ ~/mcp-servers/adbmcp/

新增 adbmcp connect 用于手动触发连接。旧目录数据会自动迁移。

部署加固

  • 安装脚本部署时自动把 CRLF 转为 LF(Termux 下 CRLF 会报 bad interpreter)
  • adbmcp 启动时自愈同目录脚本的换行符
  • 修正 PATH 覆盖问题(覆盖会丢掉 Termux 的 usr/bin,导致 python3/pip/adb 全部 not found)
  • 安装脚本兼容「同目录」与「scripts/ 子目录」两种布局

客户端配置

adbmcp config 可直接打印现成配置。RikkaHub 用户在「设置 → MCP → 导入」粘贴:

{
  "type": "streamableHttp",
  "commonOptions": {
    "name": "termux",
    "enable": true,
    "headers": [
      ["Authorization", "Bearer YOUR_TOKEN"]
    ]
  },
  "url": "http://YOUR_PHONE_IP:8081/mcp"
}

⚠️ RikkaHub 注意:MCP 是两层配置 —— 在「设置 → MCP」添加服务器后,
还要长按助手 → 编辑 → MCP 服务器里为该助手勾选,工具才会生效。
另外模型需支持 function calling。

已知限制

  • Termux 被杀 → MCP 进程消失(装 Termux:Boot 可自动拉起)
  • 无线调试会因息屏断开 → termux-wake-lock 或改用 USB
  • run 对含 ; 的复合命令可能返回空 → 拆成单条调用

⚠️ 安全提示:默认 Token 是公开的固定值。若网络环境不完全可信,请用
export ADBMCP_TOKEN=$(head -c 24 /dev/urandom | base64 | tr -d '/+=') 替换,
并同步更新所有 AI 客户端配置。建议在客户端侧为 run/write/delete 等高危工具开启「需要审批」。

v0.1.0 - 首个版本

Choose a tag to compare

@wu737 wu737 released this 05 Nov 07:14

adbmcp v0.1.0

把 Android 手机变成 MCP 服务器,让 Claude / Cursor / RikkaHub / WorkBuddy 等任意 AI 客户端通过自然语言操作车机。

特性

  • 一键启动 —— Termux 里敲 adbmcp,MCP 服务与车机连接同时就绪
  • 局域网直连 —— 任意 AI 客户端通过 http://<手机IP>:8081/mcp 接入,无需 PC 中转
  • 固定 Token —— 跨设备迁移时 AI 客户端配置无需改动
  • 双端守护 —— 手机端守护 MCP 进程与车机连接,PC 端守护 adb 隧道,断线自动自愈
  • 84 个工具 —— 基于 termux-mcp v0.15.0,含 shell 执行、文件读写、截图、通知等
  • 危险命令拦截 —— 服务端识别高危命令并要求显式确认

选型依据

车机实测为 Buildroot Linux(无 getprop/wm),基于无障碍树的 mobile-mcp 方案完全无效,
纯 adb shell 是唯一可行路线。因此由手机而非 PC 承载 MCP 服务端。

快速开始

# Termux 里
pkg install android-tools
pip install termux-mcp==0.15.0
bash install-adbmcp.sh
adbmcp          # 启动并打印接入信息

资产

adbmcp-bundle.zip 包含全部脚本,可直接解压到 Termux 运行 install/install-adbmcp.sh 完成部署。

⚠️ 安全提示:默认 Token 是公开的固定值。若网络环境不完全可信,请用
export ADBMCP_TOKEN=$(head -c 24 /dev/urandom | base64 | tr -d '/+=') 替换,
并同步更新所有 AI 客户端配置。建议在客户端侧为 run/write/delete 等高危工具开启「需要审批」。