功能
- 网站抓取、爬行与发现
- 搜索与内容提取
- 深度研究与批量抓取
- 支持云端与自托管
- 支持 HTTP 流式传输
安装
远程托管 URL
使用 npx 运行
手动安装
在 Cursor 中运行
手动安装
- 打开 Cursor 设置
- 前往 Features > MCP Servers
- 点击 “+ Add new global MCP server”
- 输入以下代码:
- 打开 Cursor 设置
- 前往 Features > MCP Servers
- 点击 “+ Add New MCP Server”
- 输入以下内容:
- Name: “firecrawl-mcp”(或你偏好的名称)
- Type: “command”
- Command:
env FIRECRAWL_API_KEY=your-api-key npx -y firecrawl-mcp
如果你使用的是 Windows 并遇到问题,尝试:cmd /c "set FIRECRAWL_API_KEY=your-api-key && npx -y firecrawl-mcp"
将 your-api-key 替换为你的 Firecrawl API 密钥。如果你还没有,可以创建账号并从 https://www.firecrawl.dev/app/api-keys 获取。
添加后,刷新 MCP 服务器列表以查看新工具。Composer 代理会在合适的情况下自动使用 Firecrawl MCP,但你也可以通过描述你的网页抓取需求来显式请求。通过 Command+L(Mac)打开 Composer,在提交按钮旁选择 “Agent”,然后输入你的查询。
在 Windsurf 上运行
./codeium/windsurf/model_config.json:
以可流式 HTTP 模式运行
通过 Smithery 安装(旧版)
在 VS Code 中运行
Ctrl + Shift + P,然后输入 Preferences: Open User Settings (JSON)。
.vscode/mcp.json 文件中。这样你就可以将该配置与他人共享:
参考:directus/directus#25906(评论)。 通过其他扩展调用时,MCP 服务器仍可正常工作;但当直接将其注册到 MCP 服务器列表时会出现该问题。我们计划在 VS Code 更新其 schema 验证后提供相关指导。
在 Claude Desktop 上运行
在 Claude Code 上运行
在 n8n 上运行
- 前往 https://firecrawl.dev/app/api-keys 获取你的 Firecrawl API 密钥
- 在 n8n 工作流中添加一个 AI Agent 节点
- 在 AI Agent 的配置中添加一个新的 Tool
- 将工具类型选择为 MCP Client Tool
- 输入 MCP 服务器的 Endpoint(将
{YOUR_FIRECRAWL_API_KEY}替换为你的实际 API 密钥):
- 将 Server Transport 设置为 HTTP Streamable
- 将 Authentication 设置为 None
- 在 Tools to include 中,你可以选择 All、Selected 或 All Except——这将暴露 Firecrawl 工具(scrape、crawl、map、search、extract 等)
http://localhost:3000/v2/mcp 启动服务器,你可以在 n8n 工作流中将其用作端点。由于 n8n 需要使用 HTTP 传输,因此必须设置环境变量 HTTP_STREAMABLE_SERVER=true。
配置
环境变量
云端 API 必需
FIRECRAWL_API_KEY:你的 Firecrawl API 密钥- 使用云端 API(默认)时必需
- 在使用并配置了
FIRECRAWL_API_URL的自托管实例时可选
FIRECRAWL_API_URL(可选):自托管实例的自定义 API 端点- 示例:
https://firecrawl.your-domain.com - 如未提供,将使用云端 API(需要提供 API 密钥)
- 示例:
可选配置
重试配置
FIRECRAWL_RETRY_MAX_ATTEMPTS: 最大重试次数(默认:3)FIRECRAWL_RETRY_INITIAL_DELAY: 首次重试前的初始延迟(单位:毫秒,默认:1000)FIRECRAWL_RETRY_MAX_DELAY: 各次重试之间的最大延迟(单位:毫秒,默认:10000)FIRECRAWL_RETRY_BACKOFF_FACTOR: 指数退避系数(默认:2)
额度使用监控
FIRECRAWL_CREDIT_WARNING_THRESHOLD: 额度使用警告阈值(默认值:1000)FIRECRAWL_CREDIT_CRITICAL_THRESHOLD: 额度使用临界阈值(默认值:100)
配置示例
在 Claude Desktop 中进行自定义配置
claude_desktop_config.json:
系统配置
-
重试行为
- 因触发速率限制而失败的请求将自动重试
- 采用指数退避以避免压垮 API
- 示例:在默认设置下,重试的时间为:
- 第 1 次重试:延迟 1 秒
- 第 2 次重试:延迟 2 秒
- 第 3 次重试:延迟 4 秒(延迟上限为 maxDelay)
-
额度使用监控
- 跟踪云端 API 的额度消耗
- 在设定阈值处发出警告
- 帮助避免意外的服务中断
- 示例:在默认设置下:
- 剩余 1000 额度时发出警告
- 剩余 100 额度时发出严重警报
速率限制与批处理
- 采用指数退避自动处理速率限制
- 高效并行处理批量任务
- 智能请求排队与限流
- 对瞬时性错误自动重试
可用的工具
1. Scrape 工具(firecrawl_scrape)
2. 批量抓取工具 (firecrawl_batch_scrape)
3. 检查批次状态 (firecrawl_check_batch_status)
4. 映射工具(firecrawl_map)
Map 工具选项:
url: 要映射的网站基础 URLsearch: 可选搜索词,用于筛选 URLsitemap: 站点地图使用方式——“include”、“skip” 或 “only”includeSubdomains: 是否在映射中包含子域名limit: 返回的 URL 最大数量ignoreQueryParameters: 映射时是否忽略查询参数
5. 搜索工具(firecrawl_search)
6. Crawl 工具(firecrawl_crawl)
7. 检查爬取状态(firecrawl_check_crawl_status)
8. 提取工具 (firecrawl_extract)
提取工具选项:
urls: 需要提取信息的 URL 数组prompt: 用于 LLM 提取的自定义提示systemPrompt: 用于引导 LLM 的系统提示schema: 用于结构化数据提取的 JSON 架构allowExternalLinks: 允许从外部链接提取enableWebSearch: 启用网页搜索以获取更多上下文includeSubdomains: 在提取中包含子域名
日志系统
- 操作状态与进度
- 性能指标
- 额度使用监控
- 速率限制跟踪
- 错误情况
错误处理
- 对瞬时错误自动重试
- 采用退避策略的速率限制处理
- 详细的错误信息
- 额度使用警告
- 网络抗扰性
开发
参与贡献
- Fork 此仓库
- 创建功能分支
- 运行测试:
npm test - 提交 pull request

