Provides tools for interacting with the Android development environment, including emulator management, application installation, ADB shell command execution, Logcat log analysis, and UI automation via the accessibility tree.
Enables automated interaction with the Gradle build system to assemble APKs and bundles, run unit or instrumented tests, and retrieve detailed build results and logs.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@replicant-mcpBuild the debug APK and run it on the emulator"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
replicant-mcp
Let AI build, test, and debug your Android apps.
replicant-mcp is a Model Context Protocol server that gives AI assistants like Claude the ability to interact with your Android development environment. Build APKs, launch emulators, install apps, navigate UIs, and debug crashes—all through natural conversation.
Why replicant-mcp?
Android development involves juggling a lot: Gradle builds, emulator management, ADB commands, logcat filtering, UI testing. Each has its own CLI, flags, and quirks.
replicant-mcp wraps all of this into a clean interface that AI can understand and use effectively:
Without replicant-mcp | With replicant-mcp |
"Run | "Build and run the app" |
Copy-paste logcat output, lose context | AI reads filtered logs directly |
Screenshot → describe UI → guess coordinates | AI sees accessibility tree, taps elements by text |
5,000 tokens of raw Gradle output | 50-token summary + details on demand |
Quick Start
Prerequisites
You'll need:
Node.js 18+
Android SDK with
adbandemulatorin your PATHAn Android project with
gradlew(for build tools)
Verify your setup:
Installation
Connect to Claude Desktop
Add this to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS):
Restart Claude Desktop. You should see "replicant" in the MCP servers list.
Alternative: Claude Code Skill
If you use Claude Code (Anthropic's CLI), you can install replicant as a skill instead of an MCP server. This provides shell script wrappers optimized for Claude Code's workflow.
Option 1: Via Plugin Marketplace (Recommended)
Option 2: Manual Installation
After installation, restart Claude Code to load the skill. The skill provides the same Android development capabilities through shell scripts rather than MCP tools.
Note: The Claude Code skill is currently compatible with macOS and Linux only. Windows support is planned for a future release.
Which should you choose?
MCP Server — Use with Claude Desktop or any MCP-compatible client
Claude Code Skill — Use with Claude Code CLI for a shell-native experience
Both approaches provide the same core functionality.
What Can It Do?
Build & Test
Emulator Management
Install & Launch Apps
Debug with Logcat
UI Automation (No Screenshots Needed!)
This works by reading the accessibility tree—the same data screen readers use. It's faster, cheaper, and more reliable than screenshot-based approaches.
Tool Reference
replicant-mcp provides 12 tools organized into categories:
Build & Test
Tool | Description |
| Build APKs and bundles ( |
| Run unit and instrumented tests with filtering |
| List modules, build variants, and tasks |
| Fetch full logs/errors from cached build results |
Emulator
Tool | Description |
| Create, start, stop emulators; manage snapshots |
ADB
Tool | Description |
| List devices, select active device, get properties |
| Install, uninstall, launch, stop apps; clear data |
| Read filtered device logs by package/tag/level |
| Run shell commands (with safety guards) |
UI Automation
Tool | Description |
| Dump accessibility tree, find elements, tap, input text, screenshot |
Utilities
Tool | Description |
| Manage cached outputs (stats, clear, config) |
| On-demand documentation for tools |
Want details? Ask Claude to call rtfm with a category like "build", "adb", "emulator", or "ui".
Design Philosophy
Progressive Disclosure
Gradle builds can produce thousands of lines of output. Dumping all of that into an AI context is wasteful and confusing.
Instead, replicant-mcp returns summaries with cache IDs:
If the AI needs the full output (e.g., to debug a failure), it can request it:
This typically reduces token usage by 90-99%.
Accessibility-First UI
Most AI-driven UI automation uses screenshots: capture the screen, send it to a vision model, get coordinates, click.
replicant-mcp takes a different approach: it reads the accessibility tree—the same structured data that powers screen readers. This is:
Faster — No image processing
Cheaper — Text is smaller than images
More reliable — Elements are identified by text/ID, not pixel coordinates
Better for apps — Encourages accessible app development
Single Device Focus
Instead of passing deviceId to every command, you select a device once:
All subsequent commands target that device automatically. Simple.
Safety Guards
The adb-shell tool blocks dangerous commands like rm -rf /, reboot, and su. You can run shell commands, but not brick your device.
Development
Project Structure
Running Tests
Checking Prerequisites
This verifies your Android SDK setup and reports what's available.
Troubleshooting
"No device selected"
Run adb-device with operation: "list" to see available devices, then operation: "select" to choose one. If only one device is connected, it's auto-selected.
"Gradle wrapper not found"
Make sure you're in an Android project directory that contains gradlew. The Gradle tools won't work from other locations.
"Command timed out"
Long-running operations (builds, tests) have a 5-minute default timeout. If your builds are slower, you may need to adjust the timeout in the adapter.
Emulator won't start
Check that:
You have an AVD created (
avdmanager list avd)Virtualization is enabled (KVM on Linux, HAXM on Mac/Windows)
Enough disk space for the emulator
Contributing
Contributions are welcome! Please:
Fork the repo
Create a feature branch (
git checkout -b feature/amazing-feature)Make your changes
Run
npm run validateto ensure tests passCommit with a descriptive message
Push and open a PR
Acknowledgments
Inspired by xc-mcp for iOS
Built on the Model Context Protocol
Thanks to the Android team for
adband the emulator
License
Questions? Issues? Ideas? Open an issue — we'd love to hear from you.