使用说明

项目简介

CrawlnChat 是一个用于抓取网站内容并构建AI聊天系统的工具。它能够从网站的 XML 站点地图中异步抓取内容,将内容转换为向量嵌入存储,并通过多种前端(包括 MCP)提供 AI 驱动的聊天界面。

主要功能点

  • 网站内容抓取: 从 XML 站点地图异步抓取网站内容,并将 HTML 转换为 Markdown 格式。
  • 向量存储: 使用 Pinecone 存储文本块和向量嵌入,以实现高性能的相似性搜索。
  • 智能路由: 使用 LangGraph 实现智能问题路由,将每个网站视为一个专业的知识工具。
  • MCP 接口: 提供 Model Context Protocol (MCP) 接口,兼容 Anthropic Claude 等 MCP 客户端。
  • 品牌合规性: 自动审查 AI 生成的回复,确保符合品牌指南。
  • 灵活配置: 支持 JSON 和 YAML 格式的配置文件。
  • 来源追溯: 在回复中自动包含来源 URL,方便追溯和验证信息。

安装步骤

  1. 克隆仓库
    git clone https://github.com/jroakes/CrawlnChat.git
    cd CrawlnChat
  2. 创建虚拟环境
    python -m venv .venv
    source .venv/bin/activate   # Linux/macOS
    .venv\Scripts\activate  # Windows
  3. 安装依赖
    pip install -r requirements.txt
  4. 配置环境变量 复制 '.env.example' 文件为 '.env',并根据需要编辑 '.env' 文件,填入 API 密钥和配置信息,例如 OpenAI API Key, Pinecone API Key 等。

服务器配置 (MCP 客户端配置)

对于 MCP 客户端 (例如 Claude Desktop),你需要配置连接 CrawlnChat MCP 服务器的命令和参数。以下是一个配置示例,你需要将其添加到 MCP 客户端的配置文件中(通常为 JSON 格式)。

{
    "servers": {
        "crawlnchat": {
            "command": "python",
            "args": [
                "-m",
                "src.main",
                "--config",
                "websites.json",
                "--frontend",
                "mcp"
            ],
            "cwd": "/path/to/CrawlnChat"
        }
    }
}

参数说明:

  • '"servers"': 定义 MCP 服务器配置的顶级键。
  • '"crawlnchat"': 服务器的名称,可以自定义,用于在客户端中标识该服务器。
  • '"command"': 启动 MCP 服务器的命令。这里使用 'python',假设你的 Python 环境已配置好。
  • '"args"': 传递给 'command' 的参数列表。
    • '"-m src.main"': 运行 CrawlnChat 的主模块。
    • '"--config websites.json"': 指定网站配置文件的路径,这里假设 'websites.json' 文件位于 CrawlnChat 项目根目录下。
    • '"--frontend mcp"': 指定启动 MCP 前端服务器。
  • '"cwd"': (可选) 指定命令的工作目录。这里设置为 CrawlnChat 项目的根目录的绝对路径 '/path/to/CrawlnChat'。你需要将其替换为你实际的 CrawlnChat 项目路径。

注意:

  • 请将 '"/path/to/CrawlnChat"' 替换为你 CrawlnChat 项目在你的系统上的实际绝对路径。
  • 确保 'websites.json' 配置文件存在于 CrawlnChat 项目根目录下,或者根据你的实际情况修改 '"args"' 中的配置文件路径。
  • MCP 客户端 (如 Claude Desktop) 通常会在启动时读取这些配置,并尝试连接到 CrawlnChat MCP 服务器。

基本使用方法

  1. 配置网站信息: 创建或编辑 'websites.json' (或 YAML) 配置文件,定义需要抓取的网站和相关配置(站点地图 URL, 描述等)。
  2. 启动 MCP 服务器: 在 CrawlnChat 项目根目录下,运行以下命令启动 MCP 服务器:
    python -m src.main --config websites.json --frontend mcp
  3. 配置 MCP 客户端: 根据 MCP 客户端 (例如 Claude Desktop) 的指引,将上面提供的服务器配置信息添加到客户端的配置文件中。
  4. 在 MCP 客户端中使用: 启动 MCP 客户端,客户端应该能够检测到 CrawlnChat MCP 服务器。你可以在客户端中提问,Claude (或其他 MCP 客户端) 将会利用 CrawlnChat 抓取的网站内容作为上下文来回答你的问题。

信息

分类

网页与API