ShadowRun
ShadowRun
Ein lokaler, stdio-basierter Proxy für MCP-Server, der lokal priorisiert. Er sitzt zwischen einem KI-Agenten (Claude Code, Cursor, etc.) und einem echten MCP-Server, fängt destruktive Tool-Aufrufe (Schreibvorgänge, Löschungen, SQL-Mutationen, ...) ab, bevor sie ausgeführt werden, und hält sie im Speicher, bis Sie sie von einem lokalen Dashboard aus committen oder verwerfen.
Im Gegensatz zu einem naiven „Fake-Erfolg“-Interceptor antwortet ShadowRun nicht an den Agenten, bis ein abgefangener Aufruf aufgelöst ist. Das Vortäuschen einer Antwort (z. B. für ein INSERT ... RETURNING id) lässt den Agenten auf Daten reagieren, die noch nicht existieren, und entfernt seinen Glaubenszustand von der Realität — daher warten abgefangene Aufrufe einfach (mit einem Timeout).
Umfang (v0.1)
Dies ist bewusst eng gefasst: ein CLI für einzelne Entwickler für lokale MCP-Server (Postgres, Dateisystem, etc.) zur Verwendung mit Claude Code / Cursor. Es ist kein Team-Richtliniendurchsetzungs-Gateway, hat keine Authentifizierung und keine Persistenz über Neustarts hinweg — siehe Einschränkungen unten, bevor Sie sich für etwas anderes als Ihren eigenen Rechner darauf verlassen.
Related MCP server: Agentrim MCP
Installation und Ausführung
npm install
npm run buildKonfigurieren Sie Ihren Agenten so, dass er auf den Proxy anstatt auf den echten Server zeigt:
{
"mcpServers": {
"postgres": {
"command": "node",
"args": [
"/path/to/shadowrun-mcp/dist/index.js",
"npx", "-y", "@modelcontextprotocol/server-postgres",
"postgresql://localhost:5432/devdb"
]
}
}
}Öffnen Sie http://127.0.0.1:4040, um ausstehende Mutationen zu sehen, und Commit oder Discard jede einzelne. Schreibgeschützte Aufrufe (get*, list*, search*, ...) werden sofort durchgelassen und erscheinen nie im Dashboard.
Wie die Klassifizierung funktioniert
Siehe src/interceptor.ts — DEFAULT_CONFIG. Ein Tool-Aufruf wird abgefangen, wenn sein Name einem mutierenden Verb-Muster (write, delete, create, ...) entspricht und nicht zuerst einem sicheren Lesemuster, oder wenn ein Zeichenfolgenargument ein SQL-Mutationsschlüsselwort (insert into, drop table, ...) enthält. Dies ist eine Heuristik, keine Garantie — siehe Einschränkungen.
Einschränkungen
Heuristischer Klassifizierer. Regex auf Toolnamen und Argumenttext wird clever benannte mutierende Tools übersehen und könnte seltsam benannte Lese-Tools zu viel abfangen. Behandeln Sie dies als Geschwindigkeitsbegrenzung, nicht als Sicherheitsgrenze.
Keine Authentifizierung im Dashboard. Es bindet nur an
127.0.0.1, aber jeder lokale Prozess (oder eine bösartige Seite, die DNS-Rebinding durchführt, theoretisch), der diesen Port erreichen kann, kann Commit/Discard ausführen. Führen Sie dies nicht auf einem gemeinsam genutzten oder nicht vertrauenswürdigen Rechner aus.Nur im Speicher. Ein Neustart des Proxys verwirft alle ausstehenden Mutationen — der ursprüngliche Aufruf des Agenten wird einfach timeouten.
Einzelner Entwickler, lokale Nutzung. Es gibt kein gemeinsames Audit-Log oder eine teamweite Richtliniendurchsetzung. Wenn Sie das benötigen, schauen Sie sich stattdessen ein gehostetes MCP-Gateway an.
Lizenz
AGPL-3.0
This server cannot be deployed
Maintenance
Related MCP Connectors
Security & DLP proxy for MCP: tool-poisoning scans, PII redaction on tool args/results. Beta.
MCP server for progressive tool usage at any scale (see https://klavis.ai)
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
Security scanner for MCP servers. Detect vulnerabilities, prompt injection, and tool poisoning.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceZero-dependency local proxy that wraps any MCP server to redact secrets, strip hidden-Unicode prompt injection, and block writes to protected paths like ~/.ssh and .env.4MIT
- AlicenseNot gradedqualityBmaintenanceA least-privilege enforcement proxy for MCP servers. It sits between MCP clients and upstream servers, enforcing tool policies, hiding denied tools, requiring human approval for risky actions, and providing a structured audit trail.MIT
- AlicenseNot gradedqualityDmaintenanceA zero-infrastructure, local proxy that wraps any stdio MCP server to add audit logging, policy enforcement with regex guards, and per-session/per-day budgets.MIT
- AlicenseNot gradedqualityAmaintenanceAn MCP proxy that records every tool call, restores prior state on undo, and blocks irreversible actions until a human approves them.1,238 npm2MIT