Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.devinenterprise.com/llms.txt

Use this file to discover all available pages before exploring further.

MCP (Model Context Protocol) es un protocolo que permite a los LLM acceder a herramientas y servicios personalizados. Un cliente MCP (Cascade, en este caso) puede hacer solicitudes a servidores MCP para acceder a las herramientas que proporcionan. Cascade ahora se integra de forma nativa con MCP, lo que te permite usar tu propia selección de servidores MCP con Cascade. Consulta la documentación oficial de MCP para obtener más información.
Los usuarios de Enterprise deben activarlo manualmente en Settings

Agregar un nuevo plugin de MCP

Puedes agregar nuevos plugins de MCP desde la sección Settings > Tools > Windsurf Settings > Add Server. Si no encuentras el plugin de MCP que buscas, puedes agregarlo manualmente haciendo clic en el botón View Raw Config y editando el archivo mcp_config.json sin formato. Cuando hagas clic en un servidor MCP, simplemente haz clic en + Add Server para exponer el servidor y sus tools a Cascade.
Cascade admite tres tipos de transporte para servidores MCP: stdio, Streamable HTTP y SSE. Cascade también admite OAuth para cada tipo de transporte. Para los servidores http, la URL debe corresponder a la del endpoint y tener un formato similar a https://<your-server-url>/mcp.
Asegúrate de pulsar el botón de actualizar después de agregar un nuevo plugin de MCP.

mcp_config.json

El archivo ~/.codeium/mcp_config.json es un archivo JSON que contiene una lista de servidores a los que Cascade puede conectarse. Aquí tienes un ejemplo de configuración que define un único servidor para GitHub:
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_PERSONAL_ACCESS_TOKEN>"
      }
    }
  }
}
Asegúrate de proporcionar los argumentos requeridos y las variables de entorno de los servidores que quieras usar. Consulta el repositorio oficial de referencia de servidores MCP o OpenTools para ver algunos servidores de ejemplo.

MCP HTTP remotos

Es importante tener en cuenta que, para los MCP HTTP remotos, la configuración es un poco distinta y requiere un campo serverUrl o url. A continuación se muestra un ejemplo de configuración para un servidor HTTP:
{
  "mcpServers": {
    "remote-http-mcp": {
      "serverUrl": "<your-server-url>/mcp",
      "headers": {
        "API_KEY": "value"
      }
    }
  }
}

Interpolación de la configuración

El archivo ~/.codeium/mcp_config.json admite la interpolación de variables de entorno en estos campos: command, args, env, serverUrl, url y headers. Aquí tienes una configuración de ejemplo que usa una variable de entorno AUTH_TOKEN en headers.
{
  "mcpServers": {
    "remote-http-mcp": {
      "serverUrl": "<your-server-url>/mcp",
      "headers": {
        "API_KEY": "Bearer ${env:AUTH_TOKEN}"
      }
    }
  }
}

Controles de Admin (Teams y Enterprise)

Los Admin del equipo pueden activar o desactivar el acceso a MCP para su equipo, así como añadir servidores MCP aprobados a la lista de permitidos para que el equipo pueda usarlos:

MCP Team Settings

Configuración de MCP para tu equipo.
El enlace anterior solo funcionará si tienes privilegios de Admin para tu equipo.
De forma predeterminada, los usuarios de un equipo podrán configurar sus propios servidores MCP. Sin embargo, en cuanto añadas хотя sea un solo servidor MCP a la lista de permitidos, todos los servidores que no estén en esa lista quedarán bloqueados para tu equipo.

Cómo funciona la coincidencia de servidores

Cuando incluyes un servidor MCP en la lista de permitidos, el sistema usa coincidencia de patrones con regex con las siguientes reglas:
  • Coincidencia de cadena completa: Todos los patrones se anclan automáticamente (se envuelven en ^(?:pattern)$) para evitar coincidencias parciales
  • Campo de comando: Debe coincidir exactamente o según tu patrón regex
  • Matriz de argumentos: Cada argumento se compara individualmente con su patrón correspondiente
  • Longitud de la matriz: La cantidad de argumentos debe coincidir exactamente entre la lista de permitidos y la configuración del usuario
  • Caracteres especiales: Caracteres como $, ., [, ], ( y ) tienen un significado especial en regex y deben escaparse con \ si quieres una coincidencia literal

Opciones de configuración

Configuración de la lista de permitidos de Admin:
  • ID del servidor: github-mcp-server
  • Server Config (JSON): (dejar vacío)
{}
Configuración de usuario correspondiente (mcp_config.json):
{
  "mcpServers": {
    "github-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
Esto permite a los usuarios instalar el servidor MCP de GitHub con cualquier configuración válida, siempre que el ID del servidor coincida con la entrada de la tienda de plugins.
Configuración de la lista de permitidos de Admin:
  • ID del servidor: github-mcp-server
  • Server Config (JSON):
{
  "command": "docker",
  "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "ghcr.io/github/github-mcp-server"
  ],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": ""
  }
}
Configuración de usuario correspondiente (mcp_config.json):
{
  "mcpServers": {
    "github-mcp-server": {
      "command": "docker",
      "args": [
        "run",
        "-i",
        "--rm",
        "-e",
        "GITHUB_PERSONAL_ACCESS_TOKEN",
        "ghcr.io/github/github-mcp-server"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "ghp_your_token_here"
      }
    }
  }
}
Los usuarios deben usar esta configuración exacta; cualquier diferencia en command o args se bloqueará. La sección env puede tener valores distintos.
Configuración de la lista de permitidos de Admin:
  • ID del servidor: python-mcp-server
  • Server Config (JSON):
{
  "command": "python3",
  "args": ["/.*\\.py", "--port", "[0-9]+"]
}
Configuración de usuario correspondiente (mcp_config.json):
{
  "mcpServers": {
    "python-mcp-server": {
      "command": "python3",
      "args": ["/home/user/my_server.py", "--port", "8080"],
      "env": {
        "PYTHONPATH": "/home/user/mcp"
      }
    }
  }
}
Este ejemplo ofrece flexibilidad a los usuarios sin dejar de mantener la seguridad:
  • La regex /.*\\.py coincide con cualquier ruta de archivo de Python, como /home/user/my_server.py
  • La regex [0-9]+ coincide con cualquier puerto numérico, como 8080 o 3000
  • Los usuarios pueden personalizar las rutas de archivo y los puertos, mientras los Admin se aseguran de que solo se ejecuten scripts de Python

Patrones comunes de expresiones regulares

PatrónCoincide conEjemplo
.*Cualquier cadena/home/user/script.py
[0-9]+Cualquier número8080, 3000
[a-zA-Z0-9_]+Alfanumérico + guion bajoapi_key_123
\\$HOME$HOME literal$HOME (sin expandir)
\\.py.py literalscript.py
\\[cli\\][cli] literalmcp[cli]

Notas

Pautas de configuración para Admin

  • Variables de entorno: La sección env no se evalúa con regex y los usuarios pueden configurarla libremente
  • Herramientas deshabilitadas: El array disabledTools se procesa por separado y no forma parte de la comparación con la lista de permitidos
  • Distinción entre mayúsculas y minúsculas: Todas las comparaciones distinguen entre mayúsculas y minúsculas
  • Manejo de errores: Los patrones regex no válidos se registrarán y darán lugar a la denegación de acceso
  • Pruebas: Prueba tus patrones regex con cuidado; los patrones demasiado restrictivos pueden bloquear usos legítimos

Solución de problemas

Si los usuarios informan que sus servidores MCP no funcionan después de añadirlos a la lista de permitidos:
  1. Comprueba la coincidencia exacta: Asegúrate de que el patrón de la lista de permitidos coincida exactamente con la configuración del usuario
  2. Verifica el escape de regex: Es posible que los caracteres especiales deban escaparse (p. ej., \. para puntos literales)
  3. Revisa los logs: Los patrones regex no válidos se registran con advertencias
  4. Prueba los patrones: Usa un comprobador de regex para verificar que tus patrones funcionen como se espera
Recuerda: una vez que añades cualquier servidor a la lista de permitidos, todos los demás servidores se bloquean automáticamente para los miembros de tu equipo.

Información general

  • Dado que las llamadas a herramientas de MCP pueden invocar código escrito por desarrolladores de servidores de terceros, no asumimos responsabilidad por fallas en las llamadas a herramientas de MCP. Para reiterarlo:
  • Actualmente admitimos las herramientas, los recursos y los prompts de un servidor MCP.