Firecrawl MCP server
Last verified: 2026-09
Crawl and scrape sites into clean markdown.
Community Browser & search Needs a secret Claude Desktop, Cursor, Windsurf, Claude Code
What it does
Mendable's crawl API as MCP: search, scrape a URL to clean text, map a site, crawl, and (with a key) interact or run an agent. Hosted endpoint exists; the npx path uses FIRECRAWL_API_KEY.
It sits in Browser & search: Three different jobs get mixed up here.
Good for
- Scrape one URL to clean markdown with a keyless hosted call.
- Map or crawl a docs site you are allowed to scrape.
- Search the web and get page content back, not just links.
- Interact with a page that needs a click before the text appears.
Tools
- scrape / parse — One URL → clean text or structured data. Keyless on the hosted free tier.
- search — Web search with page content.
- crawl / map — Site-wide crawl or URL map — needs a key.
- interact / agent — Click through a page or run multi-step research.
- firecrawl_search / firecrawl_developer_search — Read-only search profile on the hosted search endpoint.
Config (Claude Desktop / Cursor / Windsurf)
Paste the JSON below. Same mcpServers shape. Replace placeholder paths and secrets.
Windows paths look like C:\\Users\\you\\project, not /path/to.
Host-side steps →
Claude Desktop
| OS | Config file |
|---|---|
| macOS | ~/Library/Application Support/Claude/claude_desktop_config.json |
| Windows | %APPDATA%\Claude\claude_desktop_config.json
(usually C:\Users\<you>\AppData\Roaming\Claude\) |
| Linux | ~/.config/Claude/claude_desktop_config.json |
Cursor
| Scope | macOS / Linux | Windows |
|---|---|---|
| This project | .cursor/mcp.json in the repo root | |
| This user | ~/.cursor/mcp.json |
%USERPROFILE%\.cursor\mcp.json |
Windsurf
| OS | Config file |
|---|---|
| macOS / Linux | ~/.codeium/windsurf/mcp_config.json |
| Windows | %USERPROFILE%\.codeium\windsurf\mcp_config.json |
{
"mcpServers": {
"firecrawl": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "fc-..."
}
}
}
}
Windsurf remote MCP: use serverUrl instead of url if the block below is HTTP.
One-liner: npx -y firecrawl-mcp
Secrets it wants: FIRECRAWL_API_KEY
How to get started
- Get a key at firecrawl.dev, or use the hosted URL https://mcp.firecrawl.dev/v2/mcp for the keyless scrape/search/parse tier.
- For local: FIRECRAWL_API_KEY plus npx -y firecrawl-mcp.
- Start with scrape on one known URL before enabling crawl.
Access risk
The key spends your Firecrawl quota. Crawl/agent can hit many URLs. Do not scrape authenticated product data you would not paste into a chat.
When to skip it
Skip it if Fetch or Playwright already gets the page. Crawl against a site you do not own can violate that site's terms.
Instead: Fetch, Playwright, Exa.
Vs alternatives
| Server | Official? | Needs a secret? | Best for |
|---|---|---|---|
| Firecrawl | No | Yes | Crawl and scrape sites into clean markdown. |
| Fetch | Yes | Yes | Fetch a URL and turn the page into readable text. |
| Playwright | No | No | Microsoft's browser automation MCP for Chromium, Firefox, and WebKit. |
| Exa | No | Yes | Neural web search aimed at agents. |
More in Browser & search
FAQ
Do I have to run npx?
No. Hosted MCP is https://mcp.firecrawl.dev/v2/mcp. Keyless free tier covers scrape, search, and parse. Crawl, map, and agent need a key.
Is crawling any site OK?
No. Crawl against a site you do not own can violate terms and waste quota. Start with scrape on one URL.
Firecrawl or Playwright?
Firecrawl for clean extraction and crawls. Playwright when you need a real browser session you control.
Where does the key go?
FIRECRAWL_API_KEY in env, or Authorization: Bearer on the hosted URL. Never in the URL itself, never in the chat.