Server facts
Firecrawl MCP Server
Project
- Author
- mendableai
- Website
- firecrawl.dev
- License
- MIT
- Category
- Search & Web Data
Tech
- Runtime / language
- node
- Transports
- stdio
- Remote available
- No
- Authentication
- Not specified
Activity
- GitHub stars
- 7,615
- Last commit
- Data as of
Tags
- Content Extraction
- Firecrawl
- Web Monitoring
- Web Scraping
- Web Search
Overview
Firecrawl MCP gives compatible assistants several ways to collect information from the web. A known page can be scraped into selected output formats, while site mapping discovers URLs without retrieving every page's contents. Search handles open-ended discovery, and crawling collects content across a bounded website scope. Live interaction adds browser actions such as navigation, clicks, and field entry. For broader questions, an asynchronous research agent can combine multiple sources into a structured result. The supplied tool data also includes document parsing, recurring monitors, scientific paper research, and searches aimed at developer questions.
Deployment can use Firecrawl's hosted endpoint or a locally launched npx package. Hosted keyless access is limited to rate-controlled scraping, search, and interaction; other capabilities require credentials. API keys or OAuth expand access, and a custom API URL supports self-hosted Firecrawl instances. The local server defaults to stdio, with Streamable HTTP and SSE alternatives documented. Tool selection matters: the README recommends schema-based JSON when only particular fields are needed, because full markdown and crawl output can consume substantial context. It also distinguishes single-page scraping from URL discovery and whole-site collection. This makes the integration appropriate for agents that need both targeted extraction and broader research, provided callers choose suitable scopes and authentication.
Install & configure
Requirements
- An MCP-compatible client
- npx for the local package
- Firecrawl credentials for full cloud API access
npx -y firecrawl-mcpThe command describes local stdio operation. The remote URL offers a limited keyless tier. Set FIRECRAWL_API_URL for a self-hosted backend, where authentication may be optional.
Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Config file · macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Use Settings → Developer → Edit Config when available. Do not assume a Linux configuration path; check the client documentation for your platform. Remote servers use the app’s connector flow when supported, not the local stdio file shown here. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"firecrawl-mcp-server": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "<your Firecrawl API key>"
}
}
}
}Config file · Project: .cursor/mcp.json
User: ~/.cursor/mcp.json
The project path is relative to the workspace root. The tilde denotes your user home directory. Use Cursor’s MCP settings to confirm which configuration and scope your installed version is reading. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"firecrawl-mcp-server": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "<your Firecrawl API key>"
}
}
}
}Config file · Workspace: .vscode/mcp.json
For user scope, use the “MCP: Open User Configuration” command if available. Do not guess a user configuration path across operating systems, profiles, containers, or remote workspaces; check the client documentation. Merge this example with existing settings; do not overwrite unrelated servers.
{
"servers": {
"firecrawl-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "<your Firecrawl API key>"
}
}
}
}Config file · macOS/Linux: ~/.codeium/windsurf/mcp_config.json
Windows: %USERPROFILE%\.codeium\windsurf\mcp_config.json
Open the MCP configuration through Windsurf’s settings when possible to confirm the active file. Paths can differ in managed or future releases; check the client documentation if this location is not present. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"firecrawl-mcp-server": {
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "<your Firecrawl API key>"
}
}
}
}Config file · Project scope: .mcp.json at the repository root
The project file uses mcpServers. For user scope, use claude mcp add --scope user rather than assuming .mcp.json in your home directory is the user configuration. Check the client documentation for managed settings and storage details. Merge this example with existing settings; do not overwrite unrelated servers.
{
"mcpServers": {
"firecrawl-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"firecrawl-mcp"
],
"env": {
"FIRECRAWL_API_KEY": "<your Firecrawl API key>"
}
}
}
}Examples are translated from the published configuration. Supply your own credentials and verify requirements in the upstream README. Remote connectors are shown only where a supported configuration format is known.
Tools
Source: repository tool metadata. Tool descriptions are a documented snapshot, not a live capability check.
| Tool | What it does |
|---|---|
| firecrawl_scrape | Extract one page into chosen formats, including schema-shaped JSON. |
| firecrawl_map | Discover indexed URLs belonging to a website. |
| firecrawl_search | Find ranked web, news, or image results with search operators and filters. |
| firecrawl_search_feedback | Record validated quality feedback for an earlier search result set. |
| firecrawl_feedback | Send compact quality feedback about a completed collection job. |
| firecrawl_crawl | Collect multiple site pages within configured scope and return final crawl results. |
| firecrawl_check_crawl_status | Read progress and available results for an existing crawl. |
| firecrawl_extract | Deprecated extraction entry point; use JSON scraping for known URLs instead. |
| firecrawl_agent | Launch asynchronous multi-source research from a prompt and optional schema. |
| firecrawl_agent_status | Check whether an agent research task is still running or has final results. |
| firecrawl_interact | Use a live browser session for navigation, actions, or executable browser work. |
| firecrawl_interact_stop | Release resources by closing an interaction session. |
| firecrawl_parse | Convert supported documents to readable content or schema-shaped output. |
| firecrawl_monitor_create | Schedule recurring collection checks with change comparison. |
| firecrawl_monitor_list | Browse monitors associated with the authenticated account. |
| firecrawl_monitor_get | Read a monitor's settings and current state. |
| firecrawl_monitor_update | Modify a monitor's schedule, targets, status, or other settings. |
| firecrawl_monitor_delete | Permanently remove a monitor and its future schedule. |
| firecrawl_monitor_run | Queue an extra check outside a monitor's regular schedule. |
| firecrawl_monitor_checks | List past checks for a monitor with optional status filtering. |
| firecrawl_monitor_check | Inspect a particular check and its page-level change results. |
| firecrawl_research_search_papers | Find indexed scientific paper metadata and abstracts using a natural-language query. |
| firecrawl_research_inspect_paper | Retrieve canonical metadata for an identified scientific paper. |
| firecrawl_research_related_papers | Discover related papers through citation relationships around seed papers. |
| firecrawl_research_read_paper | Read indexed paper passages relevant to a specific question. |
| firecrawl_research_search_github | Search indexed public repository issues, pull requests, and README content. |
| firecrawl_developer_search | Find coding answers across curated documentation and GitHub discussions. |
Names, permissions, and defaults can change. Check the current upstream documentation before granting access.
Use cases
- Extract selected fields from a known web page into JSON.
- Discover site URLs before choosing pages to scrape.
- Research a question across multiple sources asynchronously.
- Track recurring changes across pages or search results.
- Find relevant scientific papers and developer discussions.
Strengths
- Supports hosted and self-hosted Firecrawl backends.
- Combines discovery, extraction, interaction, and research tools.
- Offers limited hosted access without an API key.
- Includes automatic retries and rate limiting.
Limitations
- The keyless tier is rate-limited and excludes several tools.
- Large crawls and full-page markdown can consume substantial model context.
- The extract compatibility tool is deprecated in favor of schema-based scraping.
Frequently asked questions
Independent listing, not an affiliation or security review. Grant the least access needed and verify the upstream instructions before running code.