juancf avatar

Scrcpy Mcp

juancf/scrcpy-mcp

Connects Claude and other MCP clients to Android devices through ADB and scrcpy's binary protocol. You get 34 tools covering screenshots (returned as images), tap/swipe/type input, app launching, UI element finding with coordinates, shell commands, and clipboard operations that work on Android 10+. The scrcpy path delivers 10-50x faster input and 33ms screenshots versus ADB's 500ms fallback. Useful when you want an AI to actually see and interact with an Android device during testing, automation, or debugging. Start a session to unlock the fast path, then chain screenshot and input operations. Falls back gracefully to ADB-only mode if scrcpy isn't installed.

GitHub stars
130
tools
44
transport
STDIO
env vars
3
last updated
Aug 21, 2026

Tools

44 tools

Public tool metadata for what this MCP can expose to an agent.

start_sessionStart a scrcpy session. When active, input and screenshots use the fast path (10-50x faster).

Start a scrcpy session. When active, input and screenshots use the fast path (10-50x faster).

No parameter schema in public metadata yet.

stop_sessionStop the scrcpy session. Tools fall back to ADB.

Stop the scrcpy session. Tools fall back to ADB.

No parameter schema in public metadata yet.

versionReport which scrcpy-server version the session pushes and where that version was resolved from.

Report which scrcpy-server version the session pushes and where that version was resolved from.

No parameter schema in public metadata yet.

start_video_streamStart an HTTP MJPEG video stream and open a viewer window (ffplay). Auto-starts a scrcpy session if needed.

Start an HTTP MJPEG video stream and open a viewer window (ffplay). Auto-starts a scrcpy session if needed.

No parameter schema in public metadata yet.

stop_video_streamStop the video stream and close the viewer window.

Stop the video stream and close the viewer window.

No parameter schema in public metadata yet.

start_audio_streamStream device audio to the host's speakers via ffplay. Restarts the scrcpy session if it was started without audio.

Stream device audio to the host's speakers via ffplay. Restarts the scrcpy session if it was started without audio.

No parameter schema in public metadata yet.

stop_audio_streamStop streaming audio to the host.

Stop streaming audio to the host.

No parameter schema in public metadata yet.

audio_record_startStart recording device audio to .wav (default) or .opus on the host. Restarts the scrcpy session if needed. Stops automatically after maxDuration seconds (default 300).

Start recording device audio to .wav (default) or .opus on the host. Restarts the scrcpy session if needed. Stops automatically after maxDuration seconds (default 300).

No parameter schema in public metadata yet.

audio_record_stopStop the recording and finalise the host-side file.

Stop the recording and finalise the host-side file.

No parameter schema in public metadata yet.

audio_captureCapture a bounded clip of device audio and return it as an audio content block. Restarts the scrcpy session if needed.

Capture a bounded clip of device audio and return it as an audio content block. Restarts the scrcpy session if needed.

No parameter schema in public metadata yet.

device_listList all connected devices with serial, state, and model

List all connected devices with serial, state, and model

No parameter schema in public metadata yet.

device_infoGet model, Android version, screen size, SDK level, battery

Get model, Android version, screen size, SDK level, battery

No parameter schema in public metadata yet.

screen_onWake the device screen

Wake the device screen

No parameter schema in public metadata yet.

screen_offTurn the screen off

Turn the screen off

No parameter schema in public metadata yet.

rotate_deviceRotate the screen (requires active session)

Rotate the screen (requires active session)

No parameter schema in public metadata yet.

expand_notificationsPull down the notification panel (requires active session)

Pull down the notification panel (requires active session)

No parameter schema in public metadata yet.

expand_settingsPull down the quick settings panel (requires active session)

Pull down the quick settings panel (requires active session)

No parameter schema in public metadata yet.

collapse_panelsCollapse notification/settings panels (requires active session)

Collapse notification/settings panels (requires active session)

No parameter schema in public metadata yet.

connect_wifiEnable WiFi ADB and connect to the device wirelessly. Returns the connection address.

Enable WiFi ADB and connect to the device wirelessly. Returns the connection address.

No parameter schema in public metadata yet.

disconnect_wifiDisconnect from a wireless ADB device

Disconnect from a wireless ADB device

No parameter schema in public metadata yet.

screenshotCapture the screen and return it as an image.

Capture the screen and return it as an image.

No parameter schema in public metadata yet.

screen_record_startStart recording the screen to a file on the device

Start recording the screen to a file on the device

No parameter schema in public metadata yet.

screen_record_stopStop recording and optionally pull the file to the host

Stop recording and optionally pull the file to the host

No parameter schema in public metadata yet.

tapTap at screen coordinates

Tap at screen coordinates

No parameter schema in public metadata yet.

swipeSwipe from one point to another

Swipe from one point to another

No parameter schema in public metadata yet.

long_pressLong press at coordinates

Long press at coordinates

No parameter schema in public metadata yet.

drag_dropDrag from one point to another

Drag from one point to another

No parameter schema in public metadata yet.

input_textType a text string into the focused field

Type a text string into the focused field

No parameter schema in public metadata yet.

key_eventSend a key event: HOME, BACK, ENTER, VOLUME_UP, VOLUME_DOWN, POWER, etc.

Send a key event: HOME, BACK, ENTER, VOLUME_UP, VOLUME_DOWN, POWER, etc.

No parameter schema in public metadata yet.

scrollScroll at a position (dx=horizontal, dy=vertical)

Scroll at a position (dx=horizontal, dy=vertical)

No parameter schema in public metadata yet.

app_startLaunch an app by package name. Prefix with + to force-stop before launch.

Launch an app by package name. Prefix with + to force-stop before launch.

No parameter schema in public metadata yet.

app_stopForce-stop an app

Force-stop an app

No parameter schema in public metadata yet.

app_installInstall an APK from the host machine

Install an APK from the host machine

No parameter schema in public metadata yet.

app_uninstallUninstall an app

Uninstall an app

No parameter schema in public metadata yet.

app_listList installed packages, optionally filter by name or system/third-party

List installed packages, optionally filter by name or system/third-party

No parameter schema in public metadata yet.

app_currentGet the current foreground app and activity

Get the current foreground app and activity

No parameter schema in public metadata yet.

ui_dumpDump the full UI hierarchy as XML

Dump the full UI hierarchy as XML

No parameter schema in public metadata yet.

ui_find_elementFind elements by text, resource ID, class name, or content description. Returns tap coordinates.

Find elements by text, resource ID, class name, or content description. Returns tap coordinates.

No parameter schema in public metadata yet.

shell_execExecute an arbitrary ADB shell command and return the output

Execute an arbitrary ADB shell command and return the output

No parameter schema in public metadata yet.

file_pushPush a file from the host machine to the device

Push a file from the host machine to the device

No parameter schema in public metadata yet.

file_pullPull a file from the device to the host machine

Pull a file from the device to the host machine

No parameter schema in public metadata yet.

file_listList directory contents on the device

List directory contents on the device

No parameter schema in public metadata yet.

clipboard_getGet clipboard content. Uses scrcpy to bypass Android 10+ restrictions.

Get clipboard content. Uses scrcpy to bypass Android 10+ restrictions.

No parameter schema in public metadata yet.

clipboard_setSet clipboard content. Pass paste: true to also paste immediately.

Set clipboard content. Pass paste: true to also paste immediately.

No parameter schema in public metadata yet.

Sponsors

Configuration

ANDROID_SERIAL

Target device serial number (from `adb devices`). Required when multiple devices are connected.

ADB_PATH

Custom path to the adb binary. Defaults to 'adb' on PATH.

SCRCPY_SERVER_PATH

Path to the scrcpy-server.jar file. Only needed if not installed in a standard location.

Readme

scrcpy-mcp

MCP server that gives AI agents full vision and control over Android devices via ADB and scrcpy.

Connect any MCP-compatible AI assistant (Claude Code, OpenCode, Cursor, VS Code Copilot, etc.) to your Android device. The AI can see the screen, tap, swipe, type, launch apps, inspect UI elements, transfer files, and run shell commands.

MCP Badge

Features


View the full README on GitHub

Details

Repository
github.com/juancf/scrcpy-mcp
Category
Mobile Development
Package
scrcpy-mcp
Transport
STDIO
Registry
MCP registry, active

Related Mobile Development MCP servers

View all
1webdriverio avatarMcpwebdriverio/mcpMCP server with WebdriverIO for browser and mobile app automation (iOS/Android via Appium)0stars
2mikusnuz avatarApp Publishmikusnuz/app-publish-mcpMCP server for App Store Connect & Google Play Console — iOS/Android app management40stars
3oozoofrog avatarBaepsaeoozoofrog/mcp-baepsaeLocal MCP server for iOS Simulator and macOS app automation with a native Swift bridge24stars
4agenticempire avatarAxintagenticempire/axintProof and repair for Apple coding agents: validate Swift, run Xcode evidence, and repair failures.18stars
5neverlow512 avatarAgent Droid Bridgeneverlow512/agent-droid-bridgeMCP server giving AI agents eyes and hands inside Android devices via ADB15stars
6ascript-cn avatarAscript Mcpascript-cn/ascript-mcpControl Android/iOS/Windows devices from Claude, Cursor, and other AI tools. iOS without jailbreak.7stars