Add a local development key
Export a development key before launching Windsurf:~/.codeium/windsurf/mcp_config.json:
mcpServers object and add only the secapi entry. Windsurf
supports both serverUrl and url for a remote HTTP MCP; this example uses the
documented serverUrl form. Restart Windsurf if its process cannot see the
exported variable, then refresh the MCP list in Cascade.
Windsurf’s MCP documentation
is the source for its configuration path and environment interpolation behavior.
Prove one cited filing lookup
In Cascade, ask:CallThe filing URL and accession number are the evidence trail for the response. Preserve them, along with request metadata, in generated code, a research note, or a handoff. For search and extraction tools, preserve returned provenance and freshness fields rather than reporting an uncited conclusion.filings.latestwithticker: AAPLandform: 10-K. Return the accession number, filing date, filing URL,requestId, andtraceparent.
Lifecycle and scope
Windsurf loads MCP tools from the configured server; refresh the MCP panel after editing the file and review which tools are enabled before a broad task. Cascade has a finite available-tool budget, so enable the SEC API tools needed for the workflow and constrain early calls by issuer, form, date, and result count. For a deployed service, do not copy this JSON into the application or expose its key to a web client. Make the MCP connection from server-side code and load the key from that runtime’s secret manager.Failures and limits
401normally means the environment variable was unavailable to Windsurf or the key was rejected.402requires an account, credit, or budget action rather than a retry.- On
429or temporary503, followRetry-Afterand lower parallel work. - On
mcp_tool_timeout, reduce the query scope before one bounded retry.
error.data.code, and requestId for repeated
failures. See Request diagnostics for a safe diagnostic
record.

