mcp-server-adb

mcp-server-adb

2

mcp-server-adb is a TypeScript-based server enabling AI interactions with Android devices via ADB commands. It provides tools for device discovery, control, and app management, with future plans for enhanced app operations.

mcp-server-adb

A Model Context Protocol server for Android Debug Bridge (ADB) control

This is a TypeScript-based MCP server that implements an ADB control system. It allows AI assistants to interact with Android devices through ADB commands, providing:

  • Resources for device discovery and information
  • Tools for device control and app management
  • Prompts for device analysis and diagnostics

Features

Resources

  • List connected devices via device://list
  • Access device information via device://{serial}/info
  • View installed packages via device://{serial}/packages
  • Capture screenshots via device://{serial}/screenshot

Tools

Device Control

  • connect_device - Connect to a specified device
  • disconnect_device - Disconnect from a device

Device Operations

  • tap - Tap on the screen
  • swipe - Swipe on the screen
  • input_text - Input text
  • press_key - Press a key
  • take_screenshot - Take a screenshot

Application Management (Coming Soon)

  • install_app - Install APK
  • uninstall_app - Uninstall application
  • start_app - Launch application
  • stop_app - Stop application

Prompts

  • analyze_device - Analyze device status and specifications
  • analyze_app_list - Analyze installed applications
  • analyze_screen - Analyze current screen content

Prerequisites

  • Node.js 16 or higher
  • Android Debug Bridge (ADB) installed and available in PATH
  • Android device with USB debugging enabled or network ADB enabled

Development

Install dependencies:

npm install

Build the server:

npm run build

For development with auto-rebuild:

npm run watch

Installation

To use with Claude Desktop, add the server config:

On MacOS: ~/Library/Application Support/Claude/claude_desktop_config.json On Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "mcp-server-adb": {
      "command": "/path/to/mcp-server-adb/build/index.js"
    }
  }
}

Debugging

Since MCP servers communicate over stdio, debugging can be challenging. We recommend using the MCP Inspector, which is available as a package script:

npm run inspector

The Inspector will provide a URL to access debugging tools in your browser.

Device Setup

  1. Enable USB debugging on your Android device:

    • Go to Settings > About phone
    • Tap "Build number" 7 times to enable Developer options
    • Go to Settings > Developer options
    • Enable "USB debugging"
  2. For network debugging:

    • Connect device via USB first
    • Enable "Wireless debugging" in Developer options
    • Use connect_device tool with the device's IP address

License

MIT