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.
Requires Node.js runtime environment (version 16.x or higher) to operate the MCP server for Android device interaction.
Provides tools for executing shell commands on connected Android devices, offering access to the underlying Android operating system for automation tasks.
Android ADB MCP Server
A Model Context Protocol (MCP) server that enables AI assistants to interact with Android devices through the Android Debug Bridge (ADB). This server bridges the gap between AI capabilities and Android device management, allowing for seamless automation of Android development and testing operations.
⚙️ Quick Setup
Add the server to your MCP configuration file:
Configuration Locations
Claude Desktop:
~/Library/Application Support/Claude/claude_desktop_config.json
(macOS)Cline/Roo Code:
~/Library/Application Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json
(macOS)For Windows/Linux, check the equivalent application support directories
After configuring, restart your AI assistant to load the new server configuration.
📋 Prerequisites
ADB (Android Debug Bridge) must be installed and available in your system PATH
Verify installation by running
adb version
in your terminal
For clipboard functionality:
macOS:
osascript
(built-in)Windows: PowerShell (built-in)
Linux:
xclip
(install viaapt-get install xclip
or equivalent)
Node.js 16.x or higher
🚀 Features
Connect to and manage multiple Android devices
Execute shell commands on Android devices
Install and uninstall applications
Push and pull files between local system and Android devices
Launch applications on Android devices
Take screenshots and save them locally or copy to clipboard
Smart device selection when multiple devices are connected
🛠️ Available Tools
Tool | Description | Required Parameters | Optional Parameters |
| List connected devices | None | None |
| Execute shell commands |
|
|
| Install APK files |
|
|
| Uninstall applications |
|
|
| List installed packages | None |
,
|
| Pull files from device |
,
|
|
| Push files to device |
,
|
|
| Launch an application |
|
|
| Take and save screenshot |
|
,
|
| Take screenshot to clipboard | None |
,
|
Device Management
The server intelligently handles device selection:
If only one device is connected, it will be used automatically
If multiple devices are connected, you must specify a
device_id
parameterIf no devices are connected, an error will be returned
Screenshot Path Resolution
When specifying the output_path
for saving screenshots, the path is resolved as follows:
Absolute paths are used as-is
Paths starting with
~
are expanded to the user's home directoryRelative paths are resolved relative to the user's home directory
This ensures that screenshots are saved to a location where the MCP server has write permissions.
🔍 Troubleshooting
Common Issues
"ADB is not available" error
Ensure ADB is installed and in your system PATH
Verify by running
adb version
in your terminal
"No Android devices connected" error
Check if your device is properly connected with
adb devices
Ensure USB debugging is enabled on your device
Try restarting ADB with
adb kill-server
followed byadb start-server
"Multiple devices connected" error
Specify the
device_id
parameter in your tool callGet the list of available devices with the
adb_devices
tool
Screenshot to clipboard not working
Ensure the required platform-specific tools are installed
🔧 Alternative Installation Methods
Option 1: Install from npm
Option 2: Manual Installation from Source
Clone the repository:
git clone https://github.com/landicefu/android-adb-mcp-server.git cd android-adb-mcp-serverInstall dependencies and build:
npm install npm run buildConfigure with direct path:
{ "mcpServers": { "android-adb": { "command": "node", "args": ["/path/to/android-adb-mcp-server/build/index.js"], "env": {}, "disabled": false, "alwaysAllow": [] } } }
📄 License
This project is licensed under the ISC License - see the LICENSE file for details.
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
Fork the repository
Create your feature branch (
git checkout -b feature/amazing-feature
)Commit your changes (
git commit -m 'Add some amazing feature'
)Push to the branch (
git push origin feature/amazing-feature
)Open a Pull Request
This server cannot be installed
local-only server
The server can only run on the client's local machine because it depends on local resources.
A Model Context Protocol server that enables AI assistants to interact with Android devices through ADB, allowing for automated device management, app installation, file transfers, and screenshot capture.
Related MCP Servers
- AsecurityAlicenseAqualityA Model Context Protocol (MCP) server that enables AI assistants to control and interact with Android devices, allowing for device management, app debugging, system analysis, and UI automation through natural language commands.Last updated -8240Apache 2.0
- -securityFlicense-qualityA comprehensive Model Context Protocol server implementation that enables AI assistants to interact with file systems, databases, GitHub repositories, web resources, and system tools while maintaining security and control.Last updated -331
- -securityAlicense-qualityA Model Context Protocol server that enables AI agents to control and automate Android devices through natural language, supporting actions like app management, UI interactions, and device monitoring.Last updated -27MIT License
- -securityAlicense-qualityA Model Context Protocol server that enables AI assistants to control Android TV devices, providing remote control functionality like navigation, playback control, app management, and device status monitoring.Last updated -5MIT License