AI个人学习
和实操指南
讯飞绘镜

Firecrawl MCP Server:基于 Firecrawl 的网页爬虫 MCP 服务

综合介绍

Firecrawl MCP Server 是由 MendableAI 开发的一款开源工具,基于 Model Context Protocol (MCP) 协议实现,与 Firecrawl API 集成,提供强大的网页抓取和数据提取功能。它专为 AI 模型(如 Cursor、Claude 等 LLM 客户端)设计,支持从单页抓取到批量爬取、搜索和结构化数据提取等多种操作。无论是动态网页的 JavaScript 渲染,还是深层爬取和内容过滤,Firecrawl MCP Server 都能高效完成任务。该工具支持云端和自托管部署,配备自动重试、速率限制和日志系统,适合开发者、研究人员和数据工程师使用。截至 2025 年 3 月,项目在 GitHub 上持续更新,得到社区广泛认可。

Firecrawl MCP Server:基于Firecrawl的网络爬取MCP协议-1


 

功能列表

  • 单页抓取:从指定 URL 提取 Markdown 或结构化数据。
  • 批量爬取:高效处理多个 URL,支持并行操作和内置速率限制。
  • 网页搜索:根据查询提取搜索结果中的内容。
  • 深度爬取:支持 URL 发现和多层网页爬取。
  • 数据提取:利用 LLM 从网页提取结构化信息。
  • JavaScript 渲染:抓取动态网页的完整内容。
  • 智能过滤:通过标签包含/排除实现内容筛选。
  • 状态监控:提供批处理任务进度和信用使用情况查询。
  • 日志系统:记录操作状态、性能和错误信息。
  • 移动/桌面支持:适配不同设备视口。

 

使用帮助

安装流程

Firecrawl MCP Server 提供多种安装方式,适用于不同使用场景。以下是详细步骤:

方式 1:使用 npx 快速运行

  1. 获取 Firecrawl API 密钥(在 Firecrawl 官网 注册获取)。
  2. 打开终端,设置环境变量:
    export FIRECRAWL_API_KEY="fc-YOUR_API_KEY"

替换 "fc-YOUR_API_KEY" 为你的实际密钥。
3. 运行命令:

npx -y firecrawl-mcp
  1. 成功启动后,终端显示 [INFO] FireCrawl MCP Server initialized successfully

方式 2:手动安装

  1. 全局安装:
    npm install -g firecrawl-mcp
    
  2. 设置环境变量(如上)。
  3. 运行:
    firecrawl-mcp
    

方式 3:自托管部署

  1. 克隆 GitHub 仓库:
    git clone https://github.com/mendableai/firecrawl-mcp-server.git
    cd firecrawl-mcp-server
    
  2. 安装依赖:
    npm install
    
  3. 构建项目:
    npm run build
    
  4. 设置环境变量后运行:
    node dist/src/index.js
    

方式 4:在 Cursor 上运行

  1. 确保 Cursor 版本为 0.45.6 或以上。
  2. 打开 Cursor 设置 > Features > MCP Servers。
  3. 点击 "+ 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"
  4. 保存并刷新 MCP 服务器列表,Composer Agent 会自动调用。

方式 5:在 Windsurf 上运行

  1. 编辑 ./codeium/windsurf/model_config.json
    {
    "mcpServers": {
    "mcp-server-firecrawl": {
    "command": "npx",
    "args": ["-y", "firecrawl-mcp"],
    "env": {
    "FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE"
    }
    }
    }
    }
    
  2. 保存后运行 Windsurf。

配置环境变量

必选配置

  • FIRECRAWL_API_KEY:云端 API 密钥,使用云服务时必须设置。

可选配置

  • FIRECRAWL_API_URL:自托管实例的 API 端点,例如 https://firecrawl.your-domain.com
  • 重试配置:
    • 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。

配置示例

云端使用:

export FIRECRAWL_API_KEY="your-api-key"
export FIRECRAWL_RETRY_MAX_ATTEMPTS=5
export FIRECRAWL_RETRY_INITIAL_DELAY=2000
export FIRECRAWL_CREDIT_WARNING_THRESHOLD=2000

主要功能操作流程

功能 1:单页抓取 (firecrawl_scrape)

  • 操作步骤
    1. 启动服务器后,发送 POST 请求:
      curl -X POST http://localhost:端口/firecrawl_scrape \
      -H "Content-Type: application/json" \
      -d '{"url": "https://example.com", "formats": ["markdown"], "onlyMainContent": true, "timeout": 30000}'
      
    2. 返回 Markdown 格式的主要内容。
  • 参数说明
    • onlyMainContent:仅提取主要内容。
    • includeTags/excludeTags:指定包含或排除的 HTML 标签。
  • 应用场景:快速提取文章或页面核心信息。

功能 2:批量爬取 (firecrawl_batch_scrape)

  • 操作步骤
    1. 发送批量请求:
      curl -X POST http://localhost:端口/firecrawl_batch_scrape \
      -H "Content-Type: application/json" \
      -d '{"urls": ["https://example1.com", "https://example2.com"], "options": {"formats": ["markdown"]}}'
      
    2. 获取操作 ID,例如 batch_1
    3. 检查状态:
      curl -X POST http://localhost:端口/firecrawl_check_batch_status \
      -H "Content-Type: application/json" \
      -d '{"id": "batch_1"}'
      
  • 特色:内置速率限制和并行处理,适合大规模数据收集。

功能 3:网页搜索 (firecrawl_search)

  • 操作步骤
    1. 发送搜索请求:
      curl -X POST http://localhost:端口/firecrawl_search \
      -H "Content-Type: application/json" \
      -d '{"query": "AI tools", "limit": 5, "scrapeOptions": {"formats": ["markdown"]}}'
      
    2. 返回搜索结果的 Markdown 内容。
  • 用途:实时获取与查询相关的网页数据。

功能 4:深度爬取 (firecrawl_crawl)

  • 操作步骤
    1. 发起爬取请求:
      curl -X POST http://localhost:端口/firecrawl_crawl \
      -H "Content-Type: application/json" \
      -d '{"url": "https://example.com", "maxDepth": 2, "limit": 100}'
      
    2. 返回爬取结果。
  • 参数maxDepth 控制爬取深度,limit 限制页面数。

功能 5:数据提取 (firecrawl_extract)

  • 操作步骤
    1. 发送提取请求:
      curl -X POST http://localhost:端口/firecrawl_extract \
      -H "Content-Type: application/json" \
      -d '{"urls": ["https://example.com"], "prompt": "Extract product name and price", "schema": {"type": "object", "properties": {"name": {"type": "string"}, "price": {"type": "number"}}}}'
      
    2. 返回结构化数据。
  • 特色:支持 LLM 提取,自定义 schema 确保输出格式。

使用技巧

  • 日志查看:运行时关注终端日志(如 [INFO] Starting scrape)以调试。
  • 错误处理:若遇 [ERROR] Rate limit exceeded,调整重试参数或等待。
  • 与 LLM 集成:在 Cursor 或 Claude 中直接输入抓取需求,自动调用工具。

通过以上操作,用户可以轻松部署并使用 Firecrawl MCP Server,满足多样化的网页数据需求。

CDN1
未经允许不得转载:首席AI分享圈 » Firecrawl MCP Server:基于 Firecrawl 的网页爬虫 MCP 服务

首席AI分享圈

首席AI分享圈专注于人工智能学习,提供全面的AI学习内容、AI工具和实操指导。我们的目标是通过高质量的内容和实践经验分享,帮助用户掌握AI技术,一起挖掘AI的无限潜能。无论您是AI初学者还是资深专家,这里都是您获取知识、提升技能、实现创新的理想之地。

联系我们
zh_CN简体中文