关于 replicant-mcp
replicant-mcp 是面向 Android 开发者的 MCP 服务,让 AI 助手能够操作开发环境。它将构建和测试与模拟器、设备、日志及基于无障碍树的 UI 控制整合起来。
主要功能
- 01构建 APK 并运行测试
- 02管理模拟器与快照
- 03安装和控制应用
- 04筛选 logcat 输出
- 05查找并操作 UI 元素
- 06检查 Android 环境状态
适用场景
- 01构建并测试 Android 项目
- 02在模拟器中复现操作流程
- 03调试时查看筛选后的应用日志
- 04通过无障碍元素浏览应用页面
MCP 相关
该服务向兼容 MCP 的助手开放 Android 构建、测试、模拟器、设备、应用、日志和 UI 自动化操作。可配置到 Claude Desktop、Claude Code、Cursor、Windsurf 和 OpenAI Codex CLI 等客户端。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
14收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| key | string | 否 | 要清除的键(可选) |
| config | object | 否 | |
| config.maxEntries | number | 否 | |
| config.defaultTtlMs | number | 否 | |
| config.maxEntrySizeBytes | number | 否 | |
| operation | enum | 是 | get-stats | clear | get-config | set-config |
详细介绍
replicant-mcp
让 AI 为你构建、测试和调试 Android 应用。
replicant-mcp 是一个 Model Context Protocol 服务,可让 Claude 等 AI 助手与您的 Android 开发环境交互。构建 APK、启动模拟器、安装应用、浏览 UI 并调试崩溃——所有操作都能通过自然对话完成。
演示

为什么选择 replicant-mcp?
| 不使用 replicant-mcp | 使用 replicant-mcp |
|---|---|
“运行 ./gradlew assembleDebug,然后 adb install,再运行 adb shell am start……” | “构建并运行应用” |
| 复制粘贴 logcat 输出,丢失上下文 | AI 直接读取筛选后的日志 |
| 截图 → 描述 UI → 猜测坐标 | AI 查看无障碍树,按文本点击元素 |
| 5,000 个 token 的原始 Gradle 输出 | 50 个 token 的摘要 + 按需查看详情 |
功能
| 类别 | 功能 |
|---|---|
| 构建与测试 | 构建 APK/Bundle,运行单元测试和插桩测试,列出模块/变体/任务,通过基线比较测试回归检测 |
| 模拟器 | 创建、启动、停止和清除模拟器;保存/加载/删除快照 |
| 设备控制 | 列出已连接的设备、选择活动设备、查询设备属性 |
| 应用管理 | 安装、卸载、启动和停止应用;清除应用数据 |
| 日志分析 | 按包、标签、级别和时间筛选 logcat |
| UI 自动化 | 以无障碍功能优先查找元素、按空间邻近度搜索、点击、输入文本、截图 |
| 诊断 | 通过 replicant doctor 检查环境健康状况;支持配置级别和格式的结构化日志 |
即将推出
- 自定义构建命令(项目专属覆盖、自动检测 gradlew)
- 视频采集(开始/停止录制、按时长采集)
快速开始
前置条件
- Node.js 18+
- Android SDK,且
adb和emulator位于 PATH 中 - 一个带有
gradlew的 Android 项目(用于构建工具)
node --version # Should be 18+
adb --version # Should show Android Debug Bridge version
emulator -version # Should show Android emulator version
安装前置条件(通过 Homebrew 安装于 macOS)
如果尚未安装这些工具,请使用 Homebrew 安装:
Node.js 18+
brew install node
仅用于实体设备 — 只需 adb,如果您从不运行模拟器,这就足够了:
brew install --cask android-platform-tools
adb 会直接添加到 PATH 中;无需进一步配置。
完整 Android SDK — 模拟器工作流或通过 gradle-* 工具构建 APK 时需要。请按顺序执行以下步骤:
# 1. JDK — required by sdkmanager itself, and by the gradle-* tools
brew install --cask temurin@17
# 2. cmdline-tools (provides sdkmanager)
brew install --cask android-commandlinetools
# 3. Set ANDROID_HOME and create the directory BEFORE running sdkmanager,
# otherwise sdkmanager has no install target.
export ANDROID_HOME="$HOME/Library/Android/sdk"
mkdir -p "$ANDROID_HOME"
# 4. Accept all SDK licenses first, then install packages.
# `sdkmanager --install` aborts on unaccepted per-package licenses
# (e.g. the Google APIs system image) if licenses aren't accepted first.
# The system-image arch must match your host: `arm64-v8a` for Apple
# Silicon (M1/M2/M3), `x86_64` for Intel Macs. Check with `uname -m`.
yes | sdkmanager --licenses
sdkmanager --install "platform-tools" "emulator" "system-images;android-34;google_apis;arm64-v8a"
将 ANDROID_HOME 持久化,并将 SDK 二进制文件添加到 PATH,方法是将以下内容追加到 ~/.zshrc(或 ~/.bashrc):
export ANDROID_HOME="$HOME/Library/Android/sdk"
export PATH="$ANDROID_HOME/platform-tools:$ANDROID_HOME/emulator:$PATH"
安装
npm install -g replicant-mcp
安装完成后,运行内置诊断以验证环境:
replicant doctor
更新
npm update -g replicant-mcp
设置
Claude Desktop
添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)或 %APPDATA%\Claude\claude_desktop_config.json(Windows):
{
"mcpServers": {
"replicant": {
"command": "npx",
"args": ["-y", "replicant-mcp"]
}
}
}
Claude Code
claude mcp add replicant -- npx -y replicant-mcp
Cursor
添加到 ~/.cursor/mcp.json(全局)或 .cursor/mcp.json(项目):
{
"mcpServers": {
"replicant": {
"command": "npx",
"args": ["-y", "replicant-mcp"]
}
}
}
Windsurf
添加到 ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"replicant": {
"command": "npx",
"args": ["-y", "replicant-mcp"]
}
}
}
OpenAI Codex CLI
添加到 ~/.codex/config.toml:
[mcp_servers.replicant]
command = "npx"
args = ["-y", "replicant-mcp"]
或通过 CLI:
codex mcp add replicant -- npx -y replicant-mcp
注意: 确保
adb和emulator位于 PATH 中,或设置ANDROID_HOME环境变量。在 macOS 上:~/Library/Android/sdk;在 Linux 上:~/Android/Sdk。
示例
You: "I just changed the checkout flow. Build the app, go through checkout
with a test product, and make sure the confirmation screen shows up."
Claude: [Builds debug APK, installs on emulator, launches app]
[Taps "Electronics" category → "Wireless Headphones" → "Add to Cart"]
[Navigates to cart, taps "Checkout"]
[Fills shipping form, taps "Place Order"]
Confirmation screen is showing:
- Order #38291
- "Wireless Headphones" × 1
- Total: $79.99
- Estimated delivery: Jan 30
The flow works. Want me to test the edge cases—empty cart,
invalid address, payment failure?
设计
replicant-mcp 使用渐进式披露(先提供摘要,按需展示详情)来尽量减少 token 用量,并采用无障碍优先的 UI 自动化,相比基于屏幕截图的方式,交互更快、更省成本且更可靠。详见 docs/architecture.md。
更多信息
- 配置: 设置
REPLICANT_CONFIG以使用高级选项。详见 docs/configuration.md。 - 日志记录: 设置
REPLICANT_LOG_LEVEL(error、warn、info、debug)和REPLICANT_LOG_FORMAT(将其设为json以输出结构化日志)来控制服务日志。日志写入 stderr。 - 故障排查: 常见问题及解决方案见 docs/troubleshooting.md。
- 工具文档: 让 Claude 调用
rtfm,并指定“build”“adb”“emulator”或“ui”等类别。
文档
| 文档 | 说明 |
|---|---|
| 架构 | 设计概览和渐进式披露模式 |
| 配置 | 配置文件参考、环境变量、Gradle 设置 |
| API 稳定性 | 工具 API 版本策略和弃用流程 |
| 安全模型 | adb-shell 安全模型、命令拒绝列表、威胁边界 |
| 支持矩阵 | 已测试的 OS、Node.js、Android SDK 和模拟器版本 |
| 已知限制 | 无障碍支持缺口、超时、单设备焦点等 |
| 构建产物 | .replicant/ 目录内容和隐私注意事项 |
| 故障排查 | 常见问题及解决方案 |
| 更新日志 | 版本历史 |
| 安全策略 | 漏洞报告流程 |
| 支持 / 获取帮助 | 如何报告错误和提问 |
| 参与贡献 | 开发环境设置和指南 |
参与贡献
开发环境设置和指南见 CONTRIBUTING.md。
致谢
- 受 iOS 工具 xc-mcp 启发
- 基于 Model Context Protocol 构建
许可证
有疑问? 提交议题
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。