项目简介

Crawl4Claude 是一个集文档抓取、结构化存储和MCP服务器功能于一体的工具箱。它可以抓取任意文档网站,构建可搜索的本地知识库,并通过Model Context Protocol (MCP) 集成到支持MCP的LLM客户端(如Claude Desktop),为LLM提供丰富的文档上下文和调用能力。

主要功能点

  • 通用文档抓取: 可配置抓取几乎任何在线文档网站的内容。
  • 结构化知识库: 将抓取的内容存储在带有全文搜索功能的SQLite数据库中。
  • MCP服务器: 实现标准的Model Context Protocol,允许LLM客户端发现和调用工具访问文档数据。
  • LLM友好输出: 生成为AI应用优化的文档上下文文件。
  • 提供AI工具: 通过MCP向LLM暴露搜索、查询、浏览文档内容的能力。

安装步骤

  1. 克隆仓库: 将项目仓库克隆到本地。
    git clone https://github.com/dragomirweb/Crawl4Claude.git
    cd Crawl4Claude
  2. 安装依赖: 确保您已安装 Python 3.8 或更高版本,然后安装所需的库。
    pip install -r requirements.txt

服务器配置

要将此MCP服务器与您的MCP客户端(如Claude Desktop)连接,您需要在客户端的配置中添加服务器信息。通常,这涉及编辑客户端的配置文件(例如 'claude_desktop_config.json')。

配置信息是JSON格式,需要指定如何启动该服务器。以下是您需要配置的关键字段及其说明:

  • 'server_name': 服务器的唯一标识符(例如,来自 'config.py' 中的 'server_name' 或自动生成的名称)。
  • 'command': 启动服务器脚本的命令,通常是 'python' 或 'python3'。
  • 'args': 传递给 'command' 的参数列表,通常是服务器脚本的路径(例如,'mcp_docs_server.py' 的绝对路径)。
  • 'cwd': 脚本的工作目录,应设置为项目的根目录路径。
  • 'env': 传递给服务器进程的环境变量,可用于覆盖 'config.py' 中的设置(例如,'DOCS_DB_PATH' 指定数据库位置)。

本项目提供了自动生成 MCP 配置文件的工具 'utils/gen_mcp.py'。运行此脚本会生成一个 'mcp/claude_mcp_config.json' 文件,其中包含了 Claude Desktop 可直接使用的配置示例。请按照该文件中的说明,将其内容复制到您的 Claude Desktop 配置文件中并重启 Claude Desktop。

基本使用方法

  1. 配置抓取目标: 编辑 'config.py' 文件,设置您要抓取的文档网站的 'base_url' 及其他抓取规则。
  2. 运行抓取器: 执行抓取脚本,生成文档数据库。
    python docs_scraper.py
  3. 生成MCP配置: 运行工具脚本生成Claude Desktop的MCP配置示例文件。
    python utils/gen_mcp.py
  4. 集成到Claude: 按照 'mcp/claude_mcp_config.json' 文件中的说明,将生成的配置添加到您的Claude Desktop配置文件中,并重启Claude Desktop。
  5. 在Claude中使用: 连接成功后,您就可以在与Claude的对话中使用文档MCP服务器提供的工具,例如:
    • 询问 Claude "搜索文档关于认证的内容" (会调用 'search_documentation' 工具)
    • 询问 Claude "列出所有文档章节" (会调用 'get_documentation_sections' 工具)
    • 询问 Claude "显示某个页面的完整内容" (会调用 'get_page_content' 工具)

信息

分类

AI与计算