ShadowRun
ShadowRun
Un proxy stdio local-first para servidores MCP. Se sitúa entre un agente de IA (Claude Code, Cursor, etc.) y un servidor MCP real, intercepta llamadas a herramientas destructivas (escrituras, eliminaciones, mutaciones SQL, ...) antes de que se ejecuten, y las mantiene en memoria hasta que confirmes (commit) o descartes (discard) desde un panel local.
A diferencia de un interceptor ingenuo de "éxito falso", ShadowRun no
responde al agente hasta que se resuelve una llamada interceptada. Fingir una
respuesta (por ejemplo, para un INSERT ... RETURNING id) permite que el
agente actúe sobre datos que aún no existen y desvía su estado de creencia de
la realidad — por lo que las llamadas interceptadas simplemente esperan (con
un tiempo de espera) en su lugar.
Alcance (v0.1)
Esto es intencionadamente limitado: un CLI para un solo desarrollador para servidores MCP locales (Postgres, sistema de archivos, etc.) usado con Claude Code / Cursor. No es una puerta de enlace para aplicación de políticas de equipo, no tiene autenticación y no tiene persistencia entre reinicios — consulta Limitaciones a continuación antes de confiar en ello para algo más allá que tu propia máquina.
Related MCP server: Agentrim MCP
Instalación y ejecución
npm install
npm run buildApunta la configuración de tu agente al proxy en lugar del servidor real:
{
"mcpServers": {
"postgres": {
"command": "node",
"args": [
"/path/to/shadowrun-mcp/dist/index.js",
"npx", "-y", "@modelcontextprotocol/server-postgres",
"postgresql://localhost:5432/devdb"
]
}
}
}Abre http://127.0.0.1:4040 para ver las mutaciones pendientes, y Confirma
(Commit) o Descarta (Discard) cada una. Las llamadas de solo lectura (get*,
list*, search*, ...) pasan directamente y nunca aparecen en el panel.
Cómo funciona la clasificación
Consulta src/interceptor.ts — DEFAULT_CONFIG. Una llamada a una herramienta
se intercepta si su nombre coincide con un patrón de verbo mutante (write,
delete, create, ...) y no coincide primero con un patrón de lectura segura,
o si algún argumento de cadena contiene una palabra clave de mutación SQL
(insert into, drop table, ...). Esto es una heurística, no una garantía —
consulta Limitaciones.
Limitaciones
Clasificador heurístico. Las expresiones regulares sobre nombres de herramientas y texto de argumentos pasarán por alto herramientas mutantes con nombres ingeniosos y pueden interceptar en exceso herramientas de lectura con nombres extraños. Trátalo como un tope de velocidad, no como un límite de seguridad.
Sin autenticación en el panel. Se vincula solo a
127.0.0.1, pero cualquier proceso local (o una página maliciosa que haga DNS rebinding, en teoría) que pueda alcanzar ese puerto puede confirmar/descartar. No ejecutes esto en una máquina compartida o no confiable.Solo en memoria. Reiniciar el proxy elimina todas las mutaciones pendientes — la llamada original del agente simplemente agotará el tiempo de espera.
Desarrollador único, uso local. No hay un registro de auditoría compartido ni aplicación de políticas a nivel de equipo. Si necesitas eso, considera mejor una puerta de enlace MCP alojada.
Licencia
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