Docs
MCP clients

Windsurf

mcp_config.json uses serverUrl, not url

Cascade reads ~/.codeium/windsurf/mcp_config.json (Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json). The remote URL field is serverUrl. A block copied from Cursor with "url" is parsed without error and then silently does nothing.

{
  "mcpServers": {
    "servicebay": {
      "serverUrl": "https://oauth.servicebay.io/mcp",
      "headers": {
        "Authorization": "Bearer sk_live_YOUR_KEY"
      }
    }
  }
}

${env:VAR_NAME} interpolates in serverUrl and headers. Cascade → Manage MCPs → Refresh after saving. OAuth is supported if you omit headers.

Compatibility matrix · Troubleshooting