AppScreenMap MCP server
Commit 27. Okt. 2026Ermöglicht es einem AI Agent, Mobile App Screens zu mappen, die Barrierefreiheit zu prüfen und Android Emulatoren oder iOS Simulatoren zu navigieren.
Auch bekannt als MKS-01/appscreenmap
- Stars
- 3
- Tools
- 5
- Downloads, 30 Tage
- —
- Neueste Version
- —
- Letzter Commit
- 27. Okt. 2026
- Lizenz
- MIT
Was ist AppScreenMap MCP?
AppScreenMap ist ein MCP server. Ermöglicht es einem AI Agent, Mobile App Screens zu mappen, die Barrierefreiheit zu prüfen und Android Emulatoren oder iOS Simulatoren zu navigieren. Er stellt 5 Tools bereit, etwa route, where_am_i, go_to_screen.
Zusammenfassung generiert aus dem README des Projekts
Über AppScreenMap MCP server
AppScreenMap ermöglicht es Mobile Developern und QA Engineers, die Struktur mobiler Applikationen zu mappen und die Barrierefreiheit direkt aus einem AI Agent heraus zu prüfen. Durch die Verbindung zu einem Android Emulator oder iOS Simulator erlaubt der Server einem Agenten, Builds zu explorieren, Screens zu inventarisieren und Navigationspfade zu identifizieren – ganz ohne Quellcode, SDKs oder Test IDs. Er arbeitet als lokaler stdio Server, was bedeutet, dass er Run-Ordner auf deinem Rechner liest und mit deinen Geräten kommuniziert, ohne dass API Keys, Accounts oder externe Netzwerkaufrufe nötig sind.
User interagieren mit dem Server über Tools wie crawl zum Mappen einer App, route zum Finden von Navigationspfaden und a11y_findings zur Identifizierung von WCAG 2.2 Compliance-Problemen. Das System generiert einfache Dateien, einschließlich map.json und Performance-Reports, die von Clients wie Claude Desktop, Cursor oder VS Code abgefragt werden können. Dieses Setup erlaubt es einem Agenten, ein Gerät mittels go_to_screen zu spezifischen Screens zu steuern oder bestehende Pfade zu verifizieren, um sicherzustellen, dass bei einem neuen Build keine Regressions aufgetreten sind.
Was du damit machen kannst
- 1Mobile Accessibility Compliance prüfenLass deinen AI Agent den neuesten App-Run gegen die WCAG 2.2 AA Standards prüfen.
- 2Inventar der App-Screens erstellenLass einen Agenten eine neue APK explorieren, um ein vollständiges Inventar jedes Screens im Build zu erstellen.
- 3Builds auf Änderungen vergleichenNutze den Agenten, um zu identifizieren, welche Screens zwischen zwei verschiedenen Versionen hinzugefügt, entfernt oder geändert wurden.
Geschrieben aus dem README des Projekts. Jeder Use Case wurde gegen ein Zitat daraus geprüft.
AppScreenMap MCP tools 5
Erkannt aus dem READMEroutewhere_am_igo_to_screencrawlcrawl_status
| route | — | |
| where_am_i | — | |
| go_to_screen | — | |
| crawl | — | |
| crawl_status | — |
Automatisierte Checks
Geluften am 14. Nov. 2026Vollständiger Bericht →Noch nicht verifiziert. Ein Server benötigt einen Score von 80, keine kritischen Befunde und genug Daten für unsere Prüfung. Wie die Checks funktionieren · Was du für mehr Punkte verbessern kannst
- Source Repository verknüpft und erreichbarmks-01/appscreenmap is public and reachablegithub.com/mks-01/appscreenmap ↗Bestanden
- Paket nennt dieses Repository als QuelleNicht geprüft
- Build-Provenienz (Sigstore-Attestierung)Nicht geprüft
- Open Source Lizenz (OSI)MITspdx.org/licenses/MIT.html ↗Bestanden
- Commit oder Release im letzten JahrLast commit or release 2026-10-27github.com/mks-01/appscreenmap ↗Bestanden
- OpenSSF ScorecardNicht geprüft
- Package-Name ähnelt keinem populären PackageNicht geprüft
- Keine kritischen Advisories im Paket oder seinen AbhängigkeitenNicht geprüft
- Keine versteckten Anweisungen an das Modell5 tool descriptions and the README read; no override phrases, credential paths or hidden charactersBestanden
- Destruktive Tools sind markiertNo tool named like delete, drop or execBestanden
- Remote-Endpoint beantwortet den MCP-HandshakeNicht geprüft
README
Auf GitHub ansehenappscreenmap crawl --apk app.apk # explore the app, then run `appscreenmap` to browse the map
[!NOTE] Early alpha: the project is under active development and commands may change.
Know your app
Ask a team "how many screens does your app have, and how do I reach checkout?" and you get a guess. The answer lives in someone's head, a stale design file, or a test suite that breaks every sprint. AppScreenMap walks through the build you already ship and writes every screen down, so the answer is a file you can query, diff and build on.
- What is in this build? A complete screen inventory, including screens nobody remembers.
- How do I reach Settings? A route to every screen, for you and for your agent.
- What changed since the last release? Added, removed and changed screens, before release.
- Is it accessible, fast, secure, store-ready? WCAG 2.2, performance, store deadlines and security, each with the fix and an official source.
- What does the app talk to? The hosts it calls and its own log lines, tied to the screen you were on (
crawl --network,watch). - Did this build break a path?
verifyreplays every path and fails the CI job if one is gone.
It makes no model calls while it explores, so the same build gives the same map, and nothing leaves your machine. Android and iOS (iOS is beta).
Get started
Needs macOS, uv, Bun, and an Android emulator or device (adb),
or Xcode with a booted Simulator for iOS.
git clone https://github.com/MKS-01/appscreenmap && cd appscreenmap
make install # engine, dashboard and the `appscreenmap` command
appscreenmap setup # checks adb, devices, simulators; says what is missing
appscreenmap crawl --apk app.apk # explore the app
appscreenmap # terminal home + dashboard
No app handy? Press x in the terminal home to map the Playground sample app.
- Output is a run folder of plain files (
map.json,screens/,flows/,a11y.json,perf.json, reports).map.jsonis a versioned contract: docs/MAP_SCHEMA.md. - Another language: add
--locale fr-FR(orja,ar, …). Android 13+; on iOS the app is relaunched. - Commands:
appscreenmap --helplists them all. After pulling new code, runmake installagain.
AI agent and MCP
Everything can run through your AI agent. Press t in the terminal home for a new terminal in the same folder, run
claude, and ask in plain language:
Map my app on the emulator and review the map. Audit accessibility on the latest run at WCAG 2.2 AA. Map the new build and compare it with the last run. Two screens got merged in the last map. Fix it and map again.
The agent works through the MCP server, so it answers from the map instead of exploring the app again, and its work shows up live in the dashboard:
You: How do I reach Settings? Agent →
route("Settings"): From launch: tap Profile, then tap Settings. Here is the test flow. You: Take the emulator there. Agent →go_to_screen("Settings")→where_am_i(): Done, the device is on Settings.
Connect
appscreenmap mcp serves your mapped runs to any MCP client (Claude Code, Claude Desktop, Cursor, VS Code, …). It
is a local stdio server: it reads runs/ on your machine and talks to your emulator or Simulator, with no account,
no API key and no network calls.
claude mcp add appscreenmap -- appscreenmap mcp
Other clients take the same command in their MCP config:
{ "mcpServers": { "appscreenmap": { "command": "appscreenmap", "args": ["mcp"] } } }
Options: --runs <dir> (default ./runs), --run <run-id> (default: the latest finished run), --serial <device>.
Tools
| Tool | Answers | Kind |
|---|---|---|
list_runs, list_screens, find_screens |
What has been mapped; which screen is "Settings" or has a "Save" button | read-only |
get_screen, screenshot |
One screen: elements and where each leads, how to reach it, findings, load time, image | read-only |
route |
Steps to a screen, from launch or another screen (with its test flow) | read-only |
a11y_findings, perf_summary |
Which screens fail which WCAG 2.2 criteria; which are slow | read-only |
where_am_i |
Which mapped screen the device shows now | read-only |
go_to_screen |
Drive the device to a screen along its route | drives the device |
crawl |
Map an app (or a new build) in the background | drives the device |
crawl_status |
Follow a running map | read-only |
Tools carry MCP annotations (readOnlyHint, destructiveHint), so clients can ask before go_to_screen and crawl,
the two that drive the device. More in docs/SETUP.md.
Dashboard
appscreenmap serve opens it on runs/. No backend; it updates live while it maps.
- Insights: scored audits with findings, fixes and official sources
- Map: every screen as a tree, graph or storyboard. Comment, add planned screens, file screens the crawl missed, rename, move or remove; edits go in
notes.jsonand the mapped data is never touched - Screens: search, tappable overlays, transitions, the test flow
- Accessibility: findings per rule with screenshots; triage them, export a WCAG 2.2 report
- Network · Logs: the hosts the app called and its own log lines, with sessions you recorded by hand
- Compare: what changed between two builds
- Crawl replay: step through what was tapped and why
Export the map as one self-contained SVG (every screenshot inside) or Markdown/CSV from the dashboard, or take the files
straight from the run: test flows (flows/, Maestro format), a Mermaid graph (map.mmd), a one-file WCAG report
(a11y-report.html, evidence not a conformance claim), and map.json / a11y.json / perf.json.
License
Open source under the MIT License. © 2026 MKS and AppScreenMap contributors.
Built with Claude Code.
AppScreenMap MCP Fragen
Welche Tools bietet AppScreenMap MCP?
Er stellt 5 Tools bereit, darunter route, where_am_i, go_to_screen, crawl, crawl_status.
Benötigt AppScreenMap ein SDK oder den Quellcode?
Nein, es funktioniert ohne SDK, Test IDs oder Zugriff auf den Quellcode.
Wie geht der MCP server mit Daten und Datenschutz um?
Es ist ein lokaler stdio Server, der Dateien auf deinem Rechner liest und mit deinem Emulator kommuniziert, ohne dass Netzwerkaufrufe oder Accounts erforderlich sind.
Welche Arten von Audits kann das Tool durchführen?
Das Tool bietet Audits für WCAG 2.2 Accessibility, Performance, Store Readiness und Security.
Kann der AI Agent das mobile Gerät steuern?
Ja, der Agent kann Tools wie go_to_screen nutzen, um das Gerät über die gemappte Route zu einem bestimmten Screen zu steuern.