Free to browse, every day. Go Pro for unlimited installs and Airsc MCP.

See Pro
MCP serverSafeBrowser automation & web dataSome setup Verified live

firecrawl-mcp-server

firecrawl · firecrawl/firecrawl-mcp-server

An official MCP server that enables AI agents to search, scrape, and interact with the live web for clean, structured data.

Official Firecrawl MCP server, the context API for AI agents: search, scrape, and interact with the web, plus parse, crawl, map, Agent and Monitor, from any MCP client.

7.7k stars918License: MITUpdated yesterday0 opens

Preview

▍

What you can do with it

  • Scrape specific data from a known URL and provide it to the agent as structured JSON for analysis.
  • Perform deep web research by letting the agent search and crawl multiple pages for information.
  • Automate filling out web forms or interacting with web elements before extracting content using the agent.

Verified live · 26 tools

We started this MCP server in an isolated sandbox and it exposed these tools:

  • firecrawl_scrape

    Scrape one URL and return its content: markdown by default, or HTML, links, screenshots, branding data, a targeted answer, or JSON matching a supplied schema. Use it when the request identifies a pag

  • firecrawl_map

    Enumerate URLs indexed under one website through Firecrawl without fetching each page's content. Use this when the request asks for a site's URL inventory, when several relevant pages must be located

  • firecrawl_search

    Search web, news, or image sources and return ranked results with query-relevant highlights. Each web result is a title, URL, and description; use `firecrawl_scrape` on a result URL when the excerpt

  • firecrawl_find_tools

    Browse Alexandria data providers and workflows or read a selected contract. Alexandria covers companies, people, jobs, finance and filings, public records and government spending, real estate, places

  • firecrawl_crawl

    Start a multi-page crawl at a website URL, poll it to a terminal state, and return the final status and collected data. Scope can be bounded with include/exclude paths, depth, page limit, subdomain/e

  • firecrawl_check_crawl_status

    Retrieve the current status, progress, and available results for an existing crawl ID. This only reads Firecrawl job state and does not start or modify the crawl.

  • firecrawl_agent

    Run web research that returns structured data when the URLs are not known or the answer spans several sites. Describe the fields you need in `prompt`, optionally pass a JSON `schema` and seed `urls`,

  • firecrawl_agent_status

    Retrieve progress or final results for a `firecrawl_agent` job ID. A `processing` response is non-terminal and does not contain the final research result. Check again after 15–30 seconds until the st

  • firecrawl_interact

    Open or reuse a live browser session to navigate a page, click controls, fill fields, or run browser code. Provide either `url` or `scrapeId`, and either a natural-language `prompt` or executable `co

  • firecrawl_interact_stop

    Stop the live interact session associated with a `scrapeId` and release its resources. Returns a success confirmation.

  • firecrawl_parse

    Parse one supported document into markdown, HTML, links, summary, targeted answers, or JSON matching a schema. Supported inputs include common HTML, PDF, Word, RTF, OpenDocument, and spreadsheet file

  • firecrawl_monitor_create

    Create a recurring scrape, crawl, or search monitor that compares each check with its retained predecessor. The simple form accepts `page`/`pages` or `queries` plus a plain-language `goal`; the advan

  • firecrawl_monitor_list

    List monitors for the authenticated account with optional pagination controls. Returns one page of monitor records and pagination metadata.

  • firecrawl_monitor_get

    Retrieve one monitor by ID, including its configuration and current state. This does not run or modify the monitor.

  • firecrawl_monitor_update

    Patch an existing monitor by ID. The body can change its name, active/paused status, schedule, targets, goal, judging, webhook, notifications, or retention; these changes affect future scheduled chec

npx -y firecrawl-mcp · 11/10/2026

Safety check

Safe

No risky patterns found in the files we scanned.

Automated scan of the repo files. Always review code you run.

From the README

Firecrawl MCP Server

A Model Context Protocol (MCP) server that brings Firecrawl, the context API for AI agents, to MCP-compatible clients: search, scrape, and interact with the live web and get back clean Markdown or structured data.

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

Features

  • Search the web, optionally with full page content for each result
  • Search indexes for developer sources (GitHub issues, merged pull requests, READMEs, and docs), US government sources, and scientific papers (PubMed, bioRxiv, medRxiv, arXiv)
  • Scrape any URL into clean Markdown or structured JSON
  • Parse PDFs and documents
  • Crawl a site for content from many pages, or map it to discover its URLs
  • Interact with pages in a real browser: click, type, fill forms, and navigate dynamic pages
  • Run Agent jobs for multi-source research that returns structured data
  • Monitor pages and get notified when their content changes
  • Check current and historical Firecrawl credit usage
  • 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. Results carry excerpts; fetch full pages with firecrawl_scrape on the URLs you need. scrapeOptions fetches every result's page in the same call and bills each as a scrape, so keep it for the full text of a few results (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.
  • Use firecrawl_credit_usage to check credits left or what credits were spent on, by month or day, optionally broken down by endpoint or API key.
  • 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 27 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 set of 9 tools (search, developer, government, and research search, plus Alexandria catalogue lookup and execution).

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.

Naming your integration

An integration that connects over HTTP can name itself with an X-Firecrawl-Origin header, for example X-Firecrawl-Origin: my-agent. The server reports it to Firecrawl as the request origin mcp-my-agent@<server version>, in place of the client name or User-Agent it would otherwise report. Use letters, digits and dashes: each run of other characters becomes one dash, leading and trailing dashes are dropped, and the name is cut at 48 characters. Tool results are unaffected; only the origin sent to the Firecrawl API (and passed to an embedder's beforeKeylessRequest) changes.

Search-only endpoint

A fixed-scope search surface is also hosted at:

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

It exposes a fixed set of nine tools: firecrawl_search, firecrawl_developer_search, firecrawl_gov_search, the four firecrawl_research_* t

View source on GitHub