An MCP Server for Android running on the phone, optmized for token usage, supports also files downloads and cloudflare and ngrok automated tunnelling.
# Add to your Claude Code skills
git clone https://github.com/danielealbano/android-remote-control-mcpGuides for using mcp servers skills like android-remote-control-mcp.
Last scanned: 7/4/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-07-04T06:48:04.136Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}android-remote-control-mcp is an open-source mcp servers skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by danielealbano. An MCP Server for Android running on the phone, optmized for token usage, supports also files downloads and cloudflare and ngrok automated tunnelling. It has 100 GitHub stars.
Yes. android-remote-control-mcp passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/danielealbano/android-remote-control-mcp" and add it to your Claude Code skills directory (see the Installation section above).
android-remote-control-mcp is primarily written in Kotlin. It is open-source under danielealbano on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other MCP Servers skills you can browse and compare side by side. Open the MCP Servers category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh android-remote-control-mcp against similar tools.
No comments yet. Be the first to share your thoughts!
Top skills in this category by stars
An Android application that runs as an MCP (Model Context Protocol) server, enabling AI models to fully control an Android device remotely using accessibility services and screenshot capture.
The app runs directly on your Android device (or emulator) and exposes an HTTP server (with optional HTTPS) implementing the MCP protocol. AI models like Claude can connect to it and interact with any app on the device — reading UI elements, tapping buttons, typing text, swiping, capturing screenshots, managing files, launching apps, and more.
Warning: This software is provided "as-is" without warranty of any kind, for research and educational purposes only. The authors do not condone the use of this tool for any illegal, unauthorized, or unethical activities. Users are solely responsible for ensuring their use complies with all applicable laws and regulations. By using this software, you agree to use it responsibly and at your own risk.
/mcp (MCP specification compliant, JSON-only, no SSE)Screen introspection, system actions, touch actions, gestures, node actions, text input, utilities, file operations, app management, camera, intents, notifications, and location.
All tool names use the android_ prefix by default (e.g., android_tap). When a device slug is configured (e.g., pixel7), the prefix becomes android_pixel7_ (e.g., android_pixel7_tap).
See docs/MCP_TOOLS.md for the full tool reference with input/output schemas and examples.
| Feature | This project | mobile-mcp | Android-MCP | android-mcp-server | adb-mcp | droidrun-mcp |
|---|---|---|---|---|---|---|
| MCP tools | 56 | 21 | 11 | 5 | 10 | 11 |
| Runs on the phone (no ADB) | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| Action latency | 10-100 ms | 1-4 s | 1-4 s | 1-4 s | 1-4 s | 1-4 s |
| Works over the internet | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| Token-efficient screen state | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: | :white_check_mark: |
| Annotated screenshots | :white_check_mark: | :x: | :white_check_mark: | :x: | :x: | :x: |
| Configurable screenshot resolution/quality | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| Per-tool enable/disable | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| Multi-device support | :white_check_mark: | :white_check_mark: | :x: | :x: | :x: | :x: |
| Camera, clipboard, files, downloads | :white_check_mark: | :x: | :x: | :x: | :x: | :x: |
| iOS support | :x: | :white_check_mark: | :x: | :x: | :x: | :x: |
Most alternatives rely on ADB running on a host machine, which means a USB cable or local network connection and a computer sitting next to the phone. This project runs entirely on the device itself, so you can expose the MCP endpoint through a tunnel and control your phone from anywhere.
On the token efficiency side, ADB-based tools typically return raw uiautomator XML dumps which can easily be 10-50x more verbose than the compact representation used here. Combined with numbered screenshot annotations, configurable image quality, and the ability to disable tools you don't need (every tool definition costs tokens on every turn), this significantly reduces the per-interaction cost in agentic loops.
adb install app-release.apk
git clone https://github.com/danielealbano/android-remote-control-mcp.git
cd android-remote-control-mcp
make build
make install # installs on connected device/emulator
See CONTRIBUTING.md for full build requirements and instructions.
The server starts on http://127.0.0.1:8080 by default. The connection info (IP, port, token, URL) is displayed on the Server tab.
Note:
127.0.0.1refers to the phone's localhost, not your computer. To connect from your computer, use adb port forwarding, bind to0.0.0.0(network mode), or enable a remote access tunnel.
The app declares the permissions below. Normal permissions are granted automatically at install. Runtime permissions and Special access require explicit user action (via the app's Settings > Permissions tab, or programmatically — see Granting Permissions Programmatically). All runtime permissions are optional: the app works without them, but the features that depend on them are disabled until granted.
| Permission | Type | Used for |
|---|---|---|
INTERNET |
Normal | HTTP/HTTPS server and remote access tunnels |
ACCESS_NETWORK_STATE |
Normal | Detect network connectivity |
FOREGROUND_SERVICE |
Normal | Run the MCP server as a foreground service |
FOREGROUND_SERVICE_SPECIAL_USE |
Normal | Foreground service type for the MCP server |
FOREGROUND_SERVICE_LOCATION |
Normal | Foreground service type for the Event Channel (geofence/WiFi) |
RECEIVE_BOOT_COMPLETED |
Normal | Auto-start the server on device boot |
QUERY_ALL_PACKAGES |
Normal | Enumerate installed apps for app-management tools |
KILL_BACKGROUND_PROCESSES |
Normal | Stop background apps via app-management tools |
ACCESS_WIFI_STATE |
Normal | Read WiFi state for the Event Channel |
CHANGE_WIFI_STATE |
Normal | Manage WiFi for the Event Channel |
POST_NOTIFICATIONS |
Runtime | Show the foreground service notification (Android 13+) |
CAMERA |
Runtime | Camera photo/video MCP tools |
RECORD_AUDIO |
Runtime | Audio capture for camera video tools |
ACCESS_FINE_LOCATION |
Runtime | Location tools and geofence events |
ACCESS_COARSE_LOCATION |
Runtime | Approximate location |
ACCESS_BACKGROUND_LOCATION |
Runtime | Location/geofence events while the app is in the background |
NEARBY_WIFI_DEVICES |
Runtime | WiFi scanning for the Event Channel (Android 13+) |
READ_MEDIA_IMAGES |
Runtime | "All files" mode for built-in image storage locations (Android 13+) |
READ_MEDIA_VIDEO |
Runtime | "All files" mode for built-in video storage locations (Android 13+) |
READ_MEDIA_AUDIO |
Runtime | "All files" mode for built-in audio storage locations (Android 13+) |
| Accessibility Service | Special access | UI introspection, action execution, and screenshots — required for core functionality |
| Notification Listener | Special access | Reading and managing notifications via notification tools |
Add the server to your .mcp.json configuration file:
{
"mcpServers": {
"android-phone": {
"type": "http",
"url": "http://DEVICE_IP:PORT/mcp",
"headers": {
"Authorization": "Bearer YOUR_TOKEN"
}
}
}
}
Replace DEVICE_IP, PORT, and YOUR_TOKEN with the values shown in the app's Server tab. If the server is bound to localhost (default), you'll need adb port forwarding or a [remote access tu