官方Firecrawl MCP服务器,为Cursor、Claude等工具提供强大的网页抓取与搜索功能。

20 次收藏下载次数: 0状态:社区镜像维护者:mcp(Model Context Protocol)仓库类型:镜像最近更新:6 天前
下载命令
点击查看

Firecrawl MCP Server

镜像概述和主要用途

Firecrawl MCP Server 是官方的 MCP(模型上下文协议)服务器,可为 Cursor、Claude 及其他 LLM 客户端提供强大的网页抓取和搜索功能。通过该服务器,LLM 客户端能够集成网页内容提取、网站映射、结构化数据抽取等能力,扩展其处理网络信息的能力。

https://www.anthropic.com/news/model-context-protocol

核心功能和特性

镜像特性

属性详情
Docker 镜像https://hub.docker.com/repository/docker/mcp/firecrawl
作者https://github.com/firecrawl
代码仓库https://github.com/mendableai/firecrawl-mcp-server
Dockerfilehttps://github.com/mendableai/firecrawl-mcp-server/blob/main/Dockerfile
镜像构建方Docker Inc.
Docker Scout 健康评分
验证签名COSIGN_REPOSITORY=mcp/signatures cosign verify mcp/firecrawl --key https://raw.githubusercontent.com/docker/keyring/refs/heads/main/public/mcp/latest.pub
许可证MIT License

核心功能

  • 提供 6 种网页处理工具,覆盖抓取、爬取、结构化提取、网站映射、搜索等场景
  • 支持多页面内容提取与单页面精准爬取
  • 集成 LLM 能力实现结构化数据抽取
  • 提供网站 URL 发现与映射功能
  • 支持网页搜索及结果内容提取
  • 可配置重试机制、缓存策略等高级选项

使用场景和适用范围

适用场景

  • 多页面内容提取:需全面覆盖网站多个相关页面内容(使用 firecrawl_crawl)
  • 单页面精准爬取:已知具体 URL,需快速获取内容(使用 firecrawl_scrape)
  • 结构化数据抽取:从网页中提取特定格式数据(如产品信息、价格等,使用 firecrawl_extract)
  • 网站URL发现:获取网站所有索引URL(使用 firecrawl_map)
  • 网页搜索:跨网站查找特定信息(使用 firecrawl_search)
  • 爬取任务监控:跟踪多页面爬取进度(使用 firecrawl_check_crawl_status)

不适用场景

  • 单页面爬取使用 firecrawl_crawl(应使用 firecrawl_scrape)
  • 已知URL列表批量爬取使用 firecrawl_scrape 多次调用(建议使用批量爬取方案)
  • 对响应大小敏感场景使用 firecrawl_crawl(可能超出LLM token限制,建议 firecrawl_map + 批量 firecrawl_scrape)
  • 文件系统搜索(工具仅支持网页内容)

可用工具

工具名称简短描述
firecrawl_check_crawl_status检查爬取任务状态
firecrawl_crawl启动网站爬取任务,提取所有页面内容
firecrawl_extract使用LLM能力从网页提取结构化信息
firecrawl_map映射网站以发现所有索引URL
firecrawl_scrape从单个URL爬取内容,支持高级选项
firecrawl_search搜索网页并可选提取结果内容

工具详情

工具:firecrawl_check_crawl_status

检查爬取任务状态。

使用示例:

json
{
  "name": "firecrawl_check_crawl_status",
  "arguments": {
    "id": "550e8400-e29b-41d4-a716-446655440000"
  }
}

返回值:爬取任务的状态和进度,包含可用结果(如已完成)。

参数类型描述
idstring爬取任务ID(必填)

工具:firecrawl_crawl

启动网站爬取任务,提取所有页面内容。

最佳用途:从多个相关页面提取内容,需全面覆盖时使用。
不推荐用途:单页面提取(使用 firecrawl_scrape);对token限制敏感场景(使用 firecrawl_map + 批量 firecrawl_scrape);需快速结果场景(爬取可能较慢)。
警告:爬取响应可能非常大,可能超出token限制。建议限制爬取深度和页面数量,或使用 firecrawl_map + 批量 firecrawl_scrape 以更好控制。
常见错误:limit 或 maxDiscoveryDepth 设置过高(导致token溢出)或过低(导致遗漏页面);单页面使用此工具(应使用 firecrawl_scrape);使用 /* 通配符。

提示示例:"获取 example.com/blog 前两级的所有博客文章。"

使用示例:

json
{
  "name": "firecrawl_crawl",
  "arguments": {
    "url": "https://example.com/blog/*",
    "maxDiscoveryDepth": 5,
    "limit": 20,
    "allowExternalLinks": false,
    "deduplicateSimilarURLs": true,
    "sitemap": "include"
  }
}

返回值:用于状态检查的操作ID;需使用 firecrawl_check_crawl_status 检查进度。

参数类型描述
urlstring爬取起始URL(必填)
allowExternalLinksboolean可选,是否允许外部链接
allowSubdomainsboolean可选,是否允许子域名
crawlEntireDomainboolean可选,是否爬取整个域名
deduplicateSimilarURLsboolean可选,是否去重相似URL
delaynumber可选,请求延迟(毫秒)
excludePathsarray可选,排除路径列表
ignoreQueryParametersboolean可选,是否忽略查询参数
includePathsarray可选,包含路径列表
limitnumber可选,最大爬取页面数
maxConcurrencynumber可选,最大并发数
maxDiscoveryDepthnumber可选,最大发现深度
promptstring可选,LLM提示
scrapeOptionsobject可选,爬取选项
sitemapstring可选,是否包含站点地图(如 "include")
webhookstring可选,结果回调URL

工具:firecrawl_extract

使用LLM能力从网页提取结构化信息。支持云AI和自托管LLM提取。

最佳用途:从网页中提取特定结构化数据(如价格、名称、详情等)。
不推荐用途:需获取页面完整内容(使用 firecrawl_scrape);无需特定结构化数据时。

提示示例:"从这些产品页面提取产品名称、价格和描述。"

使用示例:

json
{
  "name": "firecrawl_extract",
  "arguments": {
    "urls": ["https://example.com/page1", "https://example.com/page2"],
    "prompt": "提取产品信息,包括名称、价格和描述",
    "schema": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "price": { "type": "number" },
        "description": { "type": "string" }
      },
      "required": ["name", "price"]
    },
    "allowExternalLinks": false,
    "enableWebSearch": false,
    "includeSubdomains": false
  }
}

返回值:按指定schema提取的结构化数据。

参数类型描述
urlsarray待提取URL列表(必填)
allowExternalLinksboolean可选,是否允许外部链接
enableWebSearchboolean可选,是否启用网页搜索补充上下文
includeSubdomainsboolean可选,是否包含子域名
promptstring可选,LLM提取提示
schemaobject可选,结构化数据JSON schema

工具:firecrawl_map

映射网站以发现所有索引URL。

最佳用途:爬取前发现网站URL;查找网站特定部分URL。
不推荐用途:已知具体URL(使用 firecrawl_scrape);需页面内容(映射后使用 firecrawl_scrape)。
常见错误:使用 firecrawl_crawl 代替此工具发现URL。

提示示例:"列出 example.com 的所有URL。"

使用示例:

json
{
  "name": "firecrawl_map",
  "arguments": {
    "url": "https://example.com"
  }
}

返回值:网站中发现的URL数组。

参数类型描述
urlstring映射起始URL(必填)
ignoreQueryParametersboolean可选,是否忽略查询参数
includeSubdomainsboolean可选,是否包含子域名
limitnumber可选,URL数量限制
searchstring可选,搜索关键词
sitemapstring可选,是否包含站点地图(如 "include")

工具:firecrawl_scrape

从单个URL爬取内容,支持高级选项。
这是功能最强、速度最快、最可靠的爬取工具,如有需要,任何网页爬取需求均建议优先使用此工具。

最佳用途:单页面内容提取,已知具体页面包含所需信息。
不推荐用途:多页面爬取(使用批量爬取方案);未知页面(使用 firecrawl_search);结构化数据(使用 firecrawl_extract)。
常见错误:对URL列表使用此工具(应使用批量爬取);如批量爬取不可用,可多次调用此工具。

性能优化:添加 maxAge 参数可使用缓存数据,提升500%爬取速度。

提示示例:"获取 [***] 页面的内容。"

使用示例:

json
{
  "name": "firecrawl_scrape",
  "arguments": {
    "url": "https://example.com",
    "formats": ["markdown"],
    "maxAge": 172800000
  }
}

返回值:指定格式(如markdown、HTML)的页面内容。

参数类型描述
urlstring爬取URL(必填)
actionsarray可选,页面交互操作列表
excludeTagsarray可选,排除的HTML标签
formatsarray可选,输出格式(如 ["markdown"])
includeTagsarray可选,包含的HTML标签
locationobject可选,地理位置信息
maxAgenumber可选,缓存最大年龄(毫秒)
mobileboolean可选,是否模拟移动设备
onlyMainContentboolean可选,是否仅提取主要内容
parsersarray可选,使用的解析器
removeBase64Imagesboolean可选,是否移除Base64图片
skipTlsVerificationboolean可选,是否跳过TLS验证
storeInCacheboolean可选,是否存储到缓存
waitFornumber可选,等待时间(毫秒)

工具:firecrawl_search

搜索网页并可选提取结果内容。这是功能最强的网页搜索工具,如有需要,任何网页搜索需求均建议优先使用此工具。

搜索运算符:

运算符功能示例
""精确匹配字符串"Firecrawl"
-排除关键词或否定运算符-bad, -site:firecrawl.dev
site:仅返回指定网站结果site:firecrawl.dev
inurl:URL中包含指定词inurl:firecrawl
allinurl:URL中包含多个词allinurl:git firecrawl
intitle:标题中包含指定词intitle:Firecrawl
allintitle:标题中包含多个词allintitle:firecrawl playground
related:返回相关域名结果related:firecrawl.dev
imagesize:返回指定尺寸图片imagesize:1920x1080
larger:返回大于指定尺寸图片larger:1920x1080

最佳用途:跨网站查找特定信息(未知哪个网站包含);需查询最相关内容时。
不推荐用途:文件系统搜索;已知目标网站(使用 firecrawl_scrape);需全面覆盖单个网站(使用 firecrawl_map 或 firecrawl_crawl)。
常见错误:对开放式问题使用 firecrawl_crawl 或 firecrawl_map(应使用此工具)。

来源:web(网页)、images(图片)、news(新闻),默认web,除非需要图片或新闻。
爬取选项:仅在必要时使用 scrapeOptions,建议限制 limit 为5或更低以避免超时。

提示示例:"查找2023年发表的最新AI研究论文。"

使用示例(无格式):

json
{
  "name": "firecrawl_search",
  "arguments": {
    "query": "top AI companies",
    "limit": 5,
    "sources": ["web"]
  }
}

使用示例(带格式):

json
{
  "name": "firecrawl_search",
  "arguments": {
    "query": "latest AI research papers 2023",
    "limit": 5,
    "lang": "en",
    "country": "us",
    "sources": ["web", "images", "news"],
    "scrapeOptions": {
      "formats": ["markdown"],
      "onlyMainContent": true
    }
  }
}

返回值:搜索结果数组(可选包含爬取内容)。

参数类型描述
querystring搜索查询词(必填)
filterstring可选,过滤条件
limitnumber可选,结果数量限制
locationstring可选,地理位置
scrapeOptionsobject可选,结果爬取选项
sourcesarray可选,搜索来源(web/images/news)
tbsstring可选,时间范围等高级搜索参数

Docker部署指南

环境变量说明

环境变量描述默认值必填
FIRECRAWL_API_URLFirecrawl API基础URLhttps://api.firecrawl.dev/v1否
FIRECRAWL_API_KEYFirecrawl API密钥-是(需替换为用户密钥)
FIRECRAWL_RETRY_MAX_ATTEMPTS最大重试次数5否
FIRECRAWL_RETRY_INITIAL_DELAY初始重试延迟(毫秒)2000否
FIRECRAWL_RETRY_MAX_DELAY最大重试延迟(毫秒)30000否
FIRECRAWL_RETRY_BACKOFF_FACTOR重试退避因子3

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 firecrawl 镜像标签

docker pull docker.xuanyuan.run/mcp/firecrawl:<标签>

DockerHub 原生拉取命令

docker pull mcp/firecrawl:<标签>
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告