GitHub
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
Description from the maker (original English)
Local-first MCP server for Android debugging via ADB, JDI, LLDB, and Flutter.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Download the maker’s .mcpb file
The link goes to the maker’s own file; we do not host or repackage it. Open the file and Claude Desktop installs it.
Run this in your terminal
Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account dima-xd, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.0.0) reached the registry 5 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need MCPB on your computer.
In the same category: GitHub, Desktop Commander, Cloudflare MCP
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
GitHub’s official server lets AI read and manage code, issues and pull requests in your account. Use GitHub’s hosted version or run it locally with Docker.
MCP server for terminal commands, file operations, and process management
Cloudflare MCP servers
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
admcp is a local-first Model Context Protocol (MCP) server for Android development. It connects any MCP stdio client to a real device or emulator and exposes 51 typed tools for UI inspection, screenshots, logcat, Java/Kotlin JDI debugging, native LLDB, Flutter/Dart DAP, Compose inspection, Perfetto traces, heap dumps, artifacts and evidence-based diagnostics.
No root. No cloud account required.
Quick start | What it can do | Example prompts | Why admcp | Documentation
Status: v1, 51 tools, live-tested on a OnePlus CPH2747 (API 36, arm64-v8a).
Full evidence and remaining limits:
implementation status.
adb).admcp- .zip from GitHub Releases and unzip it. MCPB-compatible clients can install admcp- .mcpb from the same release instead.bin/admcp.bat on Windows or bin/admcp on Linux and macOS.Any MCP stdio client can use it. The JSON below uses the common mcpServers shape; adapt the command and arguments to your client (Claude Code, Cursor, VS Code, Codex, Gemini CLI, and similar).
{
"mcpServers": { "admcp": { "command": "C:\\Tools\\admcp\\admcp- \\bin\\admcp.bat", "args": [ "--platform-tools", "C:\\Android\\Sdk\\platform-tools", "--artifacts", "C:\\temp\\admcp-artifacts" ] } } }
On Linux and macOS, use /opt/admcp/admcp- /bin/admcp as command.
Verify the install:
C:\Tools\admcp\admcp-<version>\bin\admcp.bat --selftest
On Linux and macOS:
/opt/admcp/admcp-<version>/bin/admcp --selftest
You should see catalog=51 registered=51 version= on stderr. The server then speaks MCP over stdio; stdout is reserved for protocol traffic.
| Area | Tools |
|---|---|
| Device and workspace | device_list, device_inspect, toolchain_probe, workspace_open, workspace_describe |
| App lifecycle | app_build, app_install, app_launch |
| Sessions | session_start, session_status, session_stop |
| UI and screenshots | ui_inspect, ui_find, ui_act, ui_screenshot, compose_inspect |
| Logs | logcat_start, logcat_query, logcat_stop, logcat_statistics, logcat_health |
| Java/Kotlin debug | debug_attach, breakpoints, debug_step, debug_stack, debug_variables, debug_evaluate |
| Native debug | LLDB attach, breakpoints, stack, registers, memory reads and modules |
| Flutter debug | DART_DAP attach, breakpoints, stack, variables, step, pause and detach |
| Performance | Perfetto system traces, heap dumps and performance_trace_analyze |
| Artifacts and evidence | artifact_get, analyze_artifact, previews, diagnostics_* and signals_crashes |
The full 51-tool contract is in docs/architecture/mcp-tool-catalog-v1.md. The catalog is validated by contract tests.
Once admcp is connected, ask your agent things like:
Inspect the current screen, find the INCREMENT button, tap it, and verify the counter changed.
Start logcat, reproduce the crash, then summarize the stack trace and the last 50 lines before it. Launch the app, attach JDI, set a breakpoint in MainActivity, and show locals when it hits. Inspect this Compose screen and tell me which accessibility node is the DELETE COUNTER button. Record a 5-second Perfetto trace and summarize what happened. Attach LLDB to the native library, break in fixture_increment, and show the registers.
Many Android MCP tools are thin command wrappers. admcp keeps device, workspace, process and session state together, then exposes debugging primitives with typed schemas, artifacts and safety gates.
It is for:
| adb and shell scripts | Android Studio | admcp | |
|---|---|---|---|
| Built for AI agents | No | No | Yes |
| Typed MCP tool schemas | No | No | 51 tools |
| Session, process and backend state | No | Partial | Yes |
| JDI, LLDB and Flutter over MCP | No | Human UI | Yes |
| Evidence, artifacts and diagnostics | No | Partial | Yes |
| Local-first, no cloud account | Yes | Yes | Yes |
Android Studio is the better tool for a human sitting at the IDE. admcp is for the agent that needs to inspect, act and debug without a human driving every click.
flowchart LR
Client["MCP client / agent"] -->|stdio| Server["admcp (MCP server)"] Server --> ADB["ADB / Android CLI"] Server --> JDI["JDI (JDWP client)"] Server --> LLDB["lldb-dap"] Server --> DAP["Flutter DAP"] ADB --> Device["Android device / emulator"] JDI -.->|via adb forward| ADB LLDB -.->|via adb forward / lldb-server| ADB DAP -.->|via adb forward| ADB
The server runs on your machine next to the Android toolchain. It does not upload your project or device data anywhere.
186 tests with 0 failures on the verified host.51 tools over MCP stdio.DART_DAP breakpoints, stack, variables, step, pause and detach.Device-dependent integration tests skip when no device is attached. See implementation status for the full acceptance evidence.
adb).lldb/lldb-server, lldb-dap and a connected device or emulator.Only debuggable developer builds are supported. Root and Android security bypasses are out of scope.
Build, test and package from source
The Gradle wrapper is checked in; no local Gradle install is required.
Windows:
gradlew.bat clean test
gradlew.bat :app:admcp:installDist
Linux and macOS:
./gradlew clean test
./gradlew :app:admcp:installDist
The installable distribution is written to app/admcp/build/install/admcp/. The release archive is built with :app:admcp:distZip and written to app/admcp/build/distributions/admcp- .zip.
Releases are automated with semantic-release from Conventional Commits on pushes to main or master: fix: is a patch release, feat: is a minor release and BREAKING CHANGE: is a major release. No release PR or changelog is generated.
| Option | Purpose |
|---|---|
--platform-tools | Directory containing adb |
--workspace | Default workspace root |
--android-cli | Android CLI executable |
--flutter-root | Flutter SDK root |
--artifacts | Artifact store root |
--trust-workspace | Operator-approved workspace root; repeatable |
--selftest | Print catalog/registration counts and exit |
--version | Print the version and exit |
workspace_trust only succeeds for a canonical root passed to the server at startup with --trust-workspace. A tool argument cannot self-assert approval.
debug_attach(switchBackend=true).TREE uses the accessibility hierarchy. Internal semantics, slot table and recomposition data require app instrumentation.trace_processor_shell is bundled, so trace analysis returns a bounded summary unless Perfetto SQL tooling is installed.android auth login; the local crash buffer remains the default evidence source.lldb-dap and an ABI-matched lldb-server.See implementation status for details and exact error behavior.
Issues and pull requests are welcome. The public tool catalog is versioned; open an issue before adding or renaming a public tool. Run gradlew test before sending a PR.
If admcp saves your agent time, a star helps more Android developers find it.
Apache License 2.0. See LICENSE.