Scrape pages, crawl sites and search, returned as clean Markdown.
- Started in our test
- ★ 7.7K GitHub stars
- 128.6K downloads a week
- Last commit 26 Oct 2026
At a glance
Firecrawl's server sends requests to the Firecrawl API, which renders pages, strips navigation and ads, and returns Markdown or structured JSON. It can also map a site's URLs, crawl them, and run a web search and scrape the results in one go.
Because the work happens on Firecrawl’s side, it copes with JavaScript-heavy pages without a browser on your machine.
- Made by
- Firecrawl (Mendable)
- Licence
- MIT
- Latest version
- 3.34.1 (22 Oct 2026)
- npm package
- firecrawl-mcp
- GitHub stars
- 7.7K
- Downloads
- 128.6K a week
- Last commit
- 26 Oct 2026
- Tools
- 28
- Runs on
- Your computer
Our check: We ran this exact config on 26 Oct 2026: it started and answered with 28 tools. firecrawl-mcp on npm is published from firecrawl/firecrawl-mcp-server.
What's in the pod: its tools
We found 28 tools when we started it on 26 Oct 2026. 17 only read. The rest can change things, so keep your app's "ask before each tool call" setting on for them.
Runs commands1 tool · Can start programs or run code.
| Tool | What it is for |
|---|---|
firecrawl_monitor_run | Runs a monitor's check right away. |
Changes things10 tools · Can create, edit, send or delete.
| Tool | What it is for |
|---|---|
firecrawl_agent | Hands a research goal to Firecrawl's own agent, which browses on its own and returns structured findings. |
firecrawl_crawl | Walks a whole site or section and fetches every page it finds, within limits you set. |
firecrawl_feedback | Sends a rating on any Firecrawl result back to the service. |
firecrawl_interact | Clicks, types or navigates on a live page, for content that only appears after an action. |
firecrawl_interact_stop | Closes a browser session opened by firecrawl_interact. |
firecrawl_monitor_create | Sets up a page to be re-checked on a schedule with change alerts. |
firecrawl_monitor_delete | Removes a monitor. |
firecrawl_monitor_update | Changes a monitor's schedule or target. |
firecrawl_scrape | Fetches one URL and returns it as Markdown, HTML, a screenshot or JSON that fits a schema you give. |
firecrawl_search_feedback | Rates a past search so Firecrawl can improve it, sometimes refunding a credit. |
Only reads17 tools · Looks things up and changes nothing.
| Tool | What it is for |
|---|---|
firecrawl_agent_status | Checks whether an agent job has finished and collects its results. |
firecrawl_check_crawl_status | Reports progress on a crawl and returns the pages gathered so far. |
firecrawl_credit_usage | Shows how many credits you have left and what used them, by day or month. |
firecrawl_developer_search | Searches public code, GitHub issues, pull requests and library docs for programming answers. |
firecrawl_find_tools | Browses Firecrawl's catalogue of ready-made data providers. |
firecrawl_gov_search | Searches US federal, state and local laws, regulations and court opinions. |
firecrawl_map | Lists the URLs on a site without downloading their content. |
firecrawl_monitor_check | Shows the result of one scheduled check, including what changed. |
firecrawl_monitor_checks | Lists past checks for a monitor. |
firecrawl_monitor_get | Shows one monitor's settings. |
firecrawl_monitor_list | Lists your monitors. |
firecrawl_parse | Turns an uploaded document, such as a PDF, into clean text. |
firecrawl_research_inspect_paper | Gives a quick look at one paper's details and sections. |
firecrawl_research_read_paper | Reads passages from a paper's full text. |
firecrawl_research_related_papers | Follows citations to papers linked to one you already have. |
firecrawl_research_search_papers | Searches biomedical and arXiv research papers. |
firecrawl_search | Searches the web and returns ranked results with excerpts, optionally scraping each result too. |
Grouped and described by us. The README on GitHub lists the inputs each tool takes.
Set it up
Pick your app for the exact snippet and where it goes.
Where it goes: claude_desktop_config.json (Settings → Developer → Edit Config)
{
"mcpServers": {
"firecrawl": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "fc-your-key"
}
}
}
}Where it goes: Your terminal, in the project folder
claude mcp add-json firecrawl '{"command":"npx","args":["-y","firecrawl-mcp"],"env":{"FIRECRAWL_API_KEY":"fc-your-key"}}'Where it goes: ~/.cursor/mcp.json, or .cursor/mcp.json in a project
{
"mcpServers": {
"firecrawl": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "fc-your-key"
}
}
}
}Where it goes: .vscode/mcp.json in your project
{
"servers": {
"firecrawl": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "fc-your-key"
}
}
}
}Where it goes: ~/.codeium/windsurf/mcp_config.json
{
"mcpServers": {
"firecrawl": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "fc-your-key"
}
}
}
}Where it goes: Not supported
ChatGPT only connects to remote servers by URL. This one runs on your computer, so use Claude, Cursor or VS Code.
New to this? See the setup guides for Claude Code, Cursor, Claude Desktop and ChatGPT.
Settings
Names are exactly as the project spells them. Required ones are marked.
| Setting | What it does |
|---|---|
FIRECRAWL_API_KEYEnvironment variable · required | Your key from firecrawl.dev. Needed for the cloud service unless you use the hosted keyless tier or OAuth.fc-xxxxxxxx |
FIRECRAWL_API_URLEnvironment variable | Address of your own self-hosted Firecrawl. The key becomes optional if your instance has no auth.https://firecrawl.your-domain.com |
https://mcp.firecrawl.dev/v2/mcpConfig | Hosted address. Scrape, search and parse work without a key on the free tier; send a Bearer key header for everything else. |
https://mcp.firecrawl.dev/v2/mcp-oauthConfig | Hosted address that signs in to your Firecrawl account through your client, no key to copy. |
FIRECRAWL_OAUTH_TOKENEnvironment variable | A fixed OAuth access token (starting fco_) for the local stdio mode instead of an API key. |
FIRECRAWL_NO_SEARCH_FEEDBACKEnvironment variable | Set to 1 to hide the feedback tools and keep the tool list shorter.1 |
What it can touch
It can read
- Public web pages, search results, papers, code and government records
- Your credit balance
It can change
- Nothing on your machine
- Uses Firecrawl credits for each scrape, crawl, search or agent run
- Creates and deletes page monitors in your account
Safer setup: Set a limit and include or exclude paths on every crawl so a single request cannot burn through credits.
Before you start
- A Firecrawl account and API key (there is a free tier)
- Node.js 18 or newer
If it does not work
- Crawl, map or agent say a key is needed
- The keyless tier only covers scrape, search and parse. Add an API key or connect through the OAuth address.
- Rate limit exceeded
- Wait and retry, or move to a paid plan. Check what is left with firecrawl_credit_usage.
- A page comes back empty
- It may need a click or scroll first. Use firecrawl_interact, or ask scrape to wait before capturing.
- A crawl runs far longer than expected
- Cap it with limit and maxDiscoveryDepth, or use firecrawl_map first to see how big the site is.
Peas in a pod: similar servers
How Firecrawl lines up against other browser and web data servers on the shelf.
| Server | Tools | Runs on | Licence | Stars |
|---|---|---|---|---|
| Firecrawl | 28 | Your computer | MIT | 7.7K |
| Exa | 2 | Your computer or hosted | – | 5.2K |
| Bright Data | 32 | Your computer | MIT | 2.7K |
| SearXNG | 4 | Your computer | MIT | 1.3K |
| Playwright MCP | 25 | Your computer | Apache-2.0 | 38.7K |
Questions
Is there a free tier?
Yes. The hosted server works without a key for scrape, search and parse at a low rate. Sign-up adds free credits for the other tools.
Can I self-host it?
Yes. Firecrawl itself is open source, and FIRECRAWL_API_URL points this server at your own copy.
Should I put my key in the URL?
No. The project says to send it as an Authorization header or client secret, never in the address or the chat.
What licence does the server use?
MIT. The Firecrawl API it calls is a paid service with a free allowance.
Something wrong on this page? Tell us.