Token导航 LogoToken导航TokenDH.com
Firecrawl MCP (Tony R Houston) logo
浏览器工具stdio官方级别未说明来源级核验

Firecrawl MCP (Tony R Houston)

MCP Server

@smithery/cli

Firecrawl MCP Server 是一个实现模型上下文协议(MCP)的服务器,集成了Firecrawl的网页抓取功能,支持多种配置和部署方式。

工具数

8

提示词数

0

GitHub Stars

0

资源数

0
浏览器自动化内容提取JavaScriptVS CodeClaude DesktopClaudeCursorWindsurfVS CodeVS Code Insiders

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

TonyRHouston

提供方

TonyRHouston

最后核验

2026/5/17 20:19

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx -y @smithery/cli install @mendableai/mcp-server-firecrawl --client claude

详细介绍

Firecrawl MCP服务器

一种模型上下文协议(MCP)服务器实现,与 火爬 用于网络抓取功能。

特性

  • 网络抓取、爬行和发现
  • 搜索和内容提取
  • 深入研究和批量刮削
  • 自动重试和速率限制
  • 云和自托管支持
  • SSE支持
摆弄 我们的MCP服务器在MCP.so的操场上 或在 克拉维斯AI.

安装

使用npx运行

env FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp

手动安装

npm install -g firecrawl-mcp

在游标上运行

配置光标🖥️ 注意:需要游标版本0.45.6+ 有关最新的配置说明,请参阅配置MCP服务器的官方Cursor文档: 光标MCP服务器配置指南

在游标中配置Firecrawl MCP v0.48.6

  1. 打开光标设置
  2. 转到功能>MCP服务器
  3. 点击“+添加新的全局MCP服务器”
  4. 输入以下代码:
   {
     "mcpServers": {
       "firecrawl-mcp": {
         "command": "npx",
         "args": ["-y", "firecrawl-mcp"],
         "env": {
           "FIRECRAWL_API_KEY": "YOUR-API-KEY"
         }
       }
     }
   }

在游标中配置Firecrawl MCP v0.45.6

  1. 打开光标设置
  2. 转到功能>MCP服务器
  3. 点击“+添加新MCP服务器”
  4. 输入以下内容:

- 名称:“firecrawl mcp”(或您喜欢的名字) - 类型:“命令” - 命令: 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”,然后输入您的查询。

在风帆上跑步

将此添加到您的 ./codeium/windsurf/model_config.json:

{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY"
      }
    }
  }
}

以流式HTTP本地模式运行

要在本地使用Streamable HTTP而不是默认的stdio传输运行服务器:

env HTTP_STREAMABLE_SERVER=true FIRECRAWL_API_KEY=fc-YOUR_API_KEY npx -y firecrawl-mcp

使用网址:http://localhost:3000/mcp

通过Smithery安装(传统)

通过以下方式自动安装克劳德桌面版Firecrawl 史密瑟里:

npx -y @smithery/cli install @mendableai/mcp-server-firecrawl --client claude

在VS代码上运行

对于一键安装,请单击下面的安装按钮之一。..

对于手动安装,请将以下JSON块添加到VS Code中的用户设置(JSON)文件中。您可以按 Ctrl + Shift + P 和打字 Preferences: Open User Settings (JSON).

{
  "mcp": {
    "inputs": [
      {
        "type": "promptString",
        "id": "apiKey",
        "description": "Firecrawl API Key",
        "password": true
      }
    ],
    "servers": {
      "firecrawl": {
        "command": "npx",
        "args": ["-y", "firecrawl-mcp"],
        "env": {
          "FIRECRAWL_API_KEY": "${input:apiKey}"
        }
      }
    }
  }
}

您可以选择将其添加到名为的文件中 .vscode/mcp.json 在您的工作空间中。这将允许您与他人共享配置:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "apiKey",
      "description": "Firecrawl API Key",
      "password": true
    }
  ],
  "servers": {
    "firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "${input:apiKey}"
      }
    }
  }
}

配置

环境变量

云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)

配置示例

对于带有自定义重试和信用监控的云API使用:

# Required for cloud API
export FIRECRAWL_API_KEY=your-api-key

# Optional retry configuration
export FIRECRAWL_RETRY_MAX_ATTEMPTS=5        # Increase max retry attempts
export FIRECRAWL_RETRY_INITIAL_DELAY=2000    # Start with 2s delay
export FIRECRAWL_RETRY_MAX_DELAY=30000       # Maximum 30s delay
export FIRECRAWL_RETRY_BACKOFF_FACTOR=3      # More aggressive backoff

# Optional credit monitoring
export FIRECRAWL_CREDIT_WARNING_THRESHOLD=2000    # Warning at 2000 credits
export FIRECRAWL_CREDIT_CRITICAL_THRESHOLD=500    # Critical at 500 credits

对于自托管实例:

# Required for self-hosted
export FIRECRAWL_API_URL=https://firecrawl.your-domain.com

# Optional authentication for self-hosted
export FIRECRAWL_API_KEY=your-api-key  # If your instance requires auth

# Custom retry configuration
export FIRECRAWL_RETRY_MAX_ATTEMPTS=10
export FIRECRAWL_RETRY_INITIAL_DELAY=500     # Start with faster retries

使用Claude Desktop

将此添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "mcp-server-firecrawl": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR_API_KEY_HERE",

        "FIRECRAWL_RETRY_MAX_ATTEMPTS": "5",
        "FIRECRAWL_RETRY_INITIAL_DELAY": "2000",
        "FIRECRAWL_RETRY_MAX_DELAY": "30000",
        "FIRECRAWL_RETRY_BACKOFF_FACTOR": "3",

        "FIRECRAWL_CREDIT_WARNING_THRESHOLD": "2000",
        "FIRECRAWL_CREDIT_CRITICAL_THRESHOLD": "500"
      }
    }
  }
}

系统配置

服务器包括几个可配置的参数,可以通过环境变量进行设置。以下是未配置的默认值:

const CONFIG = {
  retry: {
    maxAttempts: 3, // Number of retry attempts for rate-limited requests
    initialDelay: 1000, // Initial delay before first retry (in milliseconds)
    maxDelay: 10000, // Maximum delay between retries (in milliseconds)
    backoffFactor: 2, // Multiplier for exponential backoff
  },
  credit: {
    warningThreshold: 1000, // Warn when credit usage reaches this level
    criticalThreshold: 100, // Critical alert when credit usage reaches this level
  },
};

这些配置控制:

  1. 重试行为

- 由于速率限制,自动重试失败的请求 - 使用指数退避来避免压倒API - 示例:在默认设置下,将尝试在以下位置重试: - 第一次重试:1秒延迟 - 第二次重试:延迟2秒 - 第三次重试:延迟4秒(上限为maxDelay)

  1. 信贷使用监控

- 跟踪云API使用的API信用消费 - 在指定阈值时提供警告 - 有助于防止意外的服务中断 - 示例:使用默认设置: - 剩余1000学分时发出警告 - 剩余100学分时出现严重警报

速率限制和批处理

服务器利用Firecrawl的内置速率限制和批处理功能:

  • 具有指数回退的自动速率限制处理
  • 批量操作的高效并行处理
  • 智能请求排队和限制
  • 暂时性错误的自动重试

如何选择工具

使用本指南为您的任务选择合适的工具:

  • 如果你知道你想要的确切网址:

- 第一:使用 刮擦 - 对于许多人:使用 batch_scrape

  • 如果您需要在网站上查找URL: 使用 地图
  • 如果你想在网上搜索信息: 使用 搜索
  • 如果要提取结构化数据: 使用 提取
  • 如果你想分析整个网站或部分: 使用 爬行 (有限制!)

快速参考表

工具最适合退货
抓取单页内容markdown/html
batch_scrape多个已知URLmarkdown/html\[\]
map发现网站上的URLURL\[\]
抓取多页提取(有限制)markdown/html\[\]
search网络搜索信息结果\[\]
提取来自页面的结构化数据JSON

可用工具

1.报废工具(firecrawl_scrape)

使用高级选项从单个URL中抓取内容。

最适合:

  • 单页内容提取,当您确切地知道哪个页面包含信息时。

不建议用于:

  • 从多个页面中提取内容(对于已知的URL使用batch_scrape,或者使用map+batch_scrape首先发现URL,或者抓取整个页面内容)
  • 当您不确定哪个页面包含信息时(使用搜索)
  • 当您需要结构化数据时(使用提取)

常见错误:

  • 使用scratch获取URL列表(改用batch_scrape)。

提示示例:

“在以下位置获取页面内容https://example.com."

使用示例:

{
  "name": "firecrawl_scrape",
  "arguments": {
    "url": "https://example.com",
    "formats": ["markdown"],
    "onlyMainContent": true,
    "waitFor": 1000,
    "timeout": 30000,
    "mobile": false,
    "includeTags": ["article", "main"],
    "excludeTags": ["nav", "footer"],
    "skipTlsVerification": false
  }
}

退货:

  • Markdown、HTML或指定的其他格式。

2.批量报废工具(firecrawl_batch_scrape)

通过内置的速率限制和并行处理,高效地抓取多个URL。

最适合:

  • 当您确切地知道要抓取哪些页面时,从多个页面中检索内容。

不建议用于:

  • 发现网址(如果你不知道网址,请先使用地图)
  • 刮擦一页(使用刮擦)

常见错误:

  • 同时使用具有太多URL的batch_scrape(可能会达到速率限制或令牌溢出)

提示示例:

获取这三篇博客文章的内容:\[url1,url2,url3\]

使用示例:

{
  "name": "firecrawl_batch_scrape",
  "arguments": {
    "urls": ["https://example1.com", "https://example2.com"],
    "options": {
      "formats": ["markdown"],
      "onlyMainContent": true
    }
  }
}

退货:

  • 响应包括用于状态检查的操作ID:
{
  "content": [
    {
      "type": "text",
      "text": "Batch operation queued with ID: batch_1. Use firecrawl_check_batch_status to check progress."
    }
  ],
  "isError": false
}

3.检查批次状态(firecrawl_check_batch_status)

检查批处理操作的状态。

{
  "name": "firecrawl_check_batch_status",
  "arguments": {
    "id": "batch_1"
  }
}

4.地图工具(firecrawl_map)

绘制网站地图以发现网站上的所有索引URL。

最适合:

  • 在决定抓取什么之前,先在网站上发现网址
  • 查找网站的特定部分

不建议用于:

  • 当你已经知道你需要哪个特定的URL时(使用scratch或batch_scrape)
  • 当您需要页面内容时(使用映射后的抓取)

常见错误:

  • 使用爬网而不是映射来发现URL

提示示例:

“列出example.com上的所有URL。”

使用示例:

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

退货:

  • 在网站上找到的URL数组

5.搜索工具(firecrawl_search)

搜索网络,并可选择从搜索结果中提取内容。

最适合:

  • 在不知道哪个网站有信息的情况下,在多个网站上查找特定信息。
  • 当您需要查询最相关的内容时

不建议用于:

  • 当你已经知道要抓取哪个网站时(使用抓取)
  • 当您需要对单个网站进行全面覆盖时(使用地图或抓取)

常见错误:

  • 对开放式问题使用爬行或地图(改用搜索)

使用示例:

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

退货:

  • 搜索结果数组(包含可选的抓取内容)

提示示例:

“查找2023年发表的关于人工智能的最新研究论文。”

6.爬行工具(firecrawl_crawl)

在网站上启动异步爬网作业,并从所有页面中提取内容。

最适合:

  • 当您需要全面覆盖时,从多个相关页面中提取内容。

不建议用于:

  • 从单个页面提取内容(使用抓取)
  • 当关注令牌限制时(使用map+batch_scrape)
  • 当你需要快速的结果时(爬行可能很慢)

警告: 爬网响应可能非常大,并可能超过令牌限制。限制抓取深度和页数,或使用map+batch_scrape进行更好的控制。

常见错误:

  • 设置限制或maxDepth太高(导致令牌溢出)
  • 对单个页面使用爬网(改用抓取)

提示示例:

“从example.com/blog的前两个级别获取所有博客文章。”

使用示例:

{
  "name": "firecrawl_crawl",
  "arguments": {
    "url": "https://example.com/blog/*",
    "maxDepth": 2,
    "limit": 100,
    "allowExternalLinks": false,
    "deduplicateSimilarURLs": true
  }
}

退货:

  • 响应包括用于状态检查的操作ID:
{
  "content": [
    {
      "type": "text",
      "text": "Started crawl for: https://example.com/* with job ID: 550e8400-e29b-41d4-a716-446655440000. Use firecrawl_check_crawl_status to check progress."
    }
  ],
  "isError": false
}

7.检查爬行状态(firecrawl_check_crawl_status)

检查爬网作业的状态。

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

退货:

  • 响应包括爬网作业的状态:

8.提取工具(firecrawl_extract)

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

最适合:

  • 提取特定的结构化数据,如价格、名称、细节。

不建议用于:

  • 当你需要一个页面的全部内容时(使用scratch)
  • 当您不在寻找特定的结构化数据时

论据:

  • urls:从中提取信息的URL数组
  • prompt:LLM提取的自定义提示
  • systemPrompt:引导LLM的系统提示
  • schema:用于结构化数据提取的JSON模式
  • allowExternalLinks:允许从外部链接中提取
  • enableWebSearch:启用网络搜索以获取其他上下文
  • includeSubdomains:在提取中包含子域

使用自托管实例时,提取将使用您配置的LLM。对于云API,它使用Firecrawl的托管LLM服务。 提示示例:

从这些产品页面中提取产品名称、价格和描述

使用示例:

{
  "name": "firecrawl_extract",
  "arguments": {
    "urls": ["https://example.com/page1", "https://example.com/page2"],
    "prompt": "Extract product information including name, price, and description",
    "systemPrompt": "You are a helpful assistant that extracts product information",
    "schema": {
      "type": "object",
      "properties": {
        "name": { "type": "string" },
        "price": { "type": "number" },
        "description": { "type": "string" }
      },
      "required": ["name", "price"]
    },
    "allowExternalLinks": false,
    "enableWebSearch": false,
    "includeSubdomains": false
  }
}

退货:

  • 根据模式定义提取结构化数据
{
  "content": [
    {
      "type": "text",
      "text": {
        "name": "Example Product",
        "price": 99.99,
        "description": "This is an example product description"
      }
    }
  ],
  "isError": false
}

记录系统

服务器包括全面的日志记录:

  • 运行状态和进度
  • 性能指标
  • 信贷使用监控
  • 速率限制跟踪
  • 错误条件

日志消息示例:

[INFO] Firecrawl MCP Server initialized successfully
[INFO] Starting scrape for URL: https://example.com
[INFO] Batch operation queued with ID: batch_1
[WARNING] Credit usage has reached warning threshold
[ERROR] Rate limit exceeded, retrying in 2s...

错误处理

服务器提供强大的错误处理:

  • 暂时性错误的自动重试
  • 带回退的速率限制处理
  • 详细的错误消息
  • 信用额度使用警告
  • 网络弹性

错误响应示例:

{
  "content": [
    {
      "type": "text",
      "text": "Error: Rate limit exceeded. Retrying in 2 seconds..."
    }
  ],
  "isError": true
}

发展

# Install dependencies
npm install

# Build
npm run build

# Run tests
npm test

贡献

  1. 分叉存储库
  2. 创建功能分支
  3. 运行测试: npm test
  4. 提交拉取请求

感谢贡献者

许可证

MIT许可证-有关详细信息,请参阅许可证文件

目录标签

目录标签

浏览器自动化内容提取JavaScriptVS Code网页抓取本地部署搜索引擎批处理自动重试

支持客户端

Claude DesktopClaudeCursorWindsurfVS CodeVS Code Insiders

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

api-key

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

@smithery/cli

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdioapi-key部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP