Best MCP Servers for Windsurf in 2026
Firecrawl, Bright Data, and Crawlora compared as Windsurf MCP servers — config, tool counts, and which fits which job (plus where Zyte doesn't reach yet).
Windsurf's own docs and third-party trackers both flag it as a strong pick for parallel multi-agent sessions, and its MCP support has been stable for a while — but nobody's published a Windsurf-specific buyer's guide for web-data MCP servers. This one compares what actually connects, with real config, not marketing copy.
Windsurf's MCP config — and a real filename discrepancy
Windsurf reads MCP server definitions from a JSON file under ~/.codeium/windsurf/, root key mcpServers (the same shape as Claude Desktop). The filename itself is documented inconsistently across vendors: Firecrawl's own MCP repo instructs ./codeium/windsurf/model_config.json, while Crawlora's own repo and most third-party guides say mcp_config.json. This isn't a typo either side made up — it likely reflects Windsurf renaming the file at some point and docs going stale at different rates. Check what your installed Windsurf version actually reads (open its MCP settings panel, which shows the resolved config path) rather than trusting any single vendor's doc blindly.
What to evaluate
- Generic crawl (any URL → markdown) vs. structured platform data (named sites → JSON).
- Does the vendor actually document Windsurf, or are you adapting a Claude Desktop config and hoping it works?
- Tool count and what it actually covers.
- Pricing model and whether a failed request still gets billed.
The contenders
| Tool | Format | Coverage | Config | Best for |
|---|---|---|---|---|
| Firecrawl MCP | MCP server | Scrape/crawl/search/extract any URL | mcpServers key, npx -y firecrawl-mcp, server name mcp-server-firecrawl per their own docs | Generic crawl-to-markdown for arbitrary sites |
| Bright Data | MCP server (60+ tools) | 40+ named platforms + proxy/anti-bot infra | Same mcpServers shape, npx @brightdata/mcp or hosted mcp.brightdata.com/mcp?token=... | Anti-bot-hardened extraction at scale |
| Zyte | — | — | No official Windsurf integration (its plugins target Claude Code and GitHub Copilot specifically) | Not currently an option here |
| Crawlora | MCP server | 893 tools across 81 platform groups | mcpServers key, https://mcp.crawlora.net/mcp, note the Authorization header goes under headers, not a top-level field | Structured JSON from named platforms, pay-on-success |
Firecrawl MCP — generic crawl-to-markdown
Firecrawl's own repo documents Windsurf directly: add an mcpServers block naming the server mcp-server-firecrawl, running npx -y firecrawl-mcp with FIRECRAWL_API_KEY in env. It doesn't work from a fixed platform catalog — point it at any public page for markdown, structured JSON extraction, or a full-site crawl. Choose it when the job is reading or crawling arbitrary websites.
Bright Data — anti-bot scale across 40+ named platforms
Bright Data uses the same JSON shape in Windsurf as in VS Code: either the local npx @brightdata/mcp command with an API_TOKEN, or the hosted remote URL with a token query param. Its 60+-tool MCP server covers named e-commerce, social, business, and finance platforms, filterable by groups= so an agent isn't handed every tool at once. Choose it when anti-bot reliability on hard, named targets is the actual constraint.
Zyte — not currently available for Windsurf
Worth stating plainly rather than skipping: Zyte's two Claude-adjacent products — the Claude Code plugin (zyte-ai/claude-skills) and the GitHub-Copilot-specific VS Code extension — are each locked to one client. Neither connects to Windsurf as of this writing. If your stack is Windsurf-first, Zyte isn't currently in the running here (a generic Zyte-branded MCP server does circulate in a few third-party directories, but Zyte's own docs explicitly frame community MCP builds against its API as unofficial demos, not a supported product).
Crawlora — structured JSON across 81 platform groups, pay-on-success
Crawlora's MCP server documents Windsurf directly: ~/.codeium/windsurf/mcp_config.json, mcpServers key, pointing at https://mcp.crawlora.net/mcp with the API key under a headers.Authorization field (Bearer <key>) — note this is a different shape than Windsurf's serverUrl convention some other remote servers use, so copy the exact block rather than guessing the key names. 893 tools across search, maps, e-commerce, social, finance, travel, jobs, media, app stores, and reviews, normalized JSON, pay-on-success billing, 2,000 free credits/month with no card. Choose it for structured records from named platforms without maintaining a parser.
How to choose, by job
- You need to crawl or read arbitrary websites for agent context → Firecrawl MCP.
- You need reliable extraction from specific hard, named platforms at scale → Bright Data.
- You need structured JSON from named platforms without maintaining a parser, billed only on success → Crawlora MCP.
- You specifically want Zyte's Scrapy-generation workflow → you'll need Claude Code or GitHub Copilot for now, not Windsurf.
Add structured web data to Windsurf
893 tools across 81 platform groups, one API key, billed only on success. 2,000 free credits a month, no card.
Sources
Related reading
- Best MCP Servers for GitHub Copilot in 2026 — the same comparison, Copilot's config shape.
- Best Web Scraping MCP Servers & Skills for Claude Code in 2026.
- Crawlora vs Firecrawl · Crawlora vs Bright Data.
- Give your AI agent live web data with MCP.
Frequently asked questions
What's the best MCP server for web scraping with Windsurf?
Firecrawl MCP fits crawling or reading arbitrary websites. Bright Data is built for anti-bot-hardened extraction across 40+ named platforms. Crawlora fits when you want structured JSON from named platforms without maintaining a parser, billed only on success. Zyte does not currently offer a Windsurf integration — its two products (a Claude Code plugin and a GitHub-Copilot-specific VS Code extension) are each locked to one client.
Where does Windsurf read its MCP server config from?
A JSON file under ~/.codeium/windsurf/, root key mcpServers — the same shape as Claude Desktop. The exact filename is documented inconsistently across vendors (Firecrawl's own repo says model_config.json, most others say mcp_config.json), which likely reflects Windsurf renaming the file at some point. Check your installed Windsurf version's MCP settings panel for the resolved path rather than trusting one vendor's doc.
Does Zyte work with Windsurf?
Not officially. Zyte's Claude Code plugin and its GitHub-Copilot-specific Web Scraping Copilot extension are each locked to one client, and neither connects to Windsurf. Community MCP builds against the Zyte API do circulate in a few directories, but Zyte's own blog explicitly frames those as unofficial demos, not a supported product.
How do I install Crawlora's MCP server for Windsurf?
Add an mcpServers block to your Windsurf config pointing at https://mcp.crawlora.net/mcp, with the API key under a headers.Authorization field (Bearer <key>) — this is a different shape than the serverUrl convention some other remote servers use, so copy the exact block from the docs rather than guessing the key names. Free tier is 2,000 credits/month, no card.
