Crawl4AI RAG MCP Server

Crawl4AI RAG MCP Server

site icon
2025.05.07 0
Python网页爬取RAGAI 代理AI 编码助手开发效率内容生成
Crawl4AI RAG MCP Server 是一个基于 Model Context Protocol (MCP) 的强大实现,集成了 Crawl4AI 和 Supabase,为 AI 代理和 AI 编码助手提供高级的网页爬取和 RAG(检索增强生成)能力。通过该服务器,用户可以爬取任何网页内容,并将这些知识用于 RAG 应用。
View on GitHub

Overview

基本能力

产品定位

Crawl4AI RAG MCP Server 旨在为 AI 代理和 AI 编码助手提供高效的网页爬取和内容检索能力,支持智能 URL 检测、递归爬取、并行处理、内容分块和向量搜索等功能。

核心功能

  • 智能 URL 检测:自动识别和处理不同类型的 URL(常规网页、站点地图、文本文件)。
  • 递归爬取:跟踪内部链接以发现更多内容。
  • 并行处理:高效同时爬取多个页面。
  • 内容分块:按标题和大小智能分割内容以便更好处理。
  • 向量搜索:对爬取内容执行 RAG,可选按数据源过滤以提高精度。
  • 源检索:获取可用于过滤的源列表以指导 RAG 过程。

适用场景

  • AI 代理需要动态获取网页内容以增强其知识库。
  • AI 编码助手需要从网页中提取信息以辅助代码生成或问题解答。
  • 需要构建基于 RAG 的应用,如问答系统或内容推荐系统。

工具列表

  1. crawl_single_page:快速爬取单个网页并将其内容存储到向量数据库中。
  2. smart_crawl_url:根据提供的 URL 类型(站点地图、llms-full.txt 或需要递归爬取的常规网页)智能爬取整个网站。
  3. get_available_sources:获取数据库中所有可用源(域名)的列表。
  4. perform_rag_query:使用语义搜索(可选源过滤)查找相关内容。

常见问题解答

  • 如何配置 Supabase:需要在 Supabase 仪表板的 SQL 编辑器中运行 crawled_pages.sql 脚本来创建必要的表和函数。
  • 如何配置 OpenAI API 密钥:在 .env 文件中设置 OPENAI_API_KEY 变量。
  • 如何解决 Docker 容器中的连接问题:如果客户端运行在不同的容器中,使用 host.docker.internal 代替 localhost

使用教程

使用依赖

  • Docker/Docker Desktop(推荐):用于容器化运行 MCP 服务器。
  • Python 3.12+:如果直接通过 uv 运行 MCP 服务器。
  • Supabase:用于 RAG 的数据库。
  • OpenAI API 密钥:用于生成嵌入。

安装教程

使用 Docker(推荐)

  1. 克隆仓库: bash git clone https://github.com/coleam00/mcp-crawl4ai-rag.git cd mcp-crawl4ai-rag
  2. 构建 Docker 镜像: bash docker build -t mcp/crawl4ai-rag --build-arg PORT=8051 .
  3. 创建 .env 文件并配置环境变量。

使用 uv 直接运行(无 Docker)

  1. 克隆仓库: bash git clone https://github.com/coleam00/mcp-crawl4ai-rag.git cd mcp-crawl4ai-rag
  2. 安装 uv: bash pip install uv
  3. 创建并激活虚拟环境: bash uv venv .venv\Scripts\activate # 在 Mac/Linux 上:source .venv/bin/activate
  4. 安装依赖: bash uv pip install -e . crawl4ai-setup
  5. 创建 .env 文件并配置环境变量。

调试方式

使用 Docker 运行服务器

docker run --env-file .env -p 8051:8051 mcp/crawl4ai-rag

使用 Python 运行服务器

uv run src/crawl4ai_mcp.py

服务器将在配置的主机和端口上启动并监听。

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。