Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Beschreibung vom Entwickler (englisches Original)
Desktop UI automation for AI agents: verified clicks, UI Automation, OCR, scenario runs, recording
Diese drei werden nie zu einer Punktzahl zusammengefasst: Meinungen, Messungen und Beliebtheit sind verschiedene Dinge.
Für diesen Server haben wir noch keine Zusammenfassung in einfacher Sprache geschrieben. Unten stehen die Fakten, die wir aus der Registry gelesen haben.
Wähle die KI-App, die du nutzt, und kopiere die Einstellungen.
MCP_LOG_DIR, MCP_LOG_MAX_MB, MCP_LOG_RETAIN_DAYS, MCP_SEARCH_DIRS, MCP_LAUNCH_APPS, MCP_NOTIFY, MCP_INPUT_LOCK, MCP_INPUT_LOCK_STALL_MSWelche App nutzt du?
Wähle oben deine App. Wir merken sie uns, damit der Button beim nächsten Mal „In … installieren“ anzeigt.
Die .mcpb-Datei des Entwicklers herunterladen
Der Link führt zur Datei des Entwicklers selbst; wir hosten sie nicht und verpacken sie nicht neu. Öffne die Datei, dann installiert Claude Desktop sie.
Führe das in deinem Terminal aus
Trag die leeren Werte ein, bevor du ihn startest.
Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dein Browser fragt, ob er die App öffnen darf, dann zeigt die App die Einstellungen und bittet dich um Bestätigung. Schlüsselwerte bleiben leer, damit du sie selbst einträgst.
Dieser Server läuft auf deinem Computer, und ChatGPT kann sich nur mit Servern im Internet verbinden. Wähle eine andere App.
Deine Auswahl bleibt in einem Cookie auf diesem Gerät; kein Konto nötig.
MCP_LOG_DIR envMCP_LOG_MAX_MB envMCP_LOG_RETAIN_DAYS envMCP_SEARCH_DIRS envMCP_LAUNCH_APPS envMCP_NOTIFY envMCP_INPUT_LOCK envMCP_INPUT_LOCK_STALL_MS envDiese Einstellungen werden aus dem Registry-Eintrag des Entwicklers erzeugt. Wenn in der README etwas anderes steht, folge der README.
Läuft auf deinem Computer; die Tool-Liste erscheint nach der Installation in deiner KI-App.
Wir prüfen Informationen, die jeder sehen kann; den Code haben wir nicht gelesen. Checks, die nicht zutreffen, werden nicht mitgezählt. · Geprüft am 7. Nov. 2026
Der Registry-Name wurde mit dem GitHub-Konto JeenyJAI bestätigt, dem das Repo gehört
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieses Repo haben wir noch nicht von GitHub gelesen
Dieser Server läuft auf deinem Computer; es gibt keinen Endpunkt im Internet
Läuft auf deinem Computer und nutzt stattdessen lokale Einstellungen
Läuft auf deinem Computer; Tool-Listen können wir nur von Endpunkten im Internet lesen
Verglichen mit allen aktiven Servern dieser Kategorie in der Registry. Sterne zählen nur, wenn dem Herausgeber das Repo gehört.
Er hat 1 von 1 zutreffenden Basischecks bestanden. Den Code haben wir nicht gelesen. Bevor du einen Schlüssel oder Token hinzufügst, sieh nach, welche Zugriffe der Server verlangt, und nutze einen Schlüssel, der nur die Berechtigungen hat, die du brauchst.
Die Registry nennt keinen erforderlichen Schlüssel, manche Server bitten dich aber bei der ersten Nutzung, dich anzumelden.
Er läuft auf deinem Computer. Deine KI-App startet ihn bei Bedarf, und die Daten laufen nicht über die Server des Entwicklers (außer der Server ruft selbst einen Onlinedienst auf).
Das GitHub-Repo wurde zuletzt – geändert, und die neueste Version (3.27.23) kam vor 19 Tagen in die Registry.
Apps, die MCP unterstützen, etwa Claude Desktop, Claude Code, Cursor und VS Code. Außerdem brauchst du MCPB auf deinem Computer.
In derselben Kategorie: Spec Driven Development, Remote Desktop Commander, 好縮 Short
Server derselben Kategorie von anderen Entwicklern, sortiert nach Sternen.
So liest du eine Karte:★ GitHub-SterneiDrei Säulen: Bewertungen · Checks · NutzungiAktualisiert = neueste Version in der Registry veröffentlichti
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.
Smart URL shortener: create, tag and track short links on s.gooo.name.
Unverändert aus dem Repo des Entwicklers übernommen. PopNx MCP hat den Inhalt weder geprüft noch empfiehlt es ihn. HTML, Bilder und Skripte wurden entfernt. Links führen von dieser Website weg.
MCP server for automated desktop UI testing. A single binary — no runtime, no dependencies, no installer.
Windows x64 only. There are no macOS or Linux builds yet. If you need one, write to
JeenyJAI@gmail.com: requests decide what comes next.
Gives AI agents eyes and hands: screenshots, window management, mouse, keyboard, UI Automation, OCR, file search. Replays saved scenarios as regression runs — after every build, without an agent. Records what you do into a draft scenario, checks accessibility, watches the resources of the application under test.
AI agents can trigger actions in applications but can't see the screen. This server bridges that gap:
Agent triggers action → takes screenshot → sees the result →
switches window → clicks a button → verifies → writes report
Fully autonomous, no user involvement required.
3.26 — Scenario run
Claude replays a saved test: 232 steps, one call, 66 s
Installation and setup
Setting up the server and the basic tools
mcp-test-utils.exe from Releases (the .sig file next to it is for the built-in updater — you do not need it).Claude Desktop: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": { "test-utils": { "command": "D:\\path\\to\\mcp-test-utils.exe" } } }
Claude Code:
claude mcp add test-utils -- "D:\path\to\mcp-test-utils.exe"
For other clients, see their documentation.
Optional settings (logging, file search, starting programs) go into env — see Environment variables:
{
"mcpServers": { "test-utils": { "command": "D:\\path\\to\\mcp-test-utils.exe", "env": { "MCP_LOG_DIR": "D:\\path\\to\\logs", "MCP_SEARCH_DIRS": "D:\\Projects\\app1;D:\\Projects\\app2", "MCP_LAUNCH_APPS": "C:\\Program Files\\MyApp\\myapp.exe" } } } }
Four of them appear only when configured: search_in_files and find_files with MCP_SEARCH_DIRS, enable_logging and disable_logging with MCP_LOG_DIR — by default the server lists 27 tools.
| Tool | Description |
|---|---|
take_screenshot | Screenshot of the entire desktop; quality presets from full to minimal (fewer tokens) |
take_window_screenshot | Screenshot of a specific window |
read_screen_text | OCR the entire screen (Windows OCR) |
read_region_text | OCR a screen region with precise word coordinates |
| Tool | Description |
|---|---|
list_windows | List windows with id, title, app, process id, position, size, state |
focus_window | Bring a window to the front and restore it if minimized; optionally set its position and size |
launch_app | Start a program from the allowlist of the server config (MCP_LAUNCH_APPS) and wait for its window |
close_window | Close a window as its X button would and wait until it is gone; reports a "Save changes?" prompt |
| Tool | Description |
|---|---|
mouse_click | Click an element by id or at coordinates (left / right / middle, double); can wait for the expected effect and retry |
mouse_move | Move the cursor to a point or to a UI element |
mouse_drag | Drag between elements or points at a human pace (HTML5 drag-and-drop works) |
mouse_scroll | Scroll the mouse wheel over an element and wait until the scrolling stops |
keyboard_type | Type text (full Unicode — Latin, Cyrillic, CJK, emoji) and check that the field shows what was typed |
keyboard_press | Press a key (Enter, Tab, F1–F12, arrows, etc.), optionally several times |
keyboard_shortcut | Press a key combination (Ctrl+S, Alt+F4, Ctrl+Shift+P, etc.) |
| Tool | Description |
|---|---|
list_ui_elements | UI Automation tree — buttons, fields, menus with ids, values, states and exact coordinates; filters by name, value, class |
get_focused_element | Which element has keyboard focus now, and in which window |
read_text | Full text of a document or field through UI Automation (up to 100 000 characters per call), no OCR |
ui_action | Act on an element without mouse or keyboard: invoke, toggle, expand, select an option, set a value, scroll into view |
check_accessibility | Accessibility defects: unnamed controls, controls the Tab key cannot reach, duplicate ids, zero-size controls |
| Tool | Description |
|---|---|
process_info | Memory, handles, GDI objects, threads and CPU of the app under test — call it repeatedly to spot leaks |
| Tool | Description |
|---|---|
wait_for | Wait for a window, an element or its state instead of sleeping |
batch | Run up to 20 tool calls in one request, with find and assert steps |
run_scenario | Replay a saved scenario, a suite or data rows and get a pass/fail report (see Regression runs) |
record_scenario | Record what you do in one window into a draft scenario (see Recording) |
| Tool | Description |
|---|---|
search_in_files | Search text or regex in files within allowed directories (like VS Code Find in Files) |
find_files | Find files and directories by name pattern (glob), like "Go to File" |
| Tool | Description |
|---|---|
get_usage_guide | Usage guide for agents: core rules + sections on request |
prepare_feedback | Prepare a suggestions file for the author (personal data masked; you review it and send it by email — nothing is sent automatically) |
| Tool | Description |
|---|---|
enable_logging | Start recording tool calls to JSONL + screenshots (opt-in) |
disable_logging | Stop recording, get session stats |
An agent finds a path through your application once and saves it as a scenario — a JSON file. After that the scenario replays without an agent: fast, the same way every time, no tokens spent.
mcp-test-utils --check order-form.json # validate the file, touch nothing
mcp-test-utils --run order-form.json # run: report in the console and in order-form.report.json
0 — passed, 1 — a step failed, 2 — did not run. Ready for a CI job after each build.run_scenario(path) and learns the format from get_usage_guide(section: "scenarios").--suite runs several scenario files in order with one summary; --data rows.csv runs a scenario once per row (columns become variables); --junit report.xml adds JUnit XML for CI. mcp-test-utils --suite regress.suite.json --junit regress.xml
Do the steps yourself and get a draft scenario instead of describing them to an agent:
mcp-test-utils --record order-form.json --app myapp
Only that window and its dialogs are recorded, with a notice on screen; Ctrl+Alt+Shift+R (or Enter in the console) stops the recording. Password fields are never read; text typed into a terminal is recorded only with --keys-text. An agent can start the same recording with record_scenario.
| Variable | Description | Default |
|---|---|---|
MCP_LOG_DIR | Path for log sessions. Without it, logging tools are hidden | — |
MCP_LOG_MAX_MB | Session size limit (warning when exceeded) | 500 |
MCP_LOG_RETAIN_DAYS | Auto-delete sessions older than N days. 0 to disable | 30 |
MCP_SEARCH_DIRS | Allowed directories for search_in_files and find_files (separated by ;). Without it, both are hidden | — |
MCP_LAUNCH_APPS | Programs (.exe files or folders, separated by ;) that launch_app may start. Shells, script hosts and interpreters are refused even when listed. Without it, launch_app starts nothing | — |
MCP_NOTIFY | off hides the tray icon and the live call log window | — |
MCP_INPUT_LOCK | off disables the keyboard and mouse lock while the server sends input | — |
MCP_INPUT_LOCK_STALL_MS | Server silence (ms) after which the lock releases your input | 60000 |
MCP_NOTIFY=off hides it.MCP_INPUT_LOCK=off turns the lock off.If an agent hits a gap in the tools, it offers to prepare a short suggestions file (prepare_feedback). The file goes to Documents\mcp-test-utils feedback\, with personal data masked and no screenshots; review it and email it to JeenyJAI@gmail.com. Nothing is sent automatically.
check_accessibility finds unnamed controls, controls the Tab key cannot reach, duplicate idsprocess_info shows handles and GDI objects growing across repeated calls%LOCALAPPDATA%\mcp-test-utils\ and an update you installNur der Anfang wird gezeigt; den Rest findest du im Repo