ADB MCP服务器(Python)
Python模型上下文协议(MCP)服务器,允许Claude通过Android Debug Bridge(ADB)直接与Android设备通信。
🚀 功能
- 设备管理列出已连接的设备
- 执行命令在Android上运行shell命令
- 安装/卸载:Gerenciar应用程序没有处置权
- 原木船长:Acessar logcat做安卓
- 截图: 抓取设备屏幕
- 文件传输推/拉文件
- 输入模拟触摸,滑动,键入
- 应用列表:Ver应用程序instalados
- 系统信息电池,版本,型号,内存
📋 先决条件
- Python 3.10+
- 紫外线 (Python 软件包管理器)
- ADB(安卓调试桥) 安装在
C:\Users\Cristiano\Programação\ADB\ - 安卓配置 启用 USB 调试
- 克劳德桌面 支持MCP
🛠️ 安装
1. 安装UV(如果没有)
# Windows (PowerShell)
irm https://astral.sh/uv/install.ps1 | iex
# Ou baixar do site oficial: https://github.com/astral-sh/uv2. 创建和配置项目
# Criar diretório
mkdir adb-mcp-server
cd adb-mcp-server
# Salvar os arquivos (main.py e pyproject.toml)
# Depois executar:
# Instalar dependências
uv sync
# Testar se funciona
uv run python main.py3. 文件结构
adb-mcp-server/
├── main.py # Código principal do servidor
├── pyproject.toml # Configurações do projeto
├── README.md # Este arquivo
└── .venv/ # Ambiente virtual (criado pelo uv)⚙️ Claude 桌面配置
将此设置添加到 Claude Desktop 配置文件 :
窗户: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"adb": {
"command": "uv",
"args": [
"--directory",
"C:\\caminho\\para\\adb-mcp-server",
"run",
"python",
"main.py"
]
}
}
}实际路径示例:
{
"mcpServers": {
"adb": {
"command": "uv",
"args": [
"--directory",
"C:\\Users\\Cristiano\\Documents\\adb-mcp-server",
"run",
"python",
"main.py"
]
}
}
}📱 安卓系统的准备与部署
- 启用开发者选项 :
- 转到“设置”>“关于手机” - 点击“版本号”7次
- 启用 USB 调试 :
- 设置 > 开发者选项 - 启用“USB 调试”
- 通过USB连接:
- 将设备连接到PC - 接受 Android 上的授权提示
- 测试连接 :
# No seu diretório do ADB
cd "C:\Users\Cristiano\Programação\ADB"
.\adb.exe devices🎯 Claude的实例
基本命令
"Liste os dispositivos Android conectados"
"Quais apps estão instalados no meu telefone?"
"Tire uma screenshot e salve em C:\Screenshots\tela.png"
"Mostre informações da bateria do meu telefone"自动化与控制
"Toque na coordenada 500, 800 do meu telefone"
"Digite 'Olá mundo' no meu telefone"
"Deslize da coordenada 300,500 até 300,200"
"Pressione o botão home (keyevent 3)"开发与调试
"Execute o comando 'getprop ro.build.version.release' no meu telefone"
"Mostre os últimos 50 logs do sistema com filtro 'Error'"
"Instale o app em C:\Downloads\meuapp.apk"
"Desinstale o app com.exemplo.meuapp"文件传输
"Envie o arquivo C:\Downloads\foto.jpg para /sdcard/Pictures/"
"Baixe o arquivo /sdcard/Download/documento.pdf para C:\Documentos\"🔧 可用的命令
| 命令 | 描述 | 使用示例 |
|---|---|---|
adb_devices | 设备列表 | “连接了哪些设备?” |
adb_shell 在手机上运行“ls /sdcard/” | ||
adb_install | Instala APK | “Instale o app em C:\\app.APK” |
adb_uninstall | 删除应用程序 | “Desinstall com.example.app” |
adb_logcat | 捕捉日志 | “显示带有'错误'过滤器的日志” |
adb_screenshot | 屏幕截图 | “C:tela.png 的屏幕截图” |
adb_push 发送文件 | “将.txt 文件发送到 /sdcard/” | |
adb_pull | 拖动文件 | “下载/sdcard/foto.jpg 到 C:” |
adb_input | 模拟输入 | “按 100, 200” |
adb_apps 应用程序列表 | “我安装了哪些应用程序?” | |
adb_info | 系统信息 | “显示电池信息” |
🔍 解决问题
错误:“找不到 ADB”
# Verifique o caminho no código
# Edite a variável ADB_PATH em main.py
ADB_PATH = r"C:\Users\Cristiano\Programação\ADB\adb.exe"错误:“找不到设备”
# Teste manualmente
cd "C:\Users\Cristiano\Programação\ADB"
.\adb.exe devices
# Se não aparecer dispositivos:
# 1. Reconecte o cabo USB
# 2. Revoke autorização USB e autorize novamente
# 3. Instale drivers USB do fabricante错误 : “ 权限被拒绝 ”
- 有些命令需要 root
- 检查应用程序是否具有必要的权限
- 有些命令只能在开发者模式下工作
正在测试服务器
# No diretório do projeto
uv run python main.py
# Se aparecer mensagem sem erro, o servidor está funcionando
# Pressione Ctrl+C para parar🚀 有用的 uv 命令
# Instalar/atualizar dependências
uv sync
# Executar o servidor
uv run python main.py
# Adicionar nova dependência
uv add nome-da-biblioteca
# Atualizar todas as dependências
uv sync --upgrade
# Verificar dependências
uv tree🔐 安全
- ⚠️ 此服务器以用户特权运行 ADB 命令
- ✅ 仅与您自己的设备一起使用
- ⚠️ 运行未知的 shell 命令时要小心
- ✅ 保持 ADB 最新
- ✅ 按 ID 隔离设备(如果连接了多个设备)
📈 未来改进
- \[ \] 同时支持多个设备
- \[ \] 用于监控的 Web 界面
- \[ \] 常用命令缓存
- \[ \] 详细的操作日志
- \[ \] 自定义命令支持
- \[ \] 集成scrcpy视觉控制
🤝 贡献
- 分叉工程
- 创建分支 :
git checkout -b minha-feature - 承诺:
git commit -m 'Nova feature' - 推:
git push origin minha-feature - 打开 Pull Request
📄 许可证
MIT许可证-使用livremente!
📞 支持
常见问题 :
- ✅ 请检查 uv 是否已安装 :
uv --version - ✅ 确认代码中的 ADB 路径
- ✅ 在使用 MCP 之前手动测试 ADB
- ✅ 检查 Claude 桌面日志是否有错误
- ✅ 确保设备允许USB调试
高级调试 :
# Testar ADB manualmente
"C:\Users\Cristiano\Programação\ADB\adb.exe" devices
# Testar comando específico
"C:\Users\Cristiano\Programação\ADB\adb.exe" shell "getprop ro.build.version.release"
# Verificar se o Python encontra o MCP
uv run python -c "import mcp; print('MCP OK')"