espresso-mcp
@vs4vijay
About espresso-mcp
An MCP Server for the Espresso Android Test Framework, crafted to improve testing capabilities and optimize development workflows.
Basic information
Config
Add this server to your MCP-compatible client using the configuration below.
{
"mcpServers": {
"espresso-mcp": {
"command": "uvx",
"args": [
"espresso-mcp"
]
}
}
}Tools
21List all available Android Virtual Devices (AVDs).
List all running Android Emulators.
Start an Android Emulator by name.
Kill a specific Android Emulator.
Dump the UI hierarchy of the connected Android device.
Open a URI on the connected Android device.
List all installed apps on the connected Android device.
Install an APK on the connected Android device.
Start a specific app on the connected Android device.
Stop a specific app on the connected Android device.
Uninstall an app from the connected Android device.
Clear app data for a specific app on the connected Android device.
Take a screenshot of the connected Android device.
Record the screen of the connected Android device for a specified duration.
Simulate a button press on the connected Android device.
Type text on the connected Android device.
Clear all text and type new text on the connected Android device.
Replace text by clearing current text and typing new text on the connected Android device.
Simulate a tap on the connected Android device at specific coordinates.
Perform a swipe gesture in a specific direction on the connected Android device.
Dump the current activity name of the connected Android device.
Overview
What is espresso-mcp?
espresso-mcp is an MCP (Model Context Protocol) server for the Espresso Android Test Framework. It provides tools to interact with Android emulators and devices, enabling UI automation, emulator management, and testing workflows. It is designed for Android developers and testers who want to integrate testing capabilities into AI-assisted development environments.
How to use espresso-mcp?
Install via uvx espresso-mcp (requires Python 3.x and uv). Run in stdio mode by default or in SSE mode with --sse. Configure in GitHub Copilot (.vscode/mcp.json), Claude Desktop (claude_desktop_config.json), or use directly with the OpenAI SDK by pointing to the SSE endpoint.
Key features of espresso-mcp
- List and manage Android Virtual Devices and emulators.
- Start/stop emulators and dump UI hierarchy.
- Install, uninstall, start, stop, and clear app data.
- Simulate taps, swipes, text input, and button presses.
- Take screenshots and record screen video.
- Retrieve static configuration and personalized greetings via resources.
Use cases of espresso-mcp
- Automate mobile app UI testing with emulator control.
- Quickly set up and tear down emulators during CI/CD.
- Perform exploratory testing by dumping UI hierarchy and interacting with elements.
- Integrate Android device control into AI coding assistants.
FAQ from espresso-mcp
How do I install espresso-mcp?
Ensure Python 3.x and uv are installed, then run uvx espresso-mcp. Optionally install via uv tool install espresso-mcp.
What transports does espresso-mcp support?
It supports both stdio (default) and SSE (--sse flag) transports.
What are the prerequisites for running espresso-mcp?
Python 3.x and the uv package manager (installable via pip install uv). An Android emulator or device must be connected and accessible via ADB.
More Developer Tools MCP servers
MCP Containers
metorialConnect any AI model to 1200+ integrations (MCP, CLI, API)

Sentry
modelcontextprotocolModel Context Protocol Servers
Huoshan Test
volcengineFastAPI-MCP
tadata-orgExpose your FastAPI endpoints as Model Context Protocol (MCP) tools, with Auth!
MCP Unity Editor (Game Engine)
CoderGamesterModel Context Protocol (MCP) plugin to connect with Unity Editor — designed for Cursor, Claude Code, Codex, Windsurf and other IDEs
Comments