Firecrawl MCP 实战 | 在 Cursor 中实现网页爬取、结构分析与信息提取

前言

最近热衷于找一些好玩的MCP,集成在cursor中,给大模型外挂许多有趣的功能,在开发的代码的同时,在IDE中可以获得更多的乐趣。例如:

  1. 什么是MCP?本地如何开发MCP Server
  2. MCP实战 | cursor 如何一句话操作 gitHub 代码库
  3. cursor 如何调用 MCP server 实现天气查询
  4. 自定义 MCP Server,在 cursor 中连接本地 MySQL 实现了统计分析
  5. Pages MCP Server + cursor,一句话完成旅游出行规划
  6. MCP实战 | cursor 中如何掌握股市动态
  7. Playwright MCP Server 使用指南:让 Cursor 拥有浏览器自动化能力

今天要分享的 mcp server:Firecrawl,为各种LLM客户端(如Cursor和Claude)提供强大的网页抓取功能。

配置

首先我们要获取 Firecrawl-API-KEY,登录网站找到 API keys,然后复制。

在 Cursor 的 Cursor Settings 中找到 MCP。

点击右侧上方的 Add new global MCP server 按钮,便自动打开 .local 目录下的 mcp.json 文件,替换 Firecrawl-API-KEY, 并 将 mcp server 的json信息粘贴进去.

{
  "mcpServers": {
    "firecrawl-mcp": {
      "command": "npx",
      "args": ["-y", "firecrawl-mcp"],
      "env": {
        "FIRECRAWL_API_KEY": "YOUR-API-KEY"
      }
    }
  }
}

在MCP页面就可以看到配置的 mcp server 信息。

可以看到 Firecrawl 的一些tool,列表如下:

  1. firecrawl_scrape:抓取指定网页的主要内容,支持提取文本、HTML、Markdown 等格式。
  2. firecrawl_map:生成指定网站的结构地图,可用于了解页面间链接关系,常用于网站结构分析。
  3. firecrawl_crawl:执行多层级网页爬取任务,可发现并递归抓取内部链接,实现深度爬取。
  4. firecrawl_check_crawl_status:查询当前爬取任务的状态,包括进度、成功/失败记录等。
  5. firecrawl_search:支持在搜索引擎上发起查询请求,并抓取结果页面内容。
  6. firecrawl_extract:使用大模型能力从页面中抽取结构化数据,如产品信息、联系人、文章摘要等。
  7. firecrawl_deep_research:针对某一主题执行深度搜索与多页面整合分析,适用于研究与情报收集。
  8. firecrawl_generate_llmstxt:将爬取内容自动转换为适合 LLM 使用的 prompt 格式文本(如:摘要、指令式文本等),便于 AI 模型消费。

应用

正常情况下,我们在输入一个url的时候,大模型其实可以不调用 mcp server 就可以帮助我们抓取信息。

1. 提取 url

但是却无法提取网页中包含的url,而 Firecrawl 可以帮助我们提取其中包含的url。

并且将不同的 url 进行分类整理。

2. 深度爬取

初次之外,Firecrawl 还能进行深度爬取,例如我们打开专栏页面。

如果我们想要获取某个专栏中的文章列表,第一步需要从这个页面点击进入专栏,第二步爬取网页内容。 我们可以通过提示词直接调用 Firecrawl 实现这两步。

 爬取@https://cloud.tencent.com/developer/user/8473779/column 下Tencent云服务征文的所有文章列表

输入提示词,调用了两次 firecrawl_scrape 就完成了进入专栏、爬取专栏文章数据的工作。

3. 网站map

如果我们想要了解一个网站的页面间链接关系,可以通过生成网站map的方式,通过提示词调用 firecrawl_map 就可以生成网站的链接关系。

结语

本篇文章主要使用 Firecrawl mcp server 来爬取一些数据,除了上面几个简单的应用场景,其他的tool也可以自行尝试复杂场景。

### 关于 CursorFirecrawlMCP 实现使用 #### 什么是 MCPMCP 是一种协议标准,旨在通过统一的接口实现不同工具和服务之间的互操作性。它允许客户端(如 Cursor)连接到服务器端(如 Arxiv-MCP-Server 或其他 MCP Server),从而获取所需的数据或功能。 #### Cursor 配置 MCP 工具的支持 Cursor 可以作为一个 MCP 客户端来访问各种 MCP Server 提供的功能[^1]。为了使 Cursor 正确工作并利用 MCP 协议的优势,需要完成以下配置: 1. **安装对应的 Server** 使用 `uv tool` 来安装所需的 MCP Server,例如: ```bash uv tool install arxiv-mcp-server ``` 2. **配置 Cursor** 在 Cursor 中设置好 MCP 工具的相关参数,确保其能够正确识别和调用所支持的工具列表[^1]。 #### Firecrawl 的角色 Firecrawl 并未被明确提及为一个具体的 MCP 工具或服务提供商。然而,在 IT 上下文中,“firecrawl”可能指代某种爬虫技术或者数据抓取框架。如果将其视为潜在的 MCP 工具,则可以考虑如下场景: - 如果 Firecrawl 支持 MCP 协议,那么它可以作为另一个可用的服务加入 Awesome MCP Servers 列表中提到的各种资源之中[^2]。 - 用户可以通过类似的配置流程让 Cursor 访问由 Firecrawl 提供的内容或其他形式的数据集。 #### 技术信息汇总 以下是几个重要的参考资料和技术方向: - 对于希望了解更广泛的 MCP Server 资源及其特性的人群来说,Awesome MCP Servers 页面提供了详尽的信息集合。 - Smithery.ai 不仅实现了基础版 MCP 功能还扩展到了 AI 应用领域;而 mcp.so 更加注重易用性和安全性的平衡[^2]。 - Glama MCP 则定位于满足企业需求的大规模应用案例之上,具备高度灵活性以及可定制选项[^2]。 ```python import requests def fetch_mcp_data(server_url, endpoint="/api/v1/data"): """Fetch data from an MCP server.""" response = requests.get(f"{server_url}{endpoint}") if response.status_code == 200: return response.json() else: raise Exception("Failed to retrieve data.") # Example Usage with a hypothetical Firecrawl-based MCP service. try: result = fetch_mcp_data("http://example-firecrawl-service.com") print(result) except Exception as e: print(e) ``` 上述代码片段展示了一种简单的方式去请求来自某个假想基于 Firecrawl 构建出来的 MCP Service 数据的方法。 --- 问题
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值