Labsco
MCP SERVER

Firecrawl

by Msparihar

Scrape, search, crawl, map and extract with Firecrawl — five tools with mobile emulation, ad blocking and schema-validated structured extraction.

Site Crawling & Scraping Infrastructure
Summary
The scrape options are where the work is.

Anyone can fetch a page; getting a usable page is the problem. Main-content-only extraction, tag include and exclude lists, a wait for client-rendered content, ad and cookie-popup blocking, and country and language headers are the settings that decide whether the result is the article or the chrome around it. Mapping before crawling is the other habit worth forming — read the structure, then crawl only the paths that matter, instead of paying for a whole site.

What it is

An MCP server over the Firecrawl API covering the whole web-data path: pull one page, search for content, crawl a site recursively, map its structure, or extract structured records from a list of URLs against a schema.

What you get
  • `scrape_url` — one page with real control: `formats` for markdown, html, rawHtml or links, `onlyMainContent` to drop headers and navs, `includeTags` and `excludeTags`, `waitFor` for a delay before fetching, `mobile` for device emulation, `blockAds` for ad and cookie popups, and a `location` with country and languages
  • `search_content` — a search with `limit`, `lang`, `country`, `location` and a timeout, with scrape options applied to the results
  • `crawl` — recursive crawling with `maxDepth`, `includePaths` and `excludePaths`, `limit`, `ignoreSitemap`, `ignoreQueryParameters`, external and backward link toggles, and a `webhook` for progress
  • `map` — the site's structure, optionally filtered by a `search` term, with `includeSubdomains`, `sitemapOnly`, and a `limit` defaulting to 5000 links
  • `extract` — structured data from several URLs at once against a `schema`, with a `prompt` for guidance and `enableWebSearch` to pull in context
  • Structured extraction on a single page too, through `jsonOptions` with a prompt, schema and system prompt
Requirements

A Firecrawl API key from the developer portal, set as `FIRECRAWL_API_KEY` — the server's env block is the reliable place for it. The README's install line names `@modelcontextprotocol/mcp-server-firecrawl`, which npm does not have; package.json declares version 1.0.0. Optional environment variables tune the client: `FIRECRAWL_API_BASE_URL` for a custom endpoint, `FIRECRAWL_TIMEOUT`, `FIRECRAWL_MAX_RETRIES`, `FIRECRAWL_RETRY_DELAY`, and `DEBUG` for verbose logging. Rate limiting uses exponential backoff with automatic retries. MIT licensed.