Control Android devices via ADB with natural-language commands — capture screenshots, simulate touches and swipes for fa
Add new capabilities to Claude beyond text generation
Example: Access external data sources, execute code, interact with tools and services
Transform Claude from chatbot to action-taking agent
Provide Claude with access to relevant context and data
Example: Load project documentation, access knowledge bases, query databases
Get more accurate, context-aware responses
Automate multi-step workflows combining AI and external tools
Example: Research → Summarize → Create document → Send notification
Complete complex tasks end-to-end without manual steps
Time estimate: 15-60 minutes depending on server complexity
Prerequisites
Notion
MCP server for Notion — enables Claude to interact with Notion data and workflows.
Claude Context
Claude Context offers semantic code search and indexing with vector embeddings and AST-based code splitting. Natural lan
Open AI Docs
Search and read OpenAI developer docs from your editor using MCP. OpenAI hosts a public Model Context Protocol (MCP) ser
Screenshot Capture
Capture screenshots across macOS, Windows, and Linux using advanced screen capture and recording software for analysis,
mcpSovereign SDK
mcpSovereign SDK — a two-sided AI dataset marketplace, AI prompt marketplace and AI tools marketplace where agents buy/s
We wired Android MCP Server into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
Strong directory entry: Android MCP Server surfaces stars and publisher context so we could sanity-check maintenance before adopting.
Strong directory entry: Android MCP Server surfaces stars and publisher context so we could sanity-check maintenance before adopting.
We wired Android MCP Server into a staging workspace; the listing’s GitHub and npm pointers saved time versus hunting across READMEs.
Android MCP Server has been reliable for tool-calling workflows; the MCP profile page is a good permalink for internal docs.
According to our notes, Android MCP Server benefits from clear Model Context Protocol framing — fewer ambiguous “AI plugin” claims.
I recommend Android MCP Server for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
Android MCP Server is a well-scoped MCP server in the explainx.ai directory — install snippets and categories matched our Claude Code setup.
I recommend Android MCP Server for teams standardizing on MCP; the explainx.ai page compares cleanly with sibling servers.
Android MCP Server is among the better-indexed MCP projects we tried; the explainx.ai summary tracks the official description.
showing 1-10 of 72
Share your MCP server with the developer community
Select a client to integrate this server.
Claude Desktop configuration
{
"mcpServers": {
"android-mcp-server": {
"command": "npx",
"args": [
"-y",
"android-mcp-server"
],
"env": {
"ADB_PATH": "",
"DEVICE_SERIAL": ""
}
}
}
}Controls Android devices through ADB to capture screenshots, simulate touch interactions, and stream video. Provides 22 tools for comprehensive Android UI automation via natural language commands.
Android MCP Server is a community-built MCP server published by jduartedj that provides AI assistants with tools and capabilities via the Model Context Protocol. Control Android devices via ADB with natural-language commands — capture screenshots, simulate touches and swipes for fa It is categorized under developer tools.
You can install Android MCP Server 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.
A Model Context Protocol (MCP) server providing comprehensive Android device control with 22 powerful tools for UI automation, screen capture, and ultra-fast H.264 streaming via Scrcpy.
Note: ADB (Android Debug Bridge) and Scrcpy are optional - the server automatically downloads them from official sources on first use if needed.
Clone and Build
git clone https://github.com/jduartedj/android-mcp-server.git
cd android-mcp-server
npm install
npm run build
Test the Server
node dist/index.js
The server will start and automatically download ADB/Scrcpy if needed.
Add to VS Code (see VS Code Integration below)
npm install
npm run build
node dist/index.js
The server supports the following environment variables:
ADB_PATH: Custom path to ADB executable (default: uses system PATH or auto-downloads)DEVICE_SERIAL: Specific device serial number to target (default: first available device)To use this MCP server with GitHub Copilot in VS Code:
Open VS Code Settings (Ctrl+, or Cmd+,)
Search for MCP or navigate to: GitHub Copilot > Chat > MCP Servers
Edit the MCP configuration by clicking "Edit in settings.json"
Add the Android MCP Server to your configuration:
{
"github.copilot.chat.mcp.servers": {
"android-mcp-server": {
"command": "node",
"args": ["F:\android-mcp-server\dist\index.js"],
"env": {
"ADB_PATH": "",
"DEVICE_SERIAL": ""
}
}
}
}
Note: Replace F:\android-mcp-server\dist\index.js with the actual absolute path to your dist/index.js file. Use double backslashes on Windows.
{
"github.copilot.chat.mcp.servers": {
"android-mcp-server": {
"command": "npx",
"args": ["-y", "android-mcp-server"]
}
}
}
After adding the server:
@workspace and you should see the Android MCP tools availableOnce integrated, you can ask GitHub Copilot:
android_screenshotCapture a screenshot from the Android device.
Parameters:
outputPath (optional): Local path to save the screenshot. If not provided, returns base64 encoded image.deviceSerial (optional): Target specific device by serial numberPerformance: ~1-2 seconds per capture
Example:
{
"name": "android_screenshot",
"arguments": {
"outputPath": "./screenshot.png"
}
}
android_touchSimulate a touch event at specific screen coordinates. Supports both quick taps and long presses.
Parameters:
x (required): X coordinatey (required): Y coordinateduration (optional): Touch duration in milliseconds (default: 100ms for tap, >100ms for long press)deviceSerial (optional): Target specific device by serial numberPerformance: Immediate
Example - Quick Tap:
{
"name": "android_touch",
"arguments": { "x": 500, "y": 1000, "duration": 100 }
}
Example - Long Press:
{
"name": "android_touch",
"arguments": { "x": 500, "y": 1000, "duration": 2000 }
}
android_swipePerform a swipe gesture between two coordinates.
Parameters:
startX (required): Starting X coordinatestartY (required): Starting Y coordinateendX (required): Ending X coordinateendY (required): Ending Y coordinateduration (optional): Swipe duration in milliseconds (default: 300)deviceSerial (optional): Target specific device by serial numberPerformance: Immediate
Example:
{
"name": "android_swipe",
"arguments": {
"startX": 500, "startY": 1500, "endX": 500, "endY": 500, "duration": 300
}
}
android_launch_appLaunch an Android app by package name.
Parameters:
packageName (required): Package name of the app (e.g., com.example.app, com.google.android.apps.maps)deviceSerial (optional): Target specific device by serial numberPerformance: ~1-2 seconds
Example:
{
"name": "android_launch_app",
"arguments": { "packageName": "com.example.app" }
}
android_list_packagesList installed packages on the Android device with optional filtering.
Parameters:
filter (optional): Search filter for package names (case-insensitive)deviceSerial (optional): Target specific device by serial numberPerformance: Medium (retrieves full package list)
Example - List All Packages:
{
"name": "android_list_packages",
"arguments": {}
}
Example - Filter Packages:
{
"name": "android_list_packages",
"arguments": { "filter": "google" }
}
android_input_textInput text into the currently focused field on the Android device via ADB.
Parameters:
text (required): Text to input. Spaces are automatically handled.deviceSerial (optional): Target specific device by serial numberPerformance: Immediate
Use Cases:
Example:
{
"name": "android_input_text",
"arguments": {
"text": "user@example.com"
}
}
android_send_key_eventSend a key event to the Android device (e.g., HOME, BACK, ENTER).
Parameters:
keyCode (required): Key event code. Can be key name (e.g., KEYEVENT_HOME, KEYEVENT_BACK) or numeric code (e.g., 3 for HOME, 4 for BACK)deviceSerial (optional): Target specific device by serial numberPerformance: Immediate
Common Key Codes:
KEYEVENT_HOME or 3 - Home buttonKEYEVENT_BACK or 4 - Back buttonKEYEVENT_ENTER or 66 - Enter/Return keyKEYEVENT_DEL or 67 - Delete keyKEYEVENT_MENU or 82 - Menu buttonKEYEVENT_VOLUME_UP or 24 - Volume upKEYEVENT_VOLUME_DOWN or 25 - Volume downKEYEVENT_POWER or 26 - Power buttonUse Cases:
Example:
{
"name": "android_send_key_event",
"arguments": {
"keyCode": "KEYEVENT_BACK"
}
}
android_execute_commandExecute a generic ADB command with custom arguments. This powerful tool gives agents full flexibility to run any ADB command with their own parameters.
Parameters:
args (required): Array of ADB command arguments (e.g., ["shell", "pm", "list", "packages"])deviceSerial (optional): Target specific device by serial numberPerformance: Varies by command
Returns: Both stdout and stderr from the command execution
Use Cases:
Common Examples:
**
Steps
Troubleshooting
✓ Do
✗ Don't
💡 Pro Tips
Architecture
Model Context Protocol standardizes how AI hosts (Claude, Cursor) communicate with external tools and data sources through server implementations.
Protocols
Compatibility
✓ Use when
Use when you need Claude to access external data, execute actions, or integrate with tools. Best for extending AI capabilities beyond conversation.
✗ Avoid when
Avoid when native integrations exist (use official APIs directly), for real-time critical systems, or when security/compliance requires zero external dependencies.
Createve.AI Nexus
Createve.AI Nexus unifies REST API and MCP, integrating APIs for AI workflow automation with tools like Calendly API and