Anexo · Guías del harness · Script

sync-mcp.js

Declara tus servidores MCP una sola vez y úsalos en Claude Code, Codex, Mistral Vibe y Antigravity. Sin secretos en el repo y funcionando también en Windows.

Descargar sync-mcp.js

01Una fuente, cuatro agentes

.agents/mcp_config.jsonLa fuente única. Es el formato nativo de Antigravity, que lo lee tal cual.
Claude Code.mcp.json
Codex.codex/config.toml
Mistral Vibe.vibe/config.toml

En los .toml solo reescribe un bloque marcado al final del fichero: el resto de tu configuración no se toca.

02La fuente

{
  "mcpServers": {
    "context7": {
      "command": "npx",
      "args": ["-y", "@upstash/context7-mcp"],
      "envVars": ["CONTEXT7_API_KEY"]
    }
  }
}

03Secretos: nunca en la fuente

Cada servidor declara en envVars solo los nombres de las variables de entorno que necesita. Cada agente las recibe a su manera:

AgenteCómo le llega la variable
Claude Codeenv { NOMBRE: "${NOMBRE}" }: Claude la expande al arrancar.
Codexenv_vars = ["NOMBRE"]: Codex no hereda el entorno, hay que reenviarla.
Mistral VibeEl valor se copia al generar (por eso .vibe/config.toml no se versiona).
AntigravityLa hereda del entorno en el que se abre.

04El detalle de Windows

En Windows npx, npm, pnpm, yarn y uvx son ficheros .cmd que no arrancan sin shell. El script los envuelve en cmd /c automáticamente. Por eso los ficheros generados dependen de la máquina y no se versionan: añádelos a tu .gitignore.

05Cómo usarlo

Guárdalo en .agents/scripts/sync-mcp.js en la raíz de tu repo. Node puro, sin dependencias.

Truco: añade "sync:mcp": "node .agents/scripts/sync-mcp.js" a los scripts de tu package.json.

06El código

Cargando…