How to Connect Windsurf to Cold Email
Connect Windsurf, now Devin Desktop, to your cold email setup: Cascade runs a local server over the Outreach2day API, with the key read from your shell.

On this page
Short answer: Windsurf's Cascade agent has supported MCP servers since Windsurf Wave 3 on 13 February 2025. Windsurf is now called Devin Desktop, and its documentation calls Cascade the legacy agent; the MCP setup is the same mcp_config.json file. Cascade runs local servers, so it works with the Outreach2day REST API today through a small read-only server. The hosted Outreach2day MCP server is in early access, so this page shows no remote URL.
Checked September 2026 against Cascade MCP integration in the Devin Desktop docs and the Windsurf Wave 3 announcement.
Connection Methods
Method | Works with Outreach2day today | Where the key lives | Notes |
|---|---|---|---|
Local server ( | Yes, you run it |
| Our read-only example server |
Cascade runs | Yes | Your shell environment | Review each command |
Remote server ( | Early access |
| One entry when the hosted server is live |
The config file lives at ~/.config/devin/mcp_config.json on macOS and Linux (or under $XDG_CONFIG_HOME/devin/) and %APPDATA%\devin\mcp_config.json on Windows. Open it from Cascade: the ... (Actions) menu at the top right of the Cascade panel, then "Open MCP config file" in the MCPs section.
On Teams and Enterprise, admins can turn MCP access on or off and allowlist approved servers, so a company account may need an admin to add yours. Cascade can use at most 100 tools at a time across all servers; our example server has six.
What Cascade Can Do With Your Cold Email Setup
Cascade reads your project and your infrastructure in the same session. Useful jobs:
Size the send. From a lead file and a deadline, work out how many mailboxes and domains you need at 25 cold emails per mailbox a day and 5 mailboxes per domain.
Shortlist domains. Check up to 50 domain ideas per call with
check_domainsand write the free ones to a file. Buying domains through the API is paid right away — give an agent a billing-scoped key only if you want it to buy.Watch warm-up. List each mailbox's
warmupStateand how long it has warmed. New mailboxes need at least 14 days before cold email.Read replies. Pull recent threads with their intent label and summarise what needs an answer.
Check copy. Flag links, missing spintax on subjects and follow-up gaps other than 2, 3, 5 and 5 days in your sequence files.
Connect Cascade to Outreach2day, step by step
Create an API key. In the Outreach2day app, open the API keys page and create a key only for Cascade (
ot2d_...).Store the key outside the config. Either export it in your shell profile (
export O2D_KEY=ot2d_...) or save it to a file readable only by you, such as~/.secrets/o2d_key.Save the server. Copy
o2d_mcp.pyfrom the cold email MCP server guide and installmcpandrequestsin a virtual environment.Add the entry to
mcp_config.json. Paste the block below undermcpServersand save. The config supports${env:NAME}and${file:/path}incommand,args,envandheaders.Enable and test. In the MCPs section of the Cascade Actions menu, check that the server shows six tools and is on. Ask a read-only question and compare the answer with the app.
{
"mcpServers": {
"outreach2day": {
"command": "/path/to/.venv/bin/python",
"args": ["/path/to/o2d_mcp.py"],
"env": {
"O2D_API_KEY": "${env:O2D_KEY}",
"O2D_WORKSPACE_ID": "123"
}
}
}
}
To read the key from a file instead, use "O2D_API_KEY": "${file:~/.secrets/o2d_key}". If a variable is not set, ${env:...} resolves to an empty string, and the API will answer 401.
The Hosted MCP Server (Early Access)
Cascade already connects to remote servers over Streamable HTTP or SSE: an entry with serverUrl (or url) and headers, with OAuth also supported. The hosted Outreach2day MCP server that will use that entry is in early access and has no public URL yet, so this page shows none. Get early access on the home page.
Prompts to Try in Cascade
"Read
leads/list.csv. At 25 cold emails per mailbox a day and 5 mailboxes per domain, how many mailboxes and domains do I need to reach everyone in two weeks?""Check the names in
domains/ideas.txtand write the free ones todomains/free.txt. Do not buy.""Which mailboxes are paused or in error? Group them by domain."
"Summarise yesterday's replies by intent and list the leads who asked for a call."
Limits and Safety
Rate limits: 10 requests a second, 300 a minute and 1,000 an hour per user and per workspace on the Outreach2day API.
Mailbox credentials.
GET /mailboxes: the response includes SMTP/IMAP credentials — store the API key like a password. The example server drops that field; if Cascade calls the API withcurl, tell it to do the same.Reply text is untrusted. Replies are written by outsiders; Cascade should read them as data, never as instructions.
One key per tool. Revoke Cascade's key on the API keys page without breaking other integrations.
FAQ
Is Windsurf still available?
Windsurf is now Devin Desktop. The Windsurf documentation and blog redirect to devin.ai, and the Cascade MCP setup is documented there.
Where is the Windsurf MCP config file?
In current Devin Desktop docs: ~/.config/devin/mcp_config.json on macOS and Linux, %APPDATA%\devin\mcp_config.json on Windows. Open it from the Cascade panel's Actions menu.
Can Cascade use a remote MCP server with an API key header?
Yes. A remote entry takes serverUrl or url plus headers, and ${env:NAME} works inside the header value.
Can Cascade send my cold emails?
Not with the read-only server. Campaigns run in Outreach2day where enabled for your workspace, or in Instantly or Smartlead after export.
Does the API cost extra?
No. It is part of every Outreach2day plan; see pricing.
Related
Other assistants: Claude, Claude Code, ChatGPT, Grok, Gemini, Cursor, GitHub Copilot, Copilot Studio, Le Chat, n8n
AI assistants for cold email: every assistant and how it connects
Create an account, add mailboxes, then create a key for Cascade.
Keep reading
Send 100,000 cold emails a month
How to send 100,000 cold emails a month while keeping quality, engagement and conversion rates high: domains, mailboxes, warm-up, leads, copy and scaling.
Step-by-step playbook · 19 min readEmail tools5 min read
How to Connect ChatGPT to Cold Email
Email tools5 min read
How to Connect Claude Code to Cold Email
Email tools5 min read
How to Connect Claude to Cold Email

