Android ADB MCP Server

ISC License
11
2
  • Linux
  • Apple

Integrations

  • Enables interaction with Android devices through ADB, allowing management of devices, execution of shell commands, installation/uninstallation of apps, file transfers, app launching, and taking screenshots.

  • Supports Linux systems with equivalent application directories and requires xclip for clipboard functionality when working with Android devices.

  • Supports macOS systems with specific configuration paths and uses built-in osascript for clipboard functionality with Android devices.

Servidor MCP de Android ADB

Un servidor de Protocolo de Contexto de Modelo (MCP) que permite a los asistentes de IA interactuar con dispositivos Android a través del Puente de Depuración de Android (ADB). Este servidor conecta las capacidades de IA con la gestión de dispositivos Android, permitiendo una automatización fluida de las operaciones de desarrollo y pruebas de Android.

⚙️ Configuración rápida

Agregue el servidor a su archivo de configuración MCP:

{ "mcpServers": { "android-adb": { "command": "npx", "args": ["-y", "@landicefu/android-adb-mcp-server"], "env": {}, "disabled": false, "alwaysAllow": [] } } }

Ubicaciones de configuración

  • Escritorio de Claude : ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
  • Código Cline/Roo : ~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json (macOS)
  • Para Windows/Linux, consulte los directorios de soporte de aplicaciones equivalentes

Después de la configuración, reinicie su asistente de IA para cargar la nueva configuración del servidor.

📋 Requisitos previos

  • ADB (Android Debug Bridge) debe estar instalado y disponible en la RUTA de su sistema
  • Para la funcionalidad del portapapeles:
    • macOS : osascript (integrado)
    • Windows : PowerShell (integrado)
    • Linux : xclip (instalación mediante apt-get install xclip o equivalente)
  • Node.js 16.x o superior

🚀 Características

  • Conéctese y administre varios dispositivos Android
  • Ejecutar comandos de shell en dispositivos Android
  • Instalar y desinstalar aplicaciones
  • Enviar y recibir archivos entre el sistema local y los dispositivos Android
  • Iniciar aplicaciones en dispositivos Android
  • Tome capturas de pantalla y guárdelas localmente o cópielas al portapapeles
  • Selección de dispositivo inteligente cuando hay varios dispositivos conectados

🛠️ Herramientas disponibles

HerramientaDescripciónParámetros requeridosParámetros opcionales
adb_devicesLista de dispositivos conectadosNingunoNinguno
adb_shellEjecutar comandos de shellcommanddevice_id
adb_installInstalar archivos APKpathdevice_id
adb_uninstallDesinstalar aplicacionespackage_namedevice_id
adb_list_packagesLista de paquetes instaladosNingunodevice_id , filter
adb_pullExtraer archivos del dispositivoremote_path , local_pathdevice_id
adb_pushEnviar archivos al dispositivolocal_path , remote_pathdevice_id
launch_appIniciar una aplicaciónpackage_namedevice_id
take_screenshot_and_saveTomar y guardar captura de pantallaoutput_pathdevice_id , format
take_screenshot_and_copy_to_clipboardTomar captura de pantalla al portapapelesNingunodevice_id , format

Administración de dispositivos

El servidor gestiona de forma inteligente la selección de dispositivos:

  • Si solo hay un dispositivo conectado, se utilizará automáticamente
  • Si hay varios dispositivos conectados, debe especificar un parámetro device_id
  • Si no hay dispositivos conectados, se devolverá un error.

Resolución de ruta de captura de pantalla

Al especificar output_path para guardar capturas de pantalla, la ruta se resuelve de la siguiente manera:

  • Las rutas absolutas se utilizan tal cual
  • Las rutas que comienzan con ~ se expanden al directorio de inicio del usuario
  • Las rutas relativas se resuelven en relación con el directorio de inicio del usuario.

Esto garantiza que las capturas de pantalla se guarden en una ubicación donde el servidor MCP tenga permisos de escritura.

🔍 Solución de problemas

Problemas comunes

  1. Error "ADB no está disponible"
    • Asegúrese de que ADB esté instalado y en la RUTA de su sistema
    • Verifique ejecutando adb version en su terminal
  2. Error "No hay dispositivos Android conectados"
    • Comprueba si tu dispositivo está conectado correctamente con adb devices
    • Asegúrese de que la depuración USB esté habilitada en su dispositivo
    • Intente reiniciar ADB con adb kill-server seguido de adb start-server
  3. Error "Varios dispositivos conectados"
    • Especifique el parámetro device_id en su llamada de herramienta
    • Obtenga la lista de dispositivos disponibles con la herramienta adb_devices
  4. La captura de pantalla al portapapeles no funciona
    • Asegúrese de que estén instaladas las herramientas específicas de la plataforma requeridas

🔧 Métodos de instalación alternativos

Opción 1: Instalar desde npm

# Install globally npm install -g @landicefu/android-adb-mcp-server # Or install locally in your project npm install @landicefu/android-adb-mcp-server

Opción 2: Instalación manual desde la fuente

  1. Clonar el repositorio:
    git clone https://github.com/landicefu/android-adb-mcp-server.git cd android-adb-mcp-server
  2. Instalar dependencias y compilar:
    npm install npm run build
  3. Configurar con ruta directa:
    { "mcpServers": { "android-adb": { "command": "node", "args": ["/path/to/android-adb-mcp-server/build/index.js"], "env": {}, "disabled": false, "alwaysAllow": [] } } }

📄 Licencia

Este proyecto está licenciado bajo la licencia ISC: consulte el archivo de LICENCIA para obtener más detalles.

🤝 Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

  1. Bifurcar el repositorio
  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )
  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )
  4. Empujar a la rama ( git push origin feature/amazing-feature )
  5. Abrir una solicitud de extracción
-
security - not tested
A
license - permissive license
-
quality - not tested

Un servidor de protocolo de contexto de modelo que permite a los asistentes de IA interactuar con dispositivos Android a través de ADB, lo que permite la gestión automatizada de dispositivos, la instalación de aplicaciones, la transferencia de archivos y la captura de capturas de pantalla.

  1. ⚙️ Quick Setup
    1. Configuration Locations
  2. 📋 Prerequisites
    1. 🚀 Features
      1. 🛠️ Available Tools
        1. Device Management
        2. Screenshot Path Resolution
      2. 🔍 Troubleshooting
        1. Common Issues
      3. 🔧 Alternative Installation Methods
        1. Option 1: Install from npm
        2. Option 2: Manual Installation from Source
      4. 📄 License
        1. 🤝 Contributing
          ID: 8i2kpohj9l