MCP
MCP (Model Context Protocol) is a protocol that enables LLMs to access custom tools and services. Put briefly, an MCP client (Cascade, in this case) can choose to make requests to MCP servers to access tools that they provide. Cascade now natively integrates with MCP, allowing you to bring your own selection of MCP servers for Cascade to use. See the official MCP docs for more information.
Configuring MCP
To set up MCP with Cascade, navigate to Windsurf - Settings > Advanced Settings or Command Palette > Open Windsurf Settings Page.
Scroll down to the Cascade section and you will find the option to add a new server, view existing servers, and a button to view the raw JSON config file at mcp_config.json
.
Adding a new server
To add a new server, press the “Add Server” button in the Cascade settings. You can then easily choose between some pre-populated servers that we’ve found to be the most helpful and popular. Alternatively, you can click “Add custom server +” to add your own server directly in mcp_config.json
.
mcp_config.json
The ~/.codeium/windsurf/mcp_config.json
file is a JSON file that contains a list of servers that Cascade can connect to.
The JSON should follow the same schema as the config file for Claude Desktop.
Here’s an example configuration, which sets up a single server for Google Maps:
Be sure to provide the required arguments and environment variables for the servers that you want to use.
See the official MCP server reference repository or OpenTools for some example servers.
Notes
- Since MCP tool calls can invoke code written by arbitrary server implementers, we do not assume liability for MCP tool call failures. To reiterate:
MCP tool calls will consume credits regardless of success or failure.
- We currently only support tools, not prompts nor resources. In other words, Cascade will be able to request and use a server’s tools, but not the other endpoints that a server exposes.
- We do not support tools that output images.
- We only support servers using the
stdio
transport type.