프로토타입 · 미리 보기: 공식 레지스트리의 모든 서버를 담고 있으며 30분마다 동기화해요. 리뷰와 계정 기능은 다음 단계에서 열려요.
PopNx MCPAI를 쓰는 사람을 위한 MCP 서버 · 쉬운 말로 설명해요

Android

제작자: us-all버전 1.14.4i★ –i내 컴퓨터에서 실행
레지스트리 이름io.github.us-all/android

설치

개요

제작자가 쓴 설명(영어 원문)

Android MCP — ADB-based device, apps, UI, logcat, emulator, files, system, debug

PopNx MCP의 세 기둥

이 세 가지는 절대 하나의 점수로 합치지 않아요. 의견, 측정, 인기는 서로 다른 것이니까요.

할 수 있는 일

이 서버는 아직 쉬운 말로 된 요약을 쓰지 못했어요. 아래는 레지스트리에서 읽어 온 사실이에요.

  • 연결 방식: 내 컴퓨터에서 실행
  • 전송 방식: stdio
  • 카테고리: 기타

설치

쓰고 있는 AI 앱을 고른 다음 설정을 복사하세요.

설치하기 전에

  • 기본 점검: 1개 중 1개 통과
  • 내 컴퓨터에서 내 사용자 계정의 권한(파일, 네트워크, 앱)으로 실행돼요.
  • 직접 입력할 값: 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에서 열기

또는 설정을 직접 복사하기

프로젝트의 .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"
      }
    }
  }
}

브라우저가 앱을 열지 물어본 다음, 앱이 설정을 보여 주고 확인을 요청해요. 키 값은 비워 두니 직접 입력하세요.

VS Code에서 열기

또는 설정을 직접 복사하기

프로젝트의 .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는 인터넷에 있는 서버에만 연결할 수 있어요. 다른 앱을 고르세요.

선택한 앱은 이 기기의 쿠키에만 저장돼요. 계정은 필요 없어요.

직접 입력할 값

  • ADB_PATH env
    Path to adb binary. Default: 'adb' on PATH.
  • ANDROID_HOME env
    Android SDK root. Used to resolve adb if ADB_PATH not set.
  • ANDROID_SERIAL env
    Default device serial when multiple devices are connected.
  • ANDROID_TOOLS env
    Comma-separated category allowlist. Default: all categories enabled.
  • ANDROID_DISABLE env
    Comma-separated category disablelist.
  • ANDROID_MCP_ALLOW_SHELL env
    Set to 'true' to enable arbitrary shell command execution. Default disabled.
  • ANDROID_MCP_ALLOW_WRITE env
    Set to 'true' to enable write/destructive tools. Default read-only.

이 설정은 제작자의 레지스트리 정보로 만들었어요. README와 다르면 README를 따르세요.

할 수 있는 일

내 컴퓨터에서 실행돼요. 설치하면 AI 앱에 도구 목록이 나타나요.

기본 점검i

누구나 볼 수 있는 정보를 점검했고, 코드는 읽지 않았어요. 해당하지 않는 항목은 개수에서 뺐어요. · 2026년 11월 6일 점검

  • ✓ 통과

    제작자와 저장소 일치

    레지스트리 이름이 GitHub 계정 us-all 기준으로 확인되었고, 이 계정이 저장소를 소유하고 있어요

  • … 아직 점검 안 함

    계속 관리되고 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • … 아직 점검 안 함

    라이선스 있음

    아직 GitHub에서 이 저장소를 읽어 오지 않았어요

  • – 해당 없음

    엔드포인트 응답

    내 컴퓨터에서 실행되는 서버라 인터넷 엔드포인트가 없어요

  • – 해당 없음

    OAuth로 로그인

    내 컴퓨터에서 실행되며, 대신 로컬 설정을 사용해요

  • … 아직 점검 안 함

    도구 설명에 숨겨진 지시 없음

    내 컴퓨터에서 실행돼요. 도구 목록은 인터넷 엔드포인트가 있는 서버에서만 읽을 수 있어요

기타 카테고리의 다른 서버와 비교i

  • 이 카테고리의 다른 서버 32476개 중 0%보다 스타가 많아요
  • 이 카테고리의 다른 서버 32476개 중 13%보다 최근에 레지스트리에 공개됐어요
  • 기본 점검 결과가 이 카테고리의 다른 서버 32476개 중 100%와 같거나 더 좋아요

레지스트리에서 이 카테고리의 활성 서버 전체와 비교했어요. 스타는 게시자가 저장소를 소유한 경우에만 세요.

자주 묻는 질문

Android, 안전한가요?

해당하는 기본 점검 1개 중 1개를 통과했어요. 코드는 읽지 않았어요. 키나 토큰을 넣기 전에 서버가 어떤 권한을 요구하는지 확인하고, 꼭 필요한 권한만 있는 키를 쓰세요.

어떤 키나 코드가 필요한가요?

레지스트리에 필수 키가 나와 있지 않아요. 다만 처음 쓸 때 로그인을 요구하는 서버도 있어요.

내 컴퓨터에서 실행되나요, 클라우드에서 실행되나요?

내 컴퓨터에서 실행돼요. AI 앱이 필요할 때 실행하고, 데이터는 제작자의 서버를 거치지 않아요(서버 자체가 온라인 서비스를 호출하는 경우는 제외).

아직 관리되고 있나요?

GitHub 저장소는 마지막으로 – 변경됐고, 최신 버전(1.14.4)은 5개월 전 레지스트리에 올라왔어요.

어떤 앱에서 쓸 수 있나요?

Claude Desktop, Claude Code, Cursor, VS Code처럼 MCP를 지원하는 앱에서 쓸 수 있어요. 내 컴퓨터에 Node.js도 있어야 해요.

대신 쓸 수 있는 건 뭐가 있나요?

같은 카테고리에는: Spec Driven Development, Remote Desktop Commander, zanadir

대안

같은 카테고리에서 다른 제작자가 만든 서버예요. 스타 순으로 정렬했어요.

카드 보는 법:★ GitHub 스타i세 기둥: 리뷰 · 점검 · 사용 정도i업데이트 = 최신 버전을 레지스트리에 공개한 날i

Spec Driven Development

제작자: formulahendry

MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.

내 컴퓨터에서 실행★ 440MIT14개월 전 업데이트
설치

Remote Desktop Commander

제작자: desktop-commander

Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.

클라우드에서 실행★ 211어제 업데이트
설치

zanadir

제작자: MustacheCase

Find what a repository's CI is missing, and which security checks cannot fail the build.

내 컴퓨터에서 실행오늘 업데이트
설치

제작자의 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-health aggregation. 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) and ANDROID_MCP_ALLOW_SHELL (gates arbitrary adb 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_DISABLE 9 categories, search-tools meta.
  • Apps SDK card — device-health renders 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=http for ChatGPT Apps SDK or remote clients (Bearer auth via MCP_HTTP_TOKEN).

Try this — 5 prompts

Connect the server to Claude Desktop or Claude Code, then paste any of these:

  1. Crash investigation — *"My app com.us-all.api keeps crashing on this Pixel 6 emulator. Pull the last crash log, the offending stack frames, and any recent permission changes."*
  2. Memory leak detection — *"Trace memory growth for com.us-all.api over the last 5 minutes. Show heap deltas, GC pressure, and the largest allocators."*
  3. Battery drain attribution — *"What's draining battery on this device? Top 5 consumers, duration of each, and current battery health."*
  4. 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."*
  5. 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)
PlatformiOS + Android (cross-platform)Android only (specialist)
PostureAction-oriented ("drive the app via NL")Diagnostic ("tell me why it broke")
UI surfaceAccessibility-tree-first, action loopsUI hierarchy + screenshots + diagnostic dumps
Diagnostic depthminimallogcat / dumpsys / getprop / processes / crashes
Aggregations—device-health, analyze-app
MCP Prompts—5 (diagnostic-themed)
Security gatesbasic2-tier (write + shell separate)
Distributionbroad (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 package permission 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 set ADB_PATH)
  • Android device or emulator with USB debugging enabled
  • For multi-device setups: ANDROID_SERIAL= to target a specific one

Configuration

VariableRequiredDefaultDescription
ANDROID_HOME❌auto-detectAndroid SDK path
ADB_PATH❌adb (PATH)Path to ADB binary
ANDROID_SERIAL❌auto (single device)Target device serial
ANDROID_MCP_ALLOW_WRITE❌falseEnable write operations (install, tap, push)
ANDROID_MCP_ALLOW_SHELL❌falseEnable 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❌stdiohttp to enable Streamable HTTP transport
MCP_HTTP_TOKENconditional—Bearer token. Required when MCP_TRANSPORT=http
MCP_HTTP_PORT❌3000HTTP listen port
MCP_HTTP_HOST❌127.0.0.1HTTP bind host (DNS rebinding protection auto-enabled for localhost)
MCP_HTTP_SKIP_AUTH❌falseSkip 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
ScenarioToolsSchema tokensvs default
default (all categories)769,200—
typical (ANDROID_TOOLS=device,ui,apps,logcat)375,000−46%
narrow (ANDROID_TOOLS=device,ui)192,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 devices
  • android://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.

CategoryTools
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 for device-health / analyze-app
  • createWrapToolHandler — WriteBlockedError/ShellBlockedError

앞부분만 보여 드려요. 나머지는 저장소에서 읽어 보세요

PopNx에게 묻기