firecrawl-mcp-server is a free, open source data extraction & web scraping project written in TypeScript and released under MIT. It has 7,477 GitHub stars, 888 forks and 136 open issues, and was last pushed 6 hours ago. On this registry it ranks #23 of 45 tracked projects in Data Extraction & Web Scraping, with 5 head-to-head comparisons available. It gained 17 stars over the last 3 tracked days.

What is firecrawl-mcp-server?

Firecrawl MCP Server is the official Model Context Protocol server that gives Cursor, Claude, and other MCP-compatible AI clients search, scraping, and page interaction against the live web.

What it is

Firecrawl MCP Server is a Model Context Protocol server written in JavaScript that exposes the Firecrawl platform to AI agents. It lives in the MCP ecosystem, the standard interface that clients such as Cursor and Claude use to reach external capabilities, and it acts as the bridge between an agent's tool-calling loop and Firecrawl's scraping and search infrastructure. The project is the official server for the platform and is published under the MIT licence.

The concrete problem it solves is context assembly. Agents need clean, agent-ready page content, and getting that content otherwise means writing bespoke fetch, JavaScript-rendering, and retry code for every source. This server replaces that hand-rolled glue with registered tools: firecrawl_scrape turns a known URL into markdown or JSON matching a supplied schema, firecrawl_search starts from a query and returns ranked results, and firecrawl_crawl gathers many pages under one site under explicit bounds.

Key capabilities

  • firecrawl_scrape converts a single known URL into clean markdown, or into JSON matching a schema the caller supplies.
  • firecrawl_search returns ranked web results from a query and accepts scrapeOptions to fetch page content in the same call, while the search-only endpoint never fetches content.
  • firecrawl_map discovers URLs on a site without fetching their content, and firecrawl_crawl retrieves content from many pages using limit, includePaths/excludePaths, and maxDiscoveryDepth to bound the job.
  • firecrawl_interact performs click, type, and navigate actions, taking a url for a fresh page or a scrapeId to continue one already scraped, with firecrawl_interact_stop ending the session.
  • firecrawl_monitor_* tools check the same page on a recurring schedule and report diffs and change alerts rather than a single fetch.
  • Search over an index built for coding agents that covers GitHub issues, merged pull requests, READMEs, and docs.
  • Automatic retries, rate limiting, SSE support, and support for both cloud and self-hosted operation.

Who uses it and how

  • Developers driving Cursor or Claude over MCP who need documentation, issue threads, or changelogs pulled into the conversation without leaving the client.
  • Agents that start from a query rather than a URL and want ranked results plus fetched page content in one call through firecrawl_search with scrapeOptions.
  • Automation that must watch a page over time, where the firecrawl_monitor_* tools provide scheduled checks with diffs and change alerts instead of one-off fetches.
  • Sites whose content appears only after interaction, where firecrawl_interact runs the required turn before the page is read.
  • Clients with a tool-slot limit, which can target the hosted keyless endpoint exposing only firecrawl_scrape, firecrawl_search, and firecrawl_parse, or the search-only endpoint with its fixed six read-only tools.

Getting started

The quickest path is the hosted keyless endpoint at https://mcp.firecrawl.dev/v2/mcp, which runs scrape, search, and parse without an API key on a rate-limited free tier, while https://mcp.firecrawl.dev/v2/mcp-oauth handles interactive account connection and an unattended integration sends its key as an Authorization: Bearer header rather than placing it in the server URL.

How it compares

No list of paid products that this project replaces is provided, and no comparable MCP scraping server is named alongside it in the facts. On the evidence available here, it stands alone in this registry.

When to use it โ€” and when not to

Keyless access is partial by design: crawl, map, and agent still require a key, the free tier is rate-limited, and clients needing the full tool set must sign up or run the server themselves. A self-hoster takes on operating the server together with its Firecrawl backend, including the SSE and retry machinery. It is also the wrong fit when a caller must hold a browser session open and drive it step by step, because each firecrawl_interact call runs one prompt or code turn to completion and returns control.

project readme (upstream, from github) โ€” read inline

<img src="https://raw.githubusercontent.com/firecrawl/firecrawl-mcp-server/main/img/fire.png" height="140"

Firecrawl MCP Server

A Model Context Protocol (MCP) server that brings Firecrawl to MCP-compatible AI agents โ€” search, scrape, and interact with the live web for clean, agent-ready context.

Big thanks to @vrknetha, @knacklabs for the initial implementation!

Features

  • Search the web and get full page content
  • Search an index built for coding agents: GitHub issues, merged pull requests, READMEs, and docs
  • Scrape any URL into clean, structured data
  • Interact with pages โ€” click, navigate, and operate
  • Deep research with autonomous agent
  • Automatic retries and rate limiting
  • Cloud and self-hosted support
  • SSE support

Play around with our MCP Server on MCP.so's playground or on Klavis AI.

When to Use This Server

  • Use firecrawl_scrape when you have a known URL and want its content as markdown or as JSON matching a schema you supply.
  • Use firecrawl_map when you need to discover URLs on a site without fetching their content.
  • Use firecrawl_crawl when you need content from many pages under a site; set limit, includePaths/excludePaths, or maxDiscoveryDepth to bound it.
  • Use firecrawl_search when you're starting from a query rather than a URL and want ranked web results; add scrapeOptions if you also want page content fetched in the same call (the search-only endpoint never fetches content).
  • Use firecrawl_interact when a page needs a click, type, or navigate action before you can read it โ€” pass a url for a fresh page or a scrapeId to continue on one you already scraped.
  • Use the firecrawl_monitor_* tools when the same page needs to be checked on a recurring schedule with diffs and change alerts, rather than fetched once.
  • Consider something else when you need to hold a browser session open across many of your own steps with your own retry and termination logic: each firecrawl_interact call runs one prompt or code turn to completion and returns control โ€” the session can persist across calls via scrapeId and ends with firecrawl_interact_stop, but you cannot drive it interactively step-by-step from the client side within a single call.

This server lists 25 tools when the full profile registers with default settings (feedback tools included, not running in local-keyless mode). Setting FIRECRAWL_NO_SEARCH_FEEDBACK=1 and/or FIRECRAWL_NO_ENDPOINT_FEEDBACK=1 removes the corresponding feedback tools and reduces this count, as does local keyless startup. For clients with a tool-slot limit: the hosted keyless endpoint (https://mcp.firecrawl.dev/v2/mcp, no API key) exposes only 3 โ€” firecrawl_scrape, firecrawl_search, firecrawl_parse โ€” and the dedicated search-only endpoint (https://mcp.firecrawl.dev/v2/mcp-search) exposes a fixed 6 read-only tools.

Installation

Hosted MCP (keyless free tier)

Connect to the remote hosted server with no setup:

https://mcp.firecrawl.dev/v2/mcp

On the keyless free tier, scrape, search, and parse work without an API key (rate-limited). Other tools such as crawl, map, and agent still need a key.

Prefer OAuth or an API key whenever the human can sign up. It unlocks the full tool set and higher limits.

For an interactive account connection, configure your MCP client to use this server URL. This is an MCP endpoint, not a browser page; use the client's account-connection flow and do not add a second Firecrawl server entry when reconnecting:

https://mcp.firecrawl.dev/v2/mcp-oauth

For an API-key connection (for example, an unattended integration), keep the server URL as:

https://mcp.firecrawl.dev/v2/mcp

Then configure the client's secure header or secret setting with:

Authorization: Bearer <FIRECRAWL_API_KEY>

Never put an API key in the server URL. Never put an API key in an agent chat. Configure it directly in the client or secret manager. See the hosted MCP setup guide and the agent onboarding guide for client-specific instructions.

Search-only endpoint

A read-only, search-only surface is also hosted at:

https://mcp.firecrawl.dev/v2/mcp-search

It exposes a fixed set of six read-only tools: firecrawl_search, firecrawl_developer_search, and the four firecrawl_research_* tools. It performs no page-content fetching and has its own OAuth identity; the full endpoint above is unchanged. See docs/search-profile.md for the full contract.

Running with npx

env FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp

Manual Installation

npm install -g firecrawl-mcp

Running on Cursor

Configuring Cursor ๐Ÿ–ฅ๏ธ Note: Requires Cursor version 0.45.6+ For the most up-to-date configuration instructions, please refer to the official Cursor documentation on configuring MCP servers: Cursor MCP Server Configuration Guide

To configure Firecrawl MCP in Cursor v0.48.6

  1. Open Cursor Settings
  2. Go to Features > MCP Servers
  3. Click "+ Add new global MCP server"
  4. Enter the following code:
    {
      "mcpServers": {
        "firecrawl-mcp": {
          "command": "npx",
          "args": ["-y", "firecrawl-mcp"],
          "env": {
            "FIRECRAWL_API_KEY": "YOUR-API-KEY"
          }
        }
      }
    }
    

To configure Firecrawl MCP in Cursor v0.45.6

  1. Open Cursor Settings
  2. Go to Features > MCP Servers
  3. Click "+ Add New MCP Server"
  4. Enter the following:
    • Name: "firecrawl-mcp" (or your preferred name)
    • Type: "command"
    • Command: env FIRECRAWL_API_KEY=your-api-key npx -y firecrawl-mcp

If you are using Windows and are running into issues, try cmd /c "set FIRECRAWL_API_KEY=your-api-key && npx -y firecrawl-mcp"

Replace your-api-key with your Firecrawl API key. If you don't have one yet, you can create an account and get it from https://www.firecrawl.dev/app/api-keys

After adding, refresh the MCP server list to see the new tools. The Composer Agent will automatically use Firecrawl MCP when appropriate, but you can explicitly request it by describing your web scraping needs. Access the Composer via Command+L (Mac), select "Agent" next to the submit button, and enter your query.

Running on Windsurf

Add this to your ./codeium/windsurf/model_config.json:

{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

Running with Streamable HTTP Local Mode

To run the server using Streamable HTTP locally instead of the default stdio transport:

env HTTP_STREAMABLE_SERVER=true FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp

Use the url: http://localhost:3000/mcp

Installing via Smithery (Legacy)

To install Firecrawl for Claude Desktop automatically via Smithery:

npx -y @smithery/cli install @mendableai/mcp-server-firecrawl --client claude

Running on VS Code

For one-click installation, click one of the install buttons below...

Install with NPX in VS Code Install with NPX in VS Code Insiders

For manual installation, add the following JSON block to your User Settings (JSON) file in VS Code. You can do this by pressing Ctrl + Shift + P and typing Preferences: Open User Settings (JSON).

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString

readme truncated โ€” read the full docs on github

Frequently asked questions

Is firecrawl-mcp-server free to use?

firecrawl-mcp-server is open source under the MIT licence. There is no licence fee and no seat count โ€” you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does firecrawl-mcp-server do?

๐Ÿ”ฅ Official Firecrawl MCP Server - Adds powerful web scraping and search to Cursor, Claude and any other LLM clients.

What is firecrawl-mcp-server written in?

firecrawl-mcp-server is primarily written in TypeScript. Its source is publicly available at https://github.com/firecrawl/firecrawl-mcp-server, and it has 7,477 GitHub stars.