Android
概要
作者による説明(英語の原文)
Android MCP — ADB-based device, apps, UI, logcat, emulator, files, system, debug
PopNx MCPの3つの柱
この3つを1つのスコアにまとめることはしません。意見、測定、人気はそれぞれ別のものだからです。
- 利用者の声iレビューはまだありませんレビューは今後のステップで、アカウント機能と一緒に始まります
- 私たちの基本チェックi2項目中2項目に合格公開情報からチェック。コードはまだスキャンしていません
- 利用状況iとても新しい↓ 147/週 · ★ 16
できること
このサーバーのやさしい解説はまだ書いていません。以下はレジストリから読み取った事実です。
- 接続方法: パソコンで動く
- トランスポート: stdio
- カテゴリ: 開発者ツール
インストール
使っているAIアプリを選んで、設定をコピーしてください。
インストールの前に
- 基本チェック:2項目中2項目に合格
- あなたのパソコンで、あなたのユーザーと同じ権限(ファイル、ネットワーク、アプリ)で動きます。
- 自分で入力するもの:
ADB_PATH,ANDROID_HOME,ANDROID_SERIAL,ANDROID_TOOLS,ANDROID_DISABLE,ANDROID_MCP_ALLOW_SHELL,ANDROID_MCP_ALLOW_WRITE
必要なもの
- npmNode.jsのインストール(npxコマンドに必要)
どのアプリを使っていますか?
上でアプリを選んでください。選んだアプリを覚えておくので、次からはボタンに「…にインストール」と表示されます。
Claude Desktop → Settings → Developer → Edit Config を開き、claude_desktop_config.json にこれを貼り付けます
{
"mcpServers": {
"android": {
"command": "npx",
"args": [
"-y",
"@us-all/android-mcp"
],
"env": {
"ADB_PATH": "your-value",
"ANDROID_HOME": "your-value",
"ANDROID_SERIAL": "your-value",
"ANDROID_TOOLS": "your-value",
"ANDROID_DISABLE": "your-value",
"ANDROID_MCP_ALLOW_SHELL": "your-value",
"ANDROID_MCP_ALLOW_WRITE": "your-value"
}
}
}
}ターミナルでこれを実行します
claude mcp add android --env ADB_PATH=your-value --env ANDROID_HOME=your-value --env ANDROID_SERIAL=your-value --env ANDROID_TOOLS=your-value --env ANDROID_DISABLE=your-value --env ANDROID_MCP_ALLOW_SHELL=your-value --env ANDROID_MCP_ALLOW_WRITE=your-value -- npx -y @us-all/android-mcp動かす前に、空欄の値を入力してください。
または、設定を自分でコピーする
プロジェクトの .cursor/mcp.json、または ~/.cursor/mcp.json に貼り付けます
{
"mcpServers": {
"android": {
"command": "npx",
"args": [
"-y",
"@us-all/android-mcp"
],
"env": {
"ADB_PATH": "your-value",
"ANDROID_HOME": "your-value",
"ANDROID_SERIAL": "your-value",
"ANDROID_TOOLS": "your-value",
"ANDROID_DISABLE": "your-value",
"ANDROID_MCP_ALLOW_SHELL": "your-value",
"ANDROID_MCP_ALLOW_WRITE": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
または、設定を自分でコピーする
プロジェクトの .vscode/mcp.json に貼り付けます
{
"servers": {
"android": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@us-all/android-mcp"
],
"env": {
"ADB_PATH": "your-value",
"ANDROID_HOME": "your-value",
"ANDROID_SERIAL": "your-value",
"ANDROID_TOOLS": "your-value",
"ANDROID_DISABLE": "your-value",
"ANDROID_MCP_ALLOW_SHELL": "your-value",
"ANDROID_MCP_ALLOW_WRITE": "your-value"
}
}
}
}ブラウザがアプリを開いてよいか確認し、そのあとアプリが設定を表示して確認を求めます。キーの値は空欄のままなので、自分で入力してください。
これはパソコンで動くサーバーですが、ChatGPTがつなげるのはインターネット上のサーバーだけです。ほかのアプリを選んでください。
選んだアプリは、この端末のCookieに保存されます。アカウントは不要です。
自分で入力する値
ADB_PATHenvPath to adb binary. Default: 'adb' on PATH.ANDROID_HOMEenvAndroid SDK root. Used to resolve adb if ADB_PATH not set.ANDROID_SERIALenvDefault device serial when multiple devices are connected.ANDROID_TOOLSenvComma-separated category allowlist. Default: all categories enabled.ANDROID_DISABLEenvComma-separated category disablelist.ANDROID_MCP_ALLOW_SHELLenvSet to 'true' to enable arbitrary shell command execution. Default disabled.ANDROID_MCP_ALLOW_WRITEenvSet to 'true' to enable write/destructive tools. Default read-only.
この設定は、作者のレジストリ登録情報から作成しています。READMEと違う場合は、READMEに従ってください。
できること
パソコンで動くサーバーです。インストールすると、ツール一覧がAIアプリに表示されます。
基本チェックi
誰でも見られる情報をチェックしており、コードは読んでいません。当てはまらない項目は数に入れていません。 · 2026年11月10日にチェック
- ✓ 合格
作者とリポジトリが一致
レジストリ名は、リポジトリを所有するGitHubアカウント us-all で確認済みです
- ✓ 合格
今もメンテナンスされている
コードの最終更新:4 か月前
- … 未チェック
ライセンスがある
このリポジトリはまだGitHubから読み取っていません
- – 対象外
エンドポイントが応答する
これはパソコンで動くため、インターネット上のエンドポイントはありません
- – 対象外
OAuthでサインイン
パソコンで動き、代わりにローカルの設定を使います
- … 未チェック
ツールの説明に隠れた指示がない
パソコンで動くサーバーです。ツール一覧を読み取れるのは、インターネット上のエンドポイントがある場合だけです
開発者ツールのほかのサーバーとの比較i
- このカテゴリのほかの5723件のうち91%よりスターが多い
- このカテゴリのほかの5723件のうち18%より最近レジストリに公開
- 基本チェックの結果が、このカテゴリのほかの5723件のうち100%と同じかそれ以上
レジストリでこのカテゴリにある有効なすべてのサーバーと比較しています。スターは、公開者がリポジトリの所有者である場合だけ数えます。
よくある質問
Androidは安全ですか?
当てはまる基本チェック2項目のうち2項目に合格しました。コードは読んでいません。キーやトークンを追加する前に、サーバーがどんなアクセスを求めているかを確認し、必要な権限だけを持つキーを使ってください。
どんなキーやコードが必要ですか?
レジストリには必須のキーは載っていません。ただし、最初に使うときにサインインを求めるサーバーもあります。
パソコンで動きますか、それともクラウドですか?
あなたのパソコンで動きます。必要なときにAIアプリが起動し、データは作者のサーバーを通りません(サーバー自体がオンラインサービスを呼び出す場合を除きます)。
今もメンテナンスされていますか?
GitHubリポジトリの最終更新は4 か月前、最新バージョン(1.14.4)がレジストリに届いたのは5 か月前です。
どのアプリで使えますか?
Claude Desktop、Claude Code、Cursor、VS CodeなどのMCP対応アプリで使えます。パソコンにNode.jsも必要です。
代わりに使えるものは?
同じカテゴリには:REA, Netdata, Front-End Checklist
代わりの候補
同じカテゴリで、ほかの作者が作ったサーバー。スターの多い順。
カードの見方:↓ 週あたりのダウンロードi★ GitHubスターi3つの柱:レビュー · チェック · 利用状況i更新=最新バージョンをレジストリに公開した日i
Netdata
Real-time infrastructure monitoring with metrics, logs, alerts, and ML-based anomaly detection.
Front-End Checklist
Review frontend code and live pages against 386 quality-gated web development rules.
作者のREADME
READMEを開く
作者のリポジトリから書かれたとおりにコピーしたものです。PopNx MCPは内容を確認・推奨していません。HTML、画像、スクリプトは取り除いています。リンクはこのサイトの外へ移動します。
Android MCP Server
The Android diagnostic & forensic MCP — when an app crashes, leaks memory, drains battery, or behaves unexpectedly, this is what you point at the device.
76 tools across logcat / dumpsys / package internals / system properties / processes. 5 MCP Prompts (crash-investigation, memory-leak-detection, permission-audit, app-startup-profile, ui-element-locator) and a
device-healthaggregation. Pure ADB, no Appium / uiautomator2 dependency. 2-tier security (write + shell gates).
What it does that others don't
- Diagnostic depth — logcat search/crash extraction,
dumpsys(mem/gfx/cpu), getprop, processes, package internals, app intents, port forwards. Cross-platform competitors hide this surface. - MCP Prompts (5) —
crash-investigation,memory-leak-detection,ui-element-locator,app-startup-profile,permission-audit. Workflow templates the model invokes directly. - Aggregation tools —
device-health(battery + memory + cpu + network in one call),analyze-app(package info + memory + activities). - 2-tier security —
ANDROID_MCP_ALLOW_WRITE(gates installs/taps/pushes) andANDROID_MCP_ALLOW_SHELL(gates arbitraryadb shell) are separate flags. Distinct trust levels. - Pure ADB — no Appium, no uiautomator2, no Python bridge. Just the official Android Debug Bridge wrapped over
child_process. - Token-efficient by design — 56 schema-trim sweep,
ANDROID_TOOLS/ANDROID_DISABLE9 categories,search-toolsmeta. - Apps SDK card —
device-healthrenders as a snapshot card on ChatGPT clients (battery, RAM, Wi-Fi + 4-section grid) via_meta["openai/outputTemplate"]. Claude clients receive the same JSON content. - stdio + Streamable HTTP — defaults to stdio. Set
MCP_TRANSPORT=httpfor ChatGPT Apps SDK or remote clients (Bearer auth viaMCP_HTTP_TOKEN).
Try this — 5 prompts
Connect the server to Claude Desktop or Claude Code, then paste any of these:
- Crash investigation — *"My app
com.us-all.apikeeps crashing on this Pixel 6 emulator. Pull the last crash log, the offending stack frames, and any recent permission changes."* - Memory leak detection — *"Trace memory growth for
com.us-all.apiover the last 5 minutes. Show heap deltas, GC pressure, and the largest allocators."* - Battery drain attribution — *"What's draining battery on this device? Top 5 consumers, duration of each, and current battery health."*
- Permission audit — *"Audit installed 3rd-party apps for dangerous permissions (location/camera/contacts/microphone). Flag any app that hasn't been used in the last 30 days but holds these."*
- App startup profile — *"Profile the cold-start of
com.us-all.api— measure activity launch time, identify the slowest fragment init, and suggest where to add tracing."*
When to use this vs mobile-next/mobile-mcp
mobile-next/mobile-mcp (4.7K★) is the cross-platform action-oriented MCP. Different problem space:
| mobile-mcp | @us-all/android-mcp (this) | |
|---|---|---|
| Platform | iOS + Android (cross-platform) | Android only (specialist) |
| Posture | Action-oriented ("drive the app via NL") | Diagnostic ("tell me why it broke") |
| UI surface | Accessibility-tree-first, action loops | UI hierarchy + screenshots + diagnostic dumps |
| Diagnostic depth | minimal | logcat / dumpsys / getprop / processes / crashes |
| Aggregations | — | device-health, analyze-app |
| MCP Prompts | — | 5 (diagnostic-themed) |
| Security gates | basic | 2-tier (write + shell separate) |
| Distribution | broad (12+ IDE buttons) | npm + Docker |
Use both — they're complementary. mobile-mcp drives the device through your QA flows; this MCP tells you why it broke when something does. Especially:
- mobile-mcp finds the bug via UI exploration → this MCP captures the crash log + heap dump.
- mobile-mcp can't tell you why startup is slow → this MCP gives you
dumpsys gfxinfo+ activity launch timing. - mobile-mcp can't reproduce a permission denial → this MCP shows the exact
dumpsys packagepermission state and recent grants.
Install
Claude Desktop
{
"mcpServers": { "android": { "command": "npx", "args": ["-y", "@us-all/android-mcp"], "env": { "ANDROID_MCP_ALLOW_WRITE": "true" } } } }
Claude Code
claude mcp add android -s user \
-e ANDROID_MCP_ALLOW_WRITE=true \ -e ANDROID_MCP_ALLOW_SHELL=true \ -- npx -y @us-all/android-mcp
Docker
docker run --rm \
--device /dev/bus/usb \ -e ANDROID_MCP_ALLOW_WRITE=true \ ghcr.io/us-all/android-mcp-server:latest
Build from source
git clone https://github.com/us-all/android-mcp-server.git
cd android-mcp-server && pnpm install && pnpm build node dist/index.js
Prerequisites
- ADB installed and on
PATH(or setADB_PATH) - Android device or emulator with USB debugging enabled
- For multi-device setups:
ANDROID_SERIAL=to target a specific one
Configuration
| Variable | Required | Default | Description |
|---|---|---|---|
ANDROID_HOME | ❌ | auto-detect | Android SDK path |
ADB_PATH | ❌ | adb (PATH) | Path to ADB binary |
ANDROID_SERIAL | ❌ | auto (single device) | Target device serial |
ANDROID_MCP_ALLOW_WRITE | ❌ | false | Enable write operations (install, tap, push) |
ANDROID_MCP_ALLOW_SHELL | ❌ | false | Enable arbitrary adb shell execution |
ANDROID_TOOLS | ❌ | — | Comma-sep allowlist of categories. Biggest token saver. |
ANDROID_DISABLE | ❌ | — | Comma-sep denylist. Ignored when ANDROID_TOOLS is set. |
MCP_TRANSPORT | ❌ | stdio | http to enable Streamable HTTP transport |
MCP_HTTP_TOKEN | conditional | — | Bearer token. Required when MCP_TRANSPORT=http |
MCP_HTTP_PORT | ❌ | 3000 | HTTP listen port |
MCP_HTTP_HOST | ❌ | 127.0.0.1 | HTTP bind host (DNS rebinding protection auto-enabled for localhost) |
MCP_HTTP_SKIP_AUTH | ❌ | false | Skip Bearer auth — e.g. behind a reverse proxy that handles it |
Categories (9): device, apps, ui, logcat, emulator, files, system, debug, shell (always-gated by ANDROID_MCP_ALLOW_SHELL), plus always-on meta.
When MCP_TRANSPORT=http: POST /mcp (Bearer-auth JSON-RPC) + GET /health (public liveness).
Token efficiency
| Scenario | Tools | Schema tokens | vs default |
|---|---|---|---|
| default (all categories) | 76 | 9,200 | — |
typical (ANDROID_TOOLS=device,ui,apps,logcat) | 37 | 5,000 | −46% |
narrow (ANDROID_TOOLS=device,ui) | 19 | 2,500 | −73% |
Plus search-tools meta-tool (always enabled) for runtime tool discovery.
Read-only mode (default)
By default, only read operations are permitted. Write operations (tap, install-app, push-file, etc.) return an error unless ANDROID_MCP_ALLOW_WRITE=true. Shell command execution requires a separate ANDROID_MCP_ALLOW_SHELL=true for additional security — even with write enabled, raw shell stays blocked unless this is explicitly set.
MCP Prompts (5)
Workflow templates available via MCP prompts/list:
crash-investigation— pull crash logs + stack frames + recent permission changes for a target package.memory-leak-detection— track heap delta over a window; cluster by allocator.ui-element-locator— find a UI element by visual + accessibility hints; return tap coordinates.app-startup-profile— cold-start profile: activity launch + fragment init + first frame.permission-audit— flag dangerous permissions held by under-used 3rd-party apps.
MCP Resources
URI-based read-only entities:
android://devices— connected devicesandroid://device/{serial}— device details (model/brand/version/display)android://app/{packageName}/activities— activities exposed by a package (exported/launchable flags)android://device/{serial}/processes— running processes
Tools (76)
9 categories. Use search-tools to discover at runtime; full list collapsed below.
| Category | Tools |
|---|---|
| System (battery / network / settings / display / orientation / port-fwd / wifi / mobile-data) | 19 |
| Apps (install / launch / permissions / intents / data clear) | 14 |
| UI (tap / swipe / screenshot / hierarchy / accessibility / annotated tap-by-index / screen recording) | 14 |
| Emulator (AVD start/stop, snapshot mgmt) | 7 |
| Device (list / info / properties / wireless connect) | 5 |
| Debug (bugreport / mem / gfx / cpu / doctor) | 5 |
| Logcat (capture / filter / clear / crash extract) | 4 |
| Files (list / pull / push / delete) | 4 |
Shell (gated execute-shell) | 1 |
Aggregations (device-health, analyze-app) | 2 |
Meta (search-tools) | 1 |
Full tool list
Device (5)
list-devices, get-device-info, get-device-properties, connect-device, disconnect-device
Apps (14)
list-packages, get-package-info, install-app, uninstall-app, launch-app, stop-app, clear-app-data, grant-permission, revoke-permission, open-url, send-broadcast, get-current-activity, is-app-installed, get-app-intents
UI Automation (14)
take-screenshot, dump-ui-hierarchy, ui-snapshot-a11y, tap, long-press, swipe, input-text, press-key, drag-and-drop, start-screen-recording, pull-screen-recording, double-tap, take-annotated-screenshot, tap-element
Logcat (4)
get-logcat, clear-logcat, search-logcat, get-crash-logs
Emulator (7)
list-avds, start-emulator, stop-emulator, list-snapshots, load-snapshot, save-snapshot, delete-snapshot
Files (4)
list-files, pull-file, push-file, delete-file
System (19)
get-battery-info, get-network-info, change-setting, get-setting, set-display-size, set-display-density, keep-screen-on, port-forward, reverse-forward, list-forwards, remove-forward, toggle-wifi, toggle-mobile-data, open-notification, lock-device, unlock-device, get-orientation, set-orientation, list-settings
Debug (5)
bugreport, get-mem-info, get-gfx-info, get-cpu-info, doctor
Shell (1)
execute-shell — gated by ANDROID_MCP_ALLOW_SHELL
Aggregations
device-health — battery + memory + cpu + network in one call (~7KB response, 4 sub-systems with caveats). analyze-app — package info + memory + activities aggregation.
Meta
search-tools — query other tools by keyword; always enabled.
Architecture
Claude → MCP stdio → src/index.ts
├── adb.ts (execFile wrapper) ├── tools/utils.ts (wrapToolHandler, shellEscape, validation) └── tools/{device,apps,ui,logcat,emulator,files,system,debug,shell,aggregations}.ts ↓ ADB CLI (USB / TCP-IP / Emulator) ↓ Android Device
Built on @us-all/mcp-toolkit:
extractFields— token-efficient response projections (skipped for ADB flat-array endpoints)aggregate(fetchers, caveats)— fan-out helper fordevice-health/analyze-appcreateWrapToolHandler—WriteBlockedError/ShellBlockedError