Integraciones

Windsurf (Devin Desktop)

Configura zn-gate en Windsurf (Devin Desktop, Cascade) en dos minutos: añádelo como servidor MCP y lo que zn-gate todavía no cubre ahí.

Ver .md

Inicio rápido (sin necesidad de programar)

  1. Comprueba que Node.js está instalado. Abre una terminal (en la mayoría de editores: menú Terminal → New Terminal; o la aplicación Terminal de tu ordenador), escribe node --version y pulsa Intro. Si ves un número de versión (18 o posterior), continúa. Si ves "command not found", instala la versión LTS desde nodejs.org y reinicia Windsurf.

  2. Abre el archivo de configuración de MCP: en macOS y Linux ~/.config/devin/mcp_config.json, en Windows %APPDATA%\devin\mcp_config.json. Si no existe, créalo. (~ es tu carpeta de usuario. Las versiones antiguas de Windsurf usaban ~/.codeium/windsurf/mcp_config.json, no verificado.)

  3. Pega esto:

    {
      "mcpServers": {
        "zn-gate": {
          "command": "npx",
          "args": [
            "-y",
            "zn-gate",
            "mcp"
          ]
        }
      }
    }

    Si el archivo ya tiene una sección "mcpServers", añade solo la parte "zn-gate": {...} dentro de ella.

  4. Guarda el archivo y actualiza los servidores MCP en el panel de Cascade (o reinicia la aplicación).

Estado: estos pasos siguen la documentación de Windsurf; aún no los hemos verificado nosotros en Windsurf.

Qué protege zn-gate en Windsurf y qué no

En Windsurf, zn-gate funciona como servidor MCP: el agente puede pedirle que compruebe un prompt, una llamada a una herramienta o un resultado de una herramienta (analyze_prompt, check_tool_call, check_tool_result). El agente decide cuándo llamar a estas herramientas, así que por sí solo esto no es una protección automática.

En Windsurf
Comprobaciones de zn-gate disponibles para el agente (MCP) Sí
Tus otros servidores MCP comprobados en busca de inyección de prompts y secretos Sí, si los envuelves (abajo)
Bloquea lecturas de .env y de archivos de credenciales No
Elimina secretos de la salida de la shell y del contenido de archivos No
Bloquea un secreto pegado en el chat No

Cascade tiene hooks: pre_mcp_tool_use, pre_run_command y pre_read_code pueden bloquear una acción (código de salida 2), pero su documentación no describe una forma de que los hooks cambien la salida de una herramienta, y zn-gate todavía no instala hooks para Cascade. Por tanto, en Windsurf zn-gate no bloquea lecturas de tu .env o de archivos de credenciales, y no elimina secretos de la salida de la shell ni del contenido de archivos. Si necesitas eso hoy, usa zn-gate con Claude Code, Codex CLI, Cursor u OpenCode: consulta compat.md.

Referencia técnica

Dónde está la configuración

macOS y Linux: ~/.config/devin/mcp_config.json. Windows: %APPDATA%\devin\mcp_config.json.

Comprueba la salida de tus otros servidores MCP

Para comprobar la salida de los otros servidores MCP que usas en Windsurf, inicia cada servidor local a través de zn-gate: sustituye su comando por npx y coloca -y zn-gate shield -- delante de su comando y argumentos originales. Por ejemplo, un servidor iniciado con uvx mcp-server-fetch queda así:

{
  "mcpServers": {
    "fetch": {
      "command": "npx",
      "args": [
        "-y",
        "zn-gate",
        "shield",
        "--",
        "uvx",
        "mcp-server-fetch"
      ]
    }
  }
}

Cada resultado de ese servidor se comprueba entonces en busca de inyección de prompts, y los secretos que zn-gate reconoce se eliminan, antes de que el agente lo vea. zn-gate init, que hace esto automáticamente para Claude Desktop, Claude Code, Cursor, Codex y OpenCode, no edita la configuración de Windsurf.

Documentación de Windsurf