android-adb-mcp-server
Documentation
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:
{
"mcpServers": {
"android-adb": {
"command": "npx",
"args": ["-y", "@landicefu/android-adb-mcp-server"],
"env": {},
"disabled": false,
"alwaysAllow": []
}
}
}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
- Install ADB on Windows, macOS, or Linux
- Verify installation by running `adb version` in your terminal
- For clipboard functionality:
- macOS: `osascript` (built-in)
- Windows: PowerShell (built-in)
- Linux: `xclip` (install via `apt-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 |
|---|---|---|---|
| `adb_devices` | List connected devices | None | None |
| `adb_shell` | Execute shell commands | `command` | `device_id` |
| `adb_install` | Install APK files | `path` | `device_id` |
| `adb_uninstall` | Uninstall applications | `package_name` | `device_id` |
| `adb_list_packages` | List installed packages | None | `device_id`, `filter` |
| `adb_pull` | Pull files from device | `remote_path`, `local_path` | `device_id` |
| `adb_push` | Push files to device | `local_path`, `remote_path` | `device_id` |
| `launch_app` | Launch an application | `package_name` | `device_id` |
| `take_screenshot_and_save` | Take and save screenshot | `output_path` | `device_id`, `format` |
| `take_screenshot_and_copy_to_clipboard` | Take screenshot to clipboard | None | `device_id`, `format` |
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` parameter
- If 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 directory
- Relative 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
1. "ADB is not available" error
2. "No Android devices connected" error
3. "Multiple devices connected" error
4. Screenshot to clipboard not working
🔧 Alternative Installation Methods
Option 1: Install from npm
# Install globally
npm install -g @landicefu/android-adb-mcp-server
# Or install locally in your project
npm install @landicefu/android-adb-mcp-serverOption 2: Manual Installation from Source
1. Clone the repository:
git clone https://github.com/landicefu/android-adb-mcp-server.git
cd android-adb-mcp-server2. Install dependencies and build:
npm install
npm run build3. Configure 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.
1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add some amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
Frequently asked questions
What is android-adb-mcp-server?
android-adb-mcp-server is a Model Context Protocol (MCP) server listed in the TrackMCP directory.
How do I install android-adb-mcp-server?
Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.
Is android-adb-mcp-server open source?
Yes — it is hosted on GitHub at https://github.com/landicefu/android-adb-mcp-server and has 28 stars.
Related MCP tools
An MCP server that installs other MCP servers for you JavaScript-based implementation. Trusted by 1400+ developers. Trusted by 1400+ developers.
MCP server for interacting with the iOS simulator JavaScript-based implementation. Trusted by 1200+ developers. Trusted by 1200+ developers.
A Model Context Protocol server that provides read-only access to MySQL databases. This server enables LLMs to inspect database schemas and execute read-only...
This is an MCP server that allows you to directly download transcripts of YouTube videos. JavaScript-based implementation.
The all-in-one Desktop & Docker AI application with built-in RAG, AI agents, No-code agent builder, MCP compatibility, and more.
An AI-powered task-management system you can drop into Cursor, Lovable, Windsurf, Roo, and others. Built for the Model Context Protocol to enhance AI capabiliti
Run your own MCP server? See who uses it and what to fix.
Measure it with TrackMCP