android-dev-mcp
android-dev-mcp
Unified MCP server for Android mobile development — combines project knowledge, Android CLI execution, live dependency versions, and agentic workflow tools for Claude Code.
Install
curl -fsSL https://raw.githubusercontent.com/maheshmishra271090-design/android-dev-mcp/main/scripts/install.sh | bashThat's it. No cloning, no manual steps. The installer handles everything:
Node.js ≥ 18 (installs or upgrades)
Git + ITGD aliases
Android CLI + Google Android Skills
android-dev-mcp global npm package
MCP config for Claude Code (via
claude mcp add) and Claude Desktop (viaclaude_desktop_config.json)CLAUDE.md block in current project
Git hooks (pre-commit lint + commit-msg Conventional Commits)
android-dev-mcp init registers the server in both places it can be used — the claude CLI's own MCP config (for Claude Code / the VSCode extension) and claude_desktop_config.json (for the Claude Desktop app). If the claude CLI isn't on PATH, Claude Code registration is skipped with a warning and the manual command to run instead (see below).
After install — verify
android-dev-mcp check MCP server built: ✔
Claude configured: ✔
Android CLI: ✔ android 1.x.x
CLAUDE.md (cwd): ✔ block presentclaude mcp get android-dev-mcpandroid-dev-mcp:
Status: ✔ Connected
Type: stdio
Command: node
Args: <path-to-package>/dist/index.jsThen inside Claude Code, start a new session (registration only takes effect on session start):
/mcp → should show android-dev-mcp with 24 toolsManual registration (Claude Code)
If init reports it couldn't find the claude CLI, or you're setting this up without the installer, register it directly:
claude mcp add android-dev-mcp -- node "$(npm root -g)/@maheshmishra271090-design/android-dev-mcp/dist/index.js"Or, when working from a local clone/checkout of this repo:
npm run build
claude mcp add android-dev-mcp -- node "$(pwd)/dist/index.js"Remove it with:
claude mcp remove android-dev-mcp -s localWhat It Does
One MCP server that gives Claude Code both the knowledge and the execution power to complete full Android development workflows autonomously:
Layer | Tools | What it provides |
Knowledge | 14 | MVVM, Hilt, Compose, ExoPlayer, Retrofit, tests, git, prompts, model routing |
Android CLI | 5 | Scaffold, lint, render @Preview, deploy APK, live dep versions |
Execution | 4 | Direct adb, git, gradle, and shell command execution |
Tools (24 total)
Knowledge Layer (14)
Tool | Returns |
| All 14 knowledge domains — call at session start |
| Module layout, package naming, file conventions |
| MVVM, Hilt, ViewModel, StateFlow, Coroutines |
| Compose screens, Material 3, Navigation, Player UI |
| Retrofit, AuthInterceptor, DTO mapping, error codes |
| ExoPlayer/Media3, HLS, Widevine DRM, lifecycle |
| Gradle flavors, signing, CI pipeline |
| Frame rate · jank · recomposition · ACR crash analysis |
| ViewModel · Repository · Compose UI · API templates |
| Branch strategy, Conventional Commits, hooks |
| Ask CIO, few-shot CoT, compact tasks |
| /clear vs /compact, context window rules |
| Haiku/Sonnet/Opus routing + task recommendation |
| Graphify, RTK, Caveman, Superpowers guides |
Android CLI Integration Layer (5)
Tool | What it does |
| Full CLI command reference + workflow protocols |
| Executes any |
| Current agp/kotlin/compose/media3 from Google Maven* |
| Context + live versions + CLI scaffold in one call |
| Renders @Preview + validates against ITGD Compose standards* |
| Full debug protocol: ADB + layout tree + screenshot + ACR + lint |
*Requires Android Studio running with Gemini signed in.
Execution Layer (4)
Tool | What it does |
| Executes any |
| Executes any |
| Executes a Gradle task — uses |
| Executes an arbitrary shell command, returns stdout/stderr |
Agentic Workflows
New Feature
get_full_context → get_live_versions → scaffold_feature → studio analyze-file → verify_ui → android runFluidity Debug
fluidity_debug_workflow("player") → android layout --diff → android screen capture → ACR → fix → verifyNew Developer Onboarding
curl -fsSL https://raw.githubusercontent.com/maheshmishra271090-design/android-dev-mcp/main/scripts/install.sh | bash
# Done in ~3 minutes — no pair session neededPer-Project CLAUDE.md
To add or update the MCP block in any project:
android-dev-mcp setup-claude-md # current project
android-dev-mcp setup-claude-md --dir=~/projects/App # specific projectSafe to re-run — never overwrites existing content.
Customising Knowledge
All knowledge is plain markdown in knowledge/. Edit to match your project.
License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/maheshmishra271090-design/android-dev-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server