scrcpy-mcp — Claude Code MCP server for Android control
Connects an AI agent to an Android device through ADB and scrcpy, so it can inspect the screen and perform actions. Handy for checking an app directly on a device.
claude mcp add --env ANDROID_SERIAL=<ANDROID_SERIAL> --env ADB_PATH=<ADB_PATH> --env SCRCPY_SERVER_PATH=<SCRCPY_SERVER_PATH> --transport stdio scrcpy-mcp -- npx -y scrcpy-mcpWhat scrcpy-mcp does
The server lets an agent view the device screen, tap and swipe, enter text, launch apps, locate UI elements, move files, and run shell commands. Screenshots arrive as images, and element lookup can provide coordinates for a tap. Tools also cover clipboard access, video, and audio.
You need Node.js 24+, ADB, and an Android device with USB debugging enabled. scrcpy speeds up interaction, while basic controls can fall back to ADB at a slower pace. Video and audio streaming require scrcpy. Audio capture is opt-in and needs Android 11 or later; without USB debugging, the device cannot connect.
For Claude Code, register the server with claude mcp add scrcpy-mcp -- npx -y scrcpy-mcp. An alternate install command accepts environment variables for selecting a device and setting custom ADB or scrcpy paths.
What it helps with
- inspect an Android device screen from an agent
- tap a UI element using its screen coordinates
- launch an app and enter text
- move files between a device and a computer
- stream or record audio from a device
Example prompts for the agent
- Inspect the connected Android screen and describe what is open.
- Open the app and tap its sign-in button.
- Find the search field on screen and enter the app name.
How to install scrcpy-mcp
Platform CLI
claude mcp add --env ANDROID_SERIAL=<ANDROID_SERIAL> --env ADB_PATH=<ADB_PATH> --env SCRCPY_SERVER_PATH=<SCRCPY_SERVER_PATH> --transport stdio scrcpy-mcp -- npx -y scrcpy-mcpReplace <…> with your own values
Platform CLI
codex mcp add scrcpy-mcp --env ANDROID_SERIAL=<ANDROID_SERIAL> --env ADB_PATH=<ADB_PATH> --env SCRCPY_SERVER_PATH=<SCRCPY_SERVER_PATH> -- npx -y scrcpy-mcpReplace <…> with your own values
Config file
{
"mcpServers": {
"scrcpy-mcp": {
"command": "npx",
"args": [
"-y",
"scrcpy-mcp"
],
"env": {
"ANDROID_SERIAL": "<ANDROID_SERIAL>",
"ADB_PATH": "<ADB_PATH>",
"SCRCPY_SERVER_PATH": "<SCRCPY_SERVER_PATH>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"scrcpy-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"scrcpy-mcp"
],
"env": {
"ANDROID_SERIAL": "<ANDROID_SERIAL>",
"ADB_PATH": "<ADB_PATH>",
"SCRCPY_SERVER_PATH": "<SCRCPY_SERVER_PATH>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e ANDROID_SERIAL=<ANDROID_SERIAL> -e ADB_PATH=<ADB_PATH> -e SCRCPY_SERVER_PATH=<SCRCPY_SERVER_PATH> scrcpy-mcp npx -y scrcpy-mcpReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about scrcpy-mcp
How do I install scrcpy-mcp in Claude Code?
Run claude mcp add scrcpy-mcp -- npx -y scrcpy-mcp. You also need Node.js 24+, ADB, and an Android device with USB debugging enabled.
What does scrcpy-mcp do?
It connects an AI agent to an Android device using ADB and scrcpy. The agent can view the screen, interact with controls, open apps, and handle files.
Does scrcpy-mcp require scrcpy?
Basic interaction can use ADB without scrcpy, but it runs more slowly. Video and audio streaming need scrcpy, and audio capture requires Android 11 or later.