ADB (Android Debug Bridge)

ADB (Android Debug Bridge)

srmorete

Bridge AI and Android devices using Android Debug Bridge for Windows. Manage devices, run shell commands, and install ap

Bridges AI with Android devices through ADB, enabling device management, shell commands, app installation, file transfers, and UI inspection without requiring direct ADB knowledge.

36998 views9Local (stdio)

About ADB (Android Debug Bridge)

ADB (Android Debug Bridge) is a community-built MCP server published by srmorete that provides AI assistants with tools and capabilities via the Model Context Protocol. Bridge AI and Android devices using Android Debug Bridge for Windows. Manage devices, run shell commands, and install ap It is categorized under developer tools. This server exposes 8 tools that AI clients can invoke during conversations and coding sessions.

How to install

You can install ADB (Android Debug Bridge) in your AI client of choice. Use the install panel on this page to get one-click setup for Cursor, Claude Desktop, VS Code, and other MCP-compatible clients. This server runs locally on your machine via the stdio transport.

License

ADB (Android Debug Bridge) is released under the MIT license. This is a permissive open-source license, meaning you can freely use, modify, and distribute the software.

Tools (8)

adb_devices
inspect_ui
adb_shell
adb_install
adb_logcat

ADB MCP Server

smithery badge

An MCP (Model Context Protocol) server for interacting with Android devices through ADB. This TypeScript-based tool provides a bridge between AI models and Android device functionality.

Features

  • πŸ“± Device Management - List and interact with connected Android devices
  • πŸ“¦ App Installation - Deploy APK files to connected devices
  • πŸ“‹ Logging - Access device logs through logcat
  • πŸ”„ File Transfer - Push and pull files between device and host
  • πŸ“Έ UI Interaction - Capture screenshots and analyze UI hierarchy
  • πŸ”§ Shell Command Execution - Run custom commands on the device

Prerequisites

  • Node.js (v16 or higher recommended, tested with Node.js v16, v18, and v20)
  • ADB (Android Debug Bridge) installed and in your PATH
  • An Android device or emulator connected via USB or network with USB debugging enabled
  • Permission to access the device (accepted debugging authorization on device)

Installation

Installing via Smithery

To install ADB Android Device Server for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @srmorete/adb-mcp --client claude

Manual Installation

# Clone the repository
git clone https://github.com/srmorete/adb-mcp.git
cd adb-mcp

# Install dependencies
npm install

# Build the TypeScript code
npm run build

# Run the server
npx adb-mcp

Configuration

ADB Path Configuration

The server uses default ADB paths. For custom ADB location:

export ADB_PATH=/path/to/adb
npx adb-mcp

MCP Configuration

Add the ADB MCP server configuration:

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

Usage

Starting the Server

IMPORTANT: The server must be running before using any ADB tools.

Start the server using:

npx adb-mcp

You should see:

[INFO] ADB MCP Server connected and ready

Keep this terminal window open while using the ADB tools.

Available Tools

All tools are available with the following naming convention:

πŸ“± Device Management

  • adb_devices - List connected devices
  • adb_shell - Execute shell commands on a device

πŸ“¦ App Management

  • adb_install - Install an APK file using a local file path
  • adb_package_manager - Execute Package Manager (pm) commands - list packages, grant/revoke permissions, manage apps
  • adb_activity_manager - Execute Activity Manager (am) commands - start activities, broadcast intents, control app behavior

πŸ“‹ Logging

  • adb_logcat - View device logs with optional filtering

πŸ”„ File Transfer

  • adb_pull - Pull files from a device
  • adb_push - Push files to a device

πŸ” UI Interaction

  • dump_image - Take a screenshot of the current screen
  • inspect_ui - Get UI hierarchy in XML format (most useful for AI interaction)

Troubleshooting

If tools aren't working:

  • Server Issues:

    • Ensure the server is running (npx adb-mcp)
    • Check server output for error messages
    • Try detailed logs: LOG_LEVEL=3 npx adb-mcp
    • Kill hanging processes:
      • ps aux | grep "adb-mcp" | grep -v grep
      • then kill -9 [PID]
  • Device Connection:

    • Verify connection with adb_devices
    • If "unauthorized", accept debugging authorization on device
    • Check USB/network connections
    • Try restarting ADB: adb kill-server && adb start-server
  • ADB Issues:

    • Verify ADB installation: adb version
  • Device Setup:

    • Use an emulator (it was built using one), for real devices maybe try this:
      • Ensure USB debugging is enabled
      • For newer Android versions, enable "USB debugging (Security settings)"
      • Try different USB port or cable
      • or let me know in an issue

Compatibility

  • Android 8.0 and higher
  • MCP clients including Claude in Cursor IDE
  • Was built on macOS but should run on any POSIX compatible (Linux etc).
  • Did not try on Windows but maybe it works.

Contributing

  • Contributions are welcome! Submit a Pull Request.
  • For major changes, open an issue to discuss first.
  • You can, of course, also fork it
  • Note: this project was vibe-coded so if you spot some weird stuff... well now you know πŸ™‚

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

Alternatives

Related Skills

Browse all skills
launch-on-device

Build, install, and launch the Zhihu++ Android app on a connected device using ADB. Includes comprehensive troubleshooting for common issues like missing devices, installation failures, signature mismatches, and app crashes. Use when deploying debug builds to physical devices or emulators.

1
godot

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

732
reverse-engineering-tools

Guide for reverse engineering tools and techniques used in game security research. Use this skill when working with debuggers, disassemblers, memory analysis tools, binary analysis, or decompilers for game security research.

47
python-expert

Senior Python developer expertise for writing clean, efficient, and well-documented code. Use when: writing Python code, optimizing Python scripts, reviewing Python code for best practices, debugging Python issues, implementing type hints, or when user mentions Python, PEP 8, or needs help with Python data structures and algorithms.

40
chrome-devtools

Browser automation, debugging, and performance analysis using Puppeteer CLI scripts. Use for automating browsers, taking screenshots, analyzing performance, monitoring network traffic, web scraping, form automation, and JavaScript debugging.

30
penpot-uiux-design

Comprehensive guide for creating professional UI/UX designs in Penpot using MCP tools. Use this skill when: (1) Creating new UI/UX designs for web, mobile, or desktop applications, (2) Building design systems with components and tokens, (3) Designing dashboards, forms, navigation, or landing pages, (4) Applying accessibility standards and best practices, (5) Following platform guidelines (iOS, Android, Material Design), (6) Reviewing or improving existing Penpot designs for usability. Triggers: "design a UI", "create interface", "build layout", "design dashboard", "create form", "design landing page", "make it accessible", "design system", "component library".

19