scrcpy-mcp

MCP server for Android through ADB and scrcpy: an agent sees the screen, taps, types text and launches apps.

  • 129 ★ on the repository
  • Last commit
MCP server

Broad access

Why this level

  • The agent sees the whole screen, taps anything, and `shell_exec` runs arbitrary commands on the device.
  • Device files, clipboard and audio are open to the agent and go to its model.
All reasons and checks

juancf/scrcpy-mcp

Install

In your terminal, with SkillFoxx CLI

npx skillfoxx add mcp/scrcpy-mcp

Detects the agents on your machine, shows the access level and pins the version.

Other ways to install

Access and checks

How we review

Broad accessThe tool can change data, run commands or handle secrets.

  • The agent sees the whole screen, taps anything, and `shell_exec` runs arbitrary commands on the device.
  • Device files, clipboard and audio are open to the agent and go to its model.

This is third-party code. Review the repository files before installing.

What it does

scrcpy-mcp connects an agent to an Android phone or tablet over USB or Wi-Fi. It ships 44 tools: screenshots, taps and swipes, text input, app launching, UI element search, files, clipboard, screen recording, video streaming and audio recording. With a scrcpy session on, input and screenshots go over scrcpy's binary protocol and a screenshot takes about 33 ms. Without scrcpy the same tools work through ADB, only slower. The agent receives screenshots as images, and `ui_find_element` returns tap coordinates.

Who it is for. Mobile developers and testers who want an agent to walk through an app on a real Android device.

Good fit when

  • A build is installed on the phone and the agent has to walk the sign-up flow and report where it breaks.
  • A series of app screen screenshots is needed without manual taps.
  • The agent has to pull a file from the device or push a test one onto it.
  • App audio is recorded to `.wav` to check playback.

Not a fit when

  • The device holds personal accounts and banking apps: the agent sees the whole screen and can tap anything.
  • iOS is the target: the server works only with Android.
  • An emulator with a ready MCP is enough and no physical device is at hand.

Example request

Open the app on the phone, pass the sign-in screen with the test login and send a screenshot of the home screen.

MCP

Transport
stdio
Authentication
not required

Environment variables

SCRCPY_SERVER_PATH
Path to a non-standard scrcpy-server file.
SCRCPY_SERVER_VERSION
scrcpy-server version, set only when auto-detection fails.

Limitations

Node.js 24 or newer, ADB and an Android device with USB debugging are required; audio recording needs Android 11 or newer. Scrcpy speeds things up but is installed separately, and video streaming and audio recording also need ffmpeg and ffplay. The `output` audio source mutes the device speakers during capture: sound moves to the computer instead of being copied. Set the scrcpy-server version by hand only when auto-detection fails, otherwise a stale value causes a version mismatch.

How to disable. Remove the android MCP entry from the client configuration and turn off USB debugging on the device. If ADB over Wi-Fi was enabled, call `disconnect_wifi`.

FAQ

How do I connect it to Claude Code?

Run `claude mcp add android -- npx scrcpy-mcp`. For Cursor, Claude Desktop and VS Code the README gives JSON with the `npx` command and the `scrcpy-mcp` argument.

Is scrcpy mandatory?

No. The control tools work through ADB without it, but input is 10 to 50 times slower and video streaming and audio are unavailable.

How do I connect wirelessly?

The `connect_wifi` tool enables ADB over Wi-Fi and returns the connection address. Disconnect with `disconnect_wifi`.

Can the agent run commands on the phone?

Yes, the `shell_exec` tool runs an arbitrary ADB shell command and returns the output. Access is wide, so attach the server to a test device.

What if the scrcpy-server version fails?

Match `SCRCPY_SERVER_VERSION` with the output of `scrcpy --version` or delete the variable so the version is detected automatically.

Discussion

No questions or reviews yet.

Official

An MCP server exposes Android screens, element search, taps, input and screenshots to agents testing authorized applications.

MCP serverBroad access461Repository stars

An MCP server that drives an Android device over ADB: app navigation, input and automated tests

MCP serverBroad access917Repository stars

Android Remote Control MCP

android-remote-control-mcp

An Android app that turns a phone or emulator into an MCP server: accessibility services and screenshots

MCP serverBroad access787Repository stars

An MCP server to drive iOS and Android: simulators, emulators and real devices via accessibility trees and screenshots

MCP serverBroad access10.3KRepository stars

Appium MCP

appium-mcp

Official

An agent opens sessions on emulators and real devices, finds elements by description and writes Java tests via the Appium server.

MCP serverBroad access518Repository stars

Comparison with similar tools

Cards that share the main search query, and how they differ.

ToolOfficialAuthenticationRepository starsMain difference
scrcpy-mcp (this card)nonot required129
Android MCPnonot required917drives Android through ADB; scrcpy-mcp with scrcpy on enters commands noticeably faster and records device audio
Mobile MCPnonot required10,325covers iOS and Android through the accessibility tree; scrcpy-mcp is Android-only but adds video streaming and audio recording

README in short

The README lists all 44 tools by group: session, video, audio, device, vision, input, apps, shell and files. It also covers typical failures, such as a version conflict or a directory in place of the server file on the device.

README badge

Report a problem

Foxx AIscrcpy-mcp
Foxx AI

I am Foxx AI and I have already vetted this tool. Ask about install, setup or anything else, and I will keep it simple.