跳转到主要内容

Documentation Index

Fetch the complete documentation index at: https://docs.devin.ai/llms.txt

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

**MCP (模型上下文协议) **是一种让 LLM 能够访问自定义工具和服务的协议。 MCP 客户端 (此处指 Cascade) 可以向 MCP 服务器发出请求,以访问其提供的工具。 Cascade 现已原生集成 MCP,因此你可以接入自己选择的 MCP 服务器供 Cascade 使用。 更多信息请参阅官方 MCP 文档
Enterprise 用户必须在设置中手动开启此功能

添加新的 MCP 插件

你可以前往 Settings > Tools > Windsurf Settings > Add Server 部分,添加新的 MCP 插件。 如果找不到所需的 MCP 插件,你可以点击 View Raw Config 按钮,编辑原始 mcp_config.json 文件来手动添加。 点击某个 MCP 服务器后,只需点击 + Add Server,即可将该服务器及其工具提供给 Cascade 使用。
Cascade 支持 MCP 服务器的三种传输类型stdioStreamable HTTPSSE Cascade 还支持每种传输类型的 OAuth。 对于 http 服务器,URL 应填写为对应端点的地址,格式类似于 https://<your-server-url>/mcp
添加新的 MCP 插件后,请务必点击刷新按钮。

mcp_config.json

~/.codeium/mcp_config.json 是一个 JSON 文件,包含 Cascade 可连接的服务器列表。 下面是一个示例配置,用于为 GitHub 设置一个服务器:
{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/server-github"
      ],
      "env": {
        "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_PERSONAL_ACCESS_TOKEN>"
      }
    }
  }
}
请务必为你要使用的服务器提供必填参数和环境变量。 你可以参考 官方 MCP 服务器参考代码仓库OpenTools,查看一些示例服务器。

远程 HTTP MCP

需要注意的是,远程 HTTP MCP 的配置略有不同, 需要使用 serverUrlurl 字段。 以下是 HTTP server 的配置示例:
{
  "mcpServers": {
    "remote-http-mcp": {
      "serverUrl": "<your-server-url>/mcp",
      "headers": {
        "API_KEY": "value"
      }
    }
  }
}

配置插值

~/.codeium/mcp_config.json 文件支持在以下字段中对 环境变量进行插值:commandargsenvserverUrlurlheaders 下面是一个示例配置,其中在 headers 中使用了 AUTH_TOKEN 环境变量。
{
  "mcpServers": {
    "remote-http-mcp": {
      "serverUrl": "<your-server-url>/mcp",
      "headers": {
        "API_KEY": "Bearer ${env:AUTH_TOKEN}"
      }
    }
  }
}

Admin 控制 (团队和企业)

团队 Admin 可以为团队开启或关闭 MCP 访问权限,也可以将已批准的 MCP 服务器加入白名单,供团队使用:

MCP 团队设置

为你的团队配置 MCP 设置。
只有当你拥有团队 Admin 权限时,上述链接才可用。
默认情况下,团队中的用户可以配置自己的 MCP 服务器。不过,一旦你将哪怕一个 MCP 服务器加入白名单,所有未列入白名单的服务器都会被团队屏蔽

服务器匹配的工作原理

当你将某个 MCP 服务器加入白名单时,系统会按以下规则使用正则表达式模式匹配
  • 完整字符串匹配:所有模式都会自动加上锚点 (包装为 ^(?:pattern)$) ,以避免部分匹配
  • 命令字段:必须精确匹配,或匹配你指定的正则表达式模式
  • 参数数组:每个参数都会分别与其对应的模式进行匹配
  • 数组长度:白名单与用户配置中的参数数量必须完全一致
  • 特殊字符:像 $.[]() 这样的字符在正则表达式中有特殊含义;如果你想按字面匹配,需要使用 \ 对其进行转义

配置选项

Admin 白名单配置:
  • 服务器 ID: github-mcp-server
  • 服务器配置 (JSON) : (留空)
{}
匹配的用户配置 (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"
      }
    }
  }
}
这样一来,只要服务器 ID 与插件商店中的条目匹配,用户就可以使用任何有效配置来安装 GitHub MCP 服务器。
Admin 白名单配置:
  • 服务器 ID: github-mcp-server
  • 服务器配置 (JSON) :
{
  "command": "docker",
  "args": [
    "run",
    "-i",
    "--rm",
    "-e",
    "GITHUB_PERSONAL_ACCESS_TOKEN",
    "ghcr.io/github/github-mcp-server"
  ],
  "env": {
    "GITHUB_PERSONAL_ACCESS_TOKEN": ""
  }
}
匹配的用户配置 (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"
      }
    }
  }
}
用户必须使用这份精确配置——commandargs 中的任何差异都会被拦截。env 部分的值可以不同。
Admin 白名单配置:
  • 服务器 ID: python-mcp-server
  • 服务器配置 (JSON) :
{
  "command": "python3",
  "args": ["/.*\\.py", "--port", "[0-9]+"]
}
匹配的用户配置 (mcp_config.json) :
{
  "mcpServers": {
    "python-mcp-server": {
      "command": "python3",
      "args": ["/home/user/my_server.py", "--port", "8080"],
      "env": {
        "PYTHONPATH": "/home/user/mcp"
      }
    }
  }
}
此示例在保持安全性的同时,也为用户提供了灵活性:
  • 正则表达式 /.*\\.py 可匹配任意 Python 文件路径,例如 /home/user/my_server.py
  • 正则表达式 [0-9]+ 可匹配任意数字端口,例如 80803000
  • 用户可以自定义文件路径和端口,同时管理员可确保仅执行 Python 脚本

常见正则表达式模式

模式匹配内容示例
.*任意字符串/home/user/script.py
[0-9]+任意数字8080, 3000
[a-zA-Z0-9_]+字母、数字和下划线api_key_123
\\$HOME字面值 $HOME$HOME (不展开)
\\.py字面值 .pyscript.py
\\[cli\\]字面值 [cli]mcp[cli]

注意事项

Admin 配置指南

  • 环境变量env 部分不进行正则匹配,用户可自由配置
  • 已禁用的工具disabledTools 数组会单独处理,不属于白名单匹配范围
  • 区分大小写:所有匹配均区分大小写
  • 错误处理:无效的正则表达式模式会被记录,并导致访问被拒绝
  • 测试:请仔细测试你的正则表达式模式——限制过严的模式可能会拦截正常使用场景

故障排查

如果用户反馈其 MCP 服务器在加入白名单后无法正常工作:
  1. 检查是否完全匹配:确保白名单模式与用户的配置完全一致
  2. 确认正则表达式转义是否正确:特殊字符可能需要转义 (例如,表示字面点号时使用 \.)
  3. 查看日志:无效的正则表达式模式会在日志中记录警告
  4. 测试模式:使用正则表达式测试工具验证你的模式是否按预期工作
请记住:只要你将任意服务器加入白名单,所有其他服务器都会自动被阻止,你的团队成员将无法使用它们。

一般信息

  • 由于 MCP 工具调用可能会执行由任意服务器实现者编写的代码,因此,对于 MCP 工具调用失败,我们不承担责任。再次强调:
  • 我们目前支持 MCP 服务器的 工具资源提示