MCP (Model Context Protocol) é um protocolo que permite que modelos de linguagem acessem ferramentas e serviços personalizados. Um cliente MCP (o Cascade, neste caso) pode enviar solicitações a servidores MCP para acessar as ferramentas que eles disponibilizam. O Cascade agora integra-se nativamente ao MCP, permitindo que você conecte sua própria seleção de servidores MCP para o Cascade usar. Consulte a documentação oficial do MCP para mais informações.
Usuários do plano Enterprise devem ativar isso manualmente nas configurações

Adicionando um novo plugin MCP

Novos plugins MCP podem ser adicionados pela Plugin Store, que você pode acessar clicando no ícone Plugins no menu superior direito do painel do Cascade, ou pela seção Windsurf Settings > Cascade > Plugins. Se você não encontrar o plugin MCP desejado, pode adicioná-lo manualmente editando o arquivo mcp_config.json. Plugins MCP oficiais aparecerão com um selo azul, indicando que são feitos pela empresa proprietária do serviço. Ao abrir a página de um plugin, basta clicar em Install para disponibilizar o servidor e suas ferramentas ao Cascade. O Windsurf oferece suporte a dois tipos de transporte para servidores MCP: stdio e http. Para servidores http, a URL deve corresponder ao endpoint e ter o formato https://<your-server-url>/mcp. Também há suporte para transporte HTTP com streaming e para autenticação MCP.
Certifique-se de clicar no botão de atualizar depois de adicionar um novo plugin MCP.

Configurando ferramentas MCP

Cada plugin tem um determinado número de ferramentas às quais possui acesso. O Cascade tem um limite de 100 ferramentas no total às quais pode ter acesso a qualquer momento. No nível do plugin, você pode ir até a aba Tools e ativar as ferramentas que deseja habilitar. Ou, em Windsurf Settings, você pode clicar no botão Manage plugins.

mcp_config.json

O arquivo ~/.codeium/windsurf/mcp_config.json é um arquivo JSON que contém uma lista de servidores aos quais o Cascade pode se conectar. O JSON deve seguir o mesmo esquema do arquivo de configuração do Claude Desktop. Aqui está um exemplo de configuração que define um único servidor para o GitHub:
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<SEU_TOKEN_DE_ACESSO_PESSOAL>"
      }
    }
  }
}
É importante observar que, para servidores HTTP, a configuração é um pouco diferente e requer o campo serverUrl. Veja um exemplo de configuração para um servidor HTTP:
{
  "mcpServers": {
    "figma": {
      "serverUrl": "<url-do-seu-servidor>/mcp"
    }
  }
}
Para o servidor MCP do Figma Dev Mode, certifique-se de que está usando a versão mais recente do aplicativo Figma para desktop para utilizar o novo endpoint “/mcp”.
Certifique-se de fornecer os argumentos e as variáveis de ambiente exigidos pelos servidores que você deseja usar. Consulte o repositório oficial de referência de servidores MCP ou o OpenTools para exemplos de servidores.

Controles de administração (Teams & Enterprise)

Administradores de equipe podem ativar ou desativar o acesso ao MCP para sua equipe e também definir uma lista de servidores MCP aprovados (whitelist) para uso da equipe:

MCP Team Settings

Configurações de MCP para sua equipe.
O link acima só funcionará se você tiver privilégios de administrador na sua equipe.
Por padrão, usuários de uma equipe podem configurar seus próprios servidores MCP. No entanto, assim que você incluir ao menos um servidor MCP na lista de aprovados, todos os servidores que não estiverem na lista serão bloqueados para a sua equipe.

Como o Server Matching funciona

Quando você coloca um servidor MCP na allowlist, o sistema usa correspondência por padrão regex com as seguintes regras:
  • Correspondência de string completa: Todos os padrões são automaticamente ancorados (envolvidos com ^(?:pattern)$) para evitar correspondências parciais
  • Campo Command: Deve corresponder exatamente ou conforme o seu padrão regex
  • Array de argumentos: Cada argumento é comparado individualmente ao seu padrão correspondente
  • Tamanho do array: O número de argumentos deve corresponder exatamente entre a allowlist e a configuração do usuário
  • Caracteres especiais: Caracteres como $, ., [, ], (, ) têm significado especial em regex e devem ser escapados com \ se você quiser correspondência literal

Opções de configuração

Configuração de lista de permissões do admin:
  • Server ID: github-mcp-server
  • Server Config (JSON): (deixe em branco)
{}
Configuração correspondente do usuário (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"
      }
    }
  }
}
Isso permite que os usuários instalem o servidor MCP do GitHub com qualquer configuração válida, desde que o Server ID corresponda à entrada da Plugin Store.
Configuração de lista de permissões do admin:
  • Server ID: 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": ""
  }
}
Configuração correspondente do usuário (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"
      }
    }
  }
}
Os usuários devem usar exatamente essa configuração — qualquer desvio em command ou args será bloqueado. A seção env pode ter valores diferentes.
Configuração de lista de permissões do admin:
  • Server ID: python-mcp-server
  • Server Config (JSON):
{
  "command": "python3",
  "args": ["/.*\\.py", "--port", "[0-9]+"]
}
Configuração correspondente do usuário (mcp_config.json):
{
  "mcpServers": {
    "python-mcp-server": {
      "command": "python3",
      "args": ["/home/user/my_server.py", "--port", "8080"],
      "env": {
        "PYTHONPATH": "/home/user/mcp"
      }
    }
  }
}
Este exemplo oferece flexibilidade aos usuários sem abrir mão da segurança:
  • O regex /.*\\.py corresponde a qualquer caminho de arquivo Python, como /home/user/my_server.py
  • O regex [0-9]+ corresponde a qualquer porta numérica, como 8080 ou 3000
  • Os usuários podem personalizar caminhos de arquivo e portas, enquanto os admins garantem que apenas scripts Python sejam executados

Padrões Comuns de Regex

PadrãoCorrespondênciasExemplo
.*Qualquer string/home/user/script.py
[0-9]+Qualquer número8080, 3000
[a-zA-Z0-9_]+Alfanumérico + sublinhadoapi_key_123
\\$HOMELiteral $HOME$HOME (não expandido)
\\.pyLiteral .pyscript.py
\\[cli\\]Literal [cli]mcp[cli]

Notas

Diretrizes de Configuração do Admin

  • Variáveis de ambiente: A seção env não é verificada por regex e pode ser configurada livremente pelos usuários
  • Ferramentas desativadas: O array disabledTools é tratado separadamente e não faz parte da verificação por whitelist
  • Diferença entre maiúsculas e minúsculas: Toda a correspondência diferencia maiúsculas de minúsculas
  • Tratamento de erros: Padrões de regex inválidos serão registrados e resultarão em negação de acesso
  • Testes: Teste seus padrões de regex com cuidado — padrões excessivamente restritivos podem bloquear casos de uso legítimos

Solução de problemas

Se os usuários relatarem que os servidores MCP não estão funcionando após entrarem na lista de permissões:
  1. Verifique a correspondência exata: Certifique-se de que o padrão da lista de permissões corresponde exatamente à configuração do usuário
  2. Verifique o escape em regex: Caracteres especiais podem precisar de escape (por exemplo, \. para pontos literais)
  3. Confira os logs: Padrões regex inválidos são registrados com avisos
  4. Teste os padrões: Use um validador/testador de regex para verificar se seus padrões funcionam como esperado
Lembre-se: Depois que você permite qualquer servidor na lista, todos os outros servidores são automaticamente bloqueados para os membros da sua equipe.

Informações gerais

  • Como chamadas de ferramentas MCP podem executar código escrito por implementadores de servidor diversos, não assumimos responsabilidade por falhas nessas chamadas. Para reiterar:
  • Atualmente, oferecemos suporte às ferramentas e aos recursos de um servidor MCP, não aos prompts.