Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Descripción del creador (original en inglés)
Let AI agents see and control an Android phone over ADB, with safety guards.
Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.
Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.
Elige la app de IA que usas y copia la configuración.
ADB_SERIAL, ALLOW_SHELL, ALLOW_SENSITIVE, SENSITIVE_PACKAGES, RATE_LIMIT_PER_MIN, ADB_PATHNecesitas
¿Qué app usas?
Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.
Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json
{
"mcpServers": {
"android-use": {
"command": "npx",
"args": [
"-y",
"@ghostfacemodz/android-use"
],
"env": {
"ADB_SERIAL": "your-value",
"ALLOW_SHELL": "your-value",
"ALLOW_SENSITIVE": "your-value",
"SENSITIVE_PACKAGES": "your-value",
"RATE_LIMIT_PER_MIN": "your-value",
"ADB_PATH": "your-value"
}
}
}
}Ejecuta esto en tu terminal
claude mcp add android-use --env ADB_SERIAL=your-value --env ALLOW_SHELL=your-value --env ALLOW_SENSITIVE=your-value --env SENSITIVE_PACKAGES=your-value --env RATE_LIMIT_PER_MIN=your-value --env ADB_PATH=your-value -- npx -y @ghostfacemodz/android-useCompleta los valores vacíos antes de ejecutarlo.
Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json
{
"mcpServers": {
"android-use": {
"command": "npx",
"args": [
"-y",
"@ghostfacemodz/android-use"
],
"env": {
"ADB_SERIAL": "your-value",
"ALLOW_SHELL": "your-value",
"ALLOW_SENSITIVE": "your-value",
"SENSITIVE_PACKAGES": "your-value",
"RATE_LIMIT_PER_MIN": "your-value",
"ADB_PATH": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Pégalo en .vscode/mcp.json de tu proyecto
{
"servers": {
"android-use": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@ghostfacemodz/android-use"
],
"env": {
"ADB_SERIAL": "your-value",
"ALLOW_SHELL": "your-value",
"ALLOW_SENSITIVE": "your-value",
"SENSITIVE_PACKAGES": "your-value",
"RATE_LIMIT_PER_MIN": "your-value",
"ADB_PATH": "your-value"
}
}
}
}Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.
Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.
Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.
ADB_SERIAL envALLOW_SHELL envALLOW_SENSITIVE envSENSITIVE_PACKAGES envRATE_LIMIT_PER_MIN envADB_PATH envEsta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.
Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.
Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026
El nombre en el registro se verificó con la cuenta de GitHub GhostFaceModz, dueña del repo
Todavía no hemos leído este repo en GitHub
Todavía no hemos leído este repo en GitHub
Este se ejecuta en tu computadora; no hay endpoint en internet
Se ejecuta en tu computadora y usa ajustes locales en su lugar
Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet
Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.
Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.
El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.
Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).
El repo de GitHub cambió por última vez –, y la última versión (0.2.0) llegó al registro hace 17 días.
Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Node.js en tu computadora.
En la misma categoría: Spec Driven Development, Remote Desktop Commander, topo^alpin
Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.
Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Avalanche bulletins and mountain weather forecasts for any place in the Alps.
Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.
Let AI agents see and control an Android phone over ADB, with safety guards built in.
android-use is a Model Context Protocol (MCP) server. Any MCP-capable app (Claude Desktop, Claude Code, Cursor, Hermes Agent and others) can use it to take screenshots, read the on-screen UI, tap, swipe, type, press keys and launch apps on a real Android device. Since v0.3 it can also run as a remote connector: a private https://…/mcp URL you paste into Claude.ai, ChatGPT, Cursor, LibreChat, Open WebUI or LM Studio.
npx -y @ghostfacemodz/android-use # local (stdio) MCP server
npx -y @ghostfacemodz/android-use setup # guided setup as a remote connector (URL + key)
With a computer (Windows, macOS or Linux):
winget install Google.PlatformTools · brew install android-platform-tools · sudo apt install adb). npx -y @ghostfacemodz/android-use setup
It checks adb, finds your phone (and helps you adb pair / adb connect if needed), creates your own secret token, starts the server, and offers to open a public https:// link through a free Cloudflare quick tunnel (it downloads cloudflared for you). It then prints your connector URL, key and copy-paste configs.
npx -y @ghostfacemodz/android-use start --tunnel.With only the phone (no PC, no root): install Termux and run one command. See [docs/PHONE-ONLY.md](docs/PHONE-ONLY.md).
Just want a local MCP server for Claude Desktop / Cursor? Skip setup and use the stdio configs in Add it to your MCP client.
Formerly `android-adb-mcp`. The tools, environment variables and behaviour are unchanged; only the package name, binary name (
android-use) and MCP server name changed.
⚠️ Read [Safety](#safety) before you connect a phone you care about. An AI with this tool can do anything you could do by tapping the screen.
*Not affiliated with, endorsed by, or sponsored by Google, Android or Samsung. "Android" is a trademark of Google LLC.*
android-use is a small TypeScript wrapper around the adb command-line tool. It talks to your MCP client over stdio (default) or Streamable HTTP (--http, setup, start) and has two runtime dependencies (@modelcontextprotocol/sdk and zod).
Example: *"Open YouTube and search for lo-fi beats."*
current_app → com.sec.android.app.launcheropen_app { package: "com.google.android.youtube" }ui_dump → #4 ImageView [clickable] desc="Search" center=980,140 …tap_element { text: "Search" }type_text { text: "lo-fi beats" }, then key_event { key: "enter" }screenshot to check the resultYou talk to your AI assistant normally. It works out the steps and uses android-use to carry them out on your phone: it looks at the screen (ui_dump, screenshot), acts (open_app, tap_element, tap, swipe, type_text, key_event) and checks the result before moving on. The phone needs to be unlocked.
The full guide, with step-by-step walkthroughs, more prompts and limits for each use case, is in [docs/USE-CASES.md](docs/USE-CASES.md).
Put on a video or stream, start music, open navigation, or set an alarm or timer while your hands are busy.
*Real example:* an assistant connected to a phone over Tailscale and Wireless debugging opened a YouTube channel's newest video, then switched to another channel's live stream, all from a chat message while the owner was away from the phone.
Tips: ask for list_apps if you don't know an app's package name. type_text is ASCII-only, so searches with accents or emoji won't type. More detail →
Clear notifications, check for updates, or run the same daily flow, such as collecting a daily reward. Pair it with an AI agent that can run on a schedule (for example a cron job running Claude Code headless) to make it happen every morning.
swipe from the top edge → tap_element "Clear" → key_event homeopen_app → screenshot → tap_element "Collect" → key_event homeLimits: Google Play is on the sensitive-app list by default (it can make purchases), so use Play's own auto-update instead. Scheduled runs fail if the phone has locked. Respect each app's terms of service: many games and apps ban automation and can suspend accounts for it. More detail →
Use mobile-only features, such as TikTok's editor or Instagram Stories, without a third-party scheduler, because the assistant drives the real app.
ui_dump + swipe)Keep a human in the loop: have the assistant stop on the final screen and send a screenshot, and write or approve captions yourself. Emoji can't be typed. Respect platform rules on automated activity; no bulk liking, following or fake engagement. More detail →
If touchscreens are hard for you, you can control the phone by talking or typing to an AI in plain language, and have it read the screen back using ui_dump (on-screen text) and screenshot (images and anything unlabelled).
key_event back, swipe, key_event volume_down)Be realistic: this complements Android's built-in tools such as TalkBack and Voice Access; it doesn't replace them. Those run on the phone, work offline and work on the lock screen. android-use needs a computer, a connection, an AI service and an unlocked phone, and it's slower. More detail →
Fix a relative's settings from anywhere over Tailscale plus ADB debugging: turn the ringer back on, enlarge the text, or find a missing app icon. Set ADB_SERIAL to their phone so nothing else can be touched.
Always with their consent. They grant access by accepting the "Allow USB debugging?" prompt, and they can switch it off at any time by turning off USB/Wireless debugging or disconnecting Tailscale. Leave the sensitive-app guard on. More detail →
In short: anything you could do by tapping the unlocked screen, the AI can do too, within the limits of what ADB allows and the guards below. This is based on the code in src/; the full breakdown has more detail.
| Can | Can't | Off by default |
|---|---|---|
See the screen (screenshot) | Get past the lock screen or bypass your PIN | Raw shell tool (ALLOW_SHELL=1) |
Read the UI as text (ui_dump) | Root the phone or gain system privileges | Banking, payment, messaging and password apps (ALLOW_SENSITIVE=1) |
| Tap, long-press, swipe | Read apps' private data (chats, databases, saved logins) | Device allowlist: off until you set ADB_SERIAL (recommended) |
| Type text (printable ASCII only) | Do anything when USB and Wireless debugging are off | |
| Press keys (home, back, recents, volume, power, enter…) | Type emoji or non-ASCII text | |
| Open apps, list apps, see the foreground app | Hear or speak on phone calls |
What it can't do, in more detail. It can wake the screen but can't unlock it without your PIN, pattern or password. ADB runs as Android's limited shell user, so it can't root the phone or read other apps' private storage; it only sees what's on screen, and screens that apps mark as secure show up black. If USB and Wireless debugging are off, or the phone hasn't authorised your computer, nothing works.
Safety guards that exist in the code:
list_devices. The first entry is used by default.screenshot, ui_dump, tap, tap_element, swipe, long_press, type_text and most keys are refused while a sensitive app is in the foreground, and open_app won't launch one. Blocked by default: Google Wallet, Samsung Wallet/Pay, PayPal, Venmo, Cash App, Zelle, Coinbase, WhatsApp, Telegram, Signal, Google Messages, Samsung Messages, Messenger and Google Play, plus any package whose name contains bank, wallet, pay, finance, crypto, authenticator, messag, signal, keepass, bitwarden or 1password. Add more with SENSITIVE_PACKAGES. Home, back, recents and power always work. It matches package names, so it's a best-effort heuristic: many banking apps need adding by hand.1, the shell tool isn't registered at all. If enabled, it isn't covered by the sensitive-app guard.120 calls per rolling minute).Revoke access instantly: on the phone, turn off Wireless debugging or USB debugging (or unplug). For a full reset, use Developer options → Revoke USB debugging authorisations, disconnect Tailscale, or restart the phone (which ends adb tcpip sessions).
Recommended safe setup:
ADB_SERIAL to jSolo se muestra el principio; lee el resto en el repo