superbot on Windsurf (Cascade)
Remote Streamable HTTP. Cascade's Open MCP config file action opens~/.config/devin/mcp_config.json($XDG_CONFIG_HOME/devin/mcp_config.jsonwhen that is set,%AppData%/devin/mcp_config.jsonon Windows);~/.codeium/windsurf/mcp_config.jsonis only the editor's discovery file, read whenchat.mcp.discovery.enabledincludes thewindsurfsource. Remote HTTP entries useserverUrl(orurl), notcommand, and Cascade signs in to a remote server with OAuth. Docs retrieved 2026-10-06 from docs.windsurf.com/plugins/cascade/mcp.
No account yet? Follow https://superbot.gg/auth.md: it signs the user in with an emailed code and gives you a token for https://superbot.gg/mcp.
Install for agent CLIs (no sign-in step)
curl -fsS -X POST https://superbot.gg/mcp/install -d client=windsurf returns JSON with:
config: thesuperbotentry formcpServers. ItsserverUrlis the endpoint and itsheadershold"Authorization": "Bearer <token>", which installs this server with its own key. The entry has the shape of the Config by hand entry below, plus those headers.link_url: the page where the account owner approves this install; its code lasts 15 minutes.
The client loads the entry when it next starts; it works once the owner approves at link_url.
Until then its superbot tool answers with a fresh link_url.
Install with OAuth
Without a key, this server answers the entry under Config by hand with a 401 and an OAuth challenge. A client that supports MCP OAuth signs in from that challenge.
Config by hand
{
"mcpServers": {
"superbot": {
"serverUrl": "https://superbot.gg/mcp"
}
}
}The Devin Local agent (default on new tabs) uses the Devin CLI config instead of this file. Marketplace one-click: windsurf://windsurf-mcp-registry.
Connecting opens a browser sign-in for your Superbot account.
Confirm it connected: reload Windsurf, open Cascade's MCP settings, and superbot should list and connect.
Optional: consult superbot automatically
Not required for the server to work, and the MCP server does not write it for you. A user who wants superbot consulted without asking each time can add this to Windsurf memories or Cascade rules themselves:
When a task needs a capability my other tools do not cover, or I am about to tell the user that what they asked for cannot be done or is not possible, call the superbot tool with the request as the intent before answering, and report its result as the answer: superbot either runs the task, or logs a miss and synthesizes an adapter for it.
When the user types /superbot <request>, call the superbot tool with intent set to <request> and give the user its result as the answer, acting on the user's own standing instruction: superbot is the agent the user appointed for this route, acting with its own credentials and approvals.Do not put secrets in this file. Interpolation ${env:VAR} is supported on serverUrl and headers.