Skip to content
FunCoding

Search

Search docs, agents, posts, Skills and MCP servers

MCP 与 Hooks

在 Cascade 里用 MCP 市场或 mcp_config.json 接入 MCP 服务器,以及用 hooks.json 在关键节点运行 shell 命令。

MCP

MCP(Model Context Protocol)是让 LLM 访问自定义工具和服务的协议;Cascade 原生集成 MCP,让你带上自己选的 MCP 服务器。添加:从 MCP 市场(Cascade 面板右上角菜单的 MCPs 图标,或 Windsurf Settings > Cascade > MCP Servers)添加——官方 MCP 带蓝色对勾,点 Install 即可向 Cascade 暴露该服务器及其工具;找不到时手动编辑原始 ~/.codeium/windsurf/mcp_config.json。还支持通过深链接一键安装:windsurf://windsurf-mcp-registry?serverName=<server-name>。配置示例:

{
  "mcpServers": {
    "github": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-github"],
      "env": { "GITHUB_PERSONAL_ACCESS_TOKEN": "<YOUR_PERSONAL_ACCESS_TOKEN>" }
    }
  }
}

支持 stdio 和基于 URL 的(serverUrl,含 Streamable HTTP)服务器,配置值支持 ${env:变量名} 插值;企业可管控允许哪些 MCP 服务器(见企业策略)。

Hooks

Cascade Hooks 让你在 Cascade 工作流的关键节点执行自定义 shell 命令:记录操作、执行护栏、运行校验、与外部系统集成。面向有一定 shell 脚本基础的高级用户和企业团队。能做的事:日志与分析(追踪每次文件读取、代码改动、命令执行、用户提示或 Cascade 回复)、安全控制(阻止访问敏感文件、运行危险命令或处理违反策略的提示)、质量保证(代码修改后自动运行 linter、格式化器或测试)、自定义工作流、团队标准化。工作方式:hook 是特定 Cascade 动作发生时自动运行的 shell 命令,通过标准输入接收 JSON 上下文,执行你的脚本(Python、Bash、Node.js 或任何可执行文件),通过退出码和输出流返回结果;pre-hook(动作之前执行)可以用退出码 2 阻止该动作,适合安全策略和校验。配置是 JSON 文件,可放在三个层级,Cascade 加载并合并全部:系统级(macOS /Library/Application Support/Windsurf/hooks.json、Linux/WSL /etc/windsurf/hooks.json、Windows C:\ProgramData\Windsurf\hooks.json,适合组织策略);用户级(Windsurf IDE ~/.codeium/windsurf/hooks.json,JetBrains 插件 ~/.codeium/hooks.json);工作区级(.windsurf/hooks.json,随代码版本控制)。同一事件配置在多处时按系统 → 用户 → 工作区的顺序全部执行。

{
  "hooks": {
    "pre_read_code": [{ "command": "python3 /path/to/your/script.py", "powershell": "python3 C:\\path\\to\\your\\script.py", "show_output": true }],
    "post_write_code": [{ "command": "python3 /path/to/another/script.py", "show_output": true }]
  }
}

事件有 pre_read_code、post_write_code、post_setup_worktree 等多种(读代码、写代码、运行命令、用户提示、Cascade 回复等前后),完整事件与输入输出格式见官方 Hooks 页;企业团队也可在云控制台配置 hooks。