项目简介

'crawl4ai-mcp-server' 是一个轻量级的服务器,它利用 Model Context Protocol (MCP) 标准,为大型语言模型(LLM)客户端提供便捷的网页抓取和爬行功能。它允许LLM通过标准化的JSON-RPC调用,访问强大的网页数据获取工具,例如抓取单个页面内容、进行多页面爬行或处理站点地图等。该服务器旨在为AI应用提供安全、可扩展的网络数据上下文服务,并支持与OpenAI Agents SDK、Claude Code等AI框架无缝集成。

主要功能点

  • 网页抓取 (Scrape): 获取单个网页的完整内容(通常是Markdown格式)及其包含的链接。
  • 网页爬行 (Crawl): 从指定起始URL开始,进行广度优先的网页探索,可设置爬行深度、页面数量限制,并支持域名限制及包含/排除模式。
  • 站点爬行 (Crawl Site): 专门用于整个网站的爬行,将结果持久化到磁盘,返回抓取报告而非页面内容本身,避免上下文过载。
  • 站点地图爬行 (Crawl Sitemap): 根据站点地图文件(sitemap.xml)发现的URL进行爬行,并将结果持久化到磁盘。
  • 结果持久化: 可选择将抓取和爬行结果(如Markdown、链接、日志)保存到本地目录,生成详细的运行清单文件。
  • LLM集成: 通过MCP协议,轻松与各种AI Agents和LLM应用集成,作为获取实时或结构化网络数据的功能模块。

安装步骤

  1. 下载: 访问项目的 Releases page 下载适用于您操作系统的最新版本。
  2. 解压/安装:
    • 对于 Windows: 双击下载的 '.exe' 文件并按照屏幕指示进行安装。
    • 对于 macOS/Linux: 解压下载的文件,在终端中导航到解压后的文件夹。
  3. 运行服务器:
    • 如果您已经安装Python环境并克隆了仓库,可以直接在项目根目录运行:'python -m crawler_agent.mcp_server'
    • 如果下载的是预编译版本,在终端中运行:'./crawl4ai-mcp-server' (macOS/Linux) 或双击 '.exe' (Windows)。

服务器配置

MCP客户端在连接时需要指定服务器的启动命令。以下是一个示例配置,展示了如何指示MCP客户端启动并连接到'crawl4ai-mcp-server':

{
  "server_name": "crawl4ai-mcp",
  "command": "python",
  "args": ["-m", "crawler_agent.mcp_server"],
  "description": "通过stdio连接到Crawl4AI MCP服务器,提供网页抓取和爬行功能。",
  "transport": "stdio"
}
  • 'server_name': MCP服务器的唯一名称,用于标识。
  • 'command': 启动MCP服务器的可执行程序或解释器。
  • 'args': 传递给'command'的参数,'-m crawler_agent.mcp_server'指示Python运行'crawler_agent'包内的'mcp_server.py'模块。
  • 'description': 对该MCP服务器功能的简要说明。
  • 'transport': 指定MCP客户端与服务器通信使用的传输协议,此处为标准输入输出流(stdio)。

基本使用方法

服务器运行后,您的LLM应用或MCP客户端即可通过 JSON-RPC 协议与服务器通信。 例如,LLM可以调用名为 'scrape' 的工具来抓取一个URL:

  1. 列出可用工具: 客户端可以请求服务器列出所有可用的工具及其描述和输入模式。
  2. 调用工具: LLM根据其任务,选择合适的工具(如 'scrape' 或 'crawl'),并以 JSON-RPC 请求的形式传递必要的参数(例如URL)。
  3. 接收结果: 服务器执行相应的网页操作,并将结果(如Markdown内容、链接列表或持久化元数据)通过 JSON-RPC 响应返回给LLM客户端。

信息

分类

网页与API