返回 MCP 目录
public公开dns本地运行

Document Crawler & Search

该项目提供了一套工具集,用于爬取网站内容并生成Markdown文档,同时通过MCP服务器实现文档的语义搜索功能,支持与Cursor等工具集成。

article

README

🚀 知识库系统

这是一个使用爬取4AI(crawl4ai)和快速MCP(fastmcp)协议构建的知识库系统,允许用户通过自然语言查询从文档中获取信息,为知识检索提供了便捷的途径。

🚀 快速开始

本知识库系统能让你通过自然语言查询文档信息。下面将为你介绍如何安装和使用该系统。

📦 安装指南

项目概述

此系统基于爬取4AI(crawl4ai)和快速MCP(fastmcp)协议构建,可借助自然语言查询从文档里获取信息。

安装步骤

  1. 克隆仓库
    git clone git@github.com:yourusername/MCPDocSearch.git
    cd MCPDocSearch
    
  2. 创建虚拟环境并安装依赖
    uv env create --python 3.8+
    pip install -r requirements.txt
    

📚 详细文档

文档结构

项目包含以下关键部分:

  • crawler_cli:负责网页爬取和文档生成。
  • mcp_server:实现MCP协议,提供知识库查询接口。

核心流程

  1. 爬虫运行
    • 使用crawl4ai从指定URL开始爬取。
    • 依据规则(如深度、链接模式)抓取页面内容。
  2. 内容清洗
    • 可选步骤:使用BeautifulSoup清理HTML,移除导航栏等非必要元素。
  3. 文档生成
    • 将清理后的HTML转换为Markdown格式。
    • 保存至./storage/目录。
  4. MCP服务器启动
    uv run python -m mcp_server.main
    

配置示例

与Cursor/Claude桌面版集成

在项目根目录下创建.cursor/mcp.json文件,内容如下:

{
  "mcpServers": {
    "doc-query-server": {
      "command": "uv",
      "args": [
        "--directory",
        "/your/MCPDocSearch/absolute/path",
        "run",
        "python",
        "-m",
        "mcp_server.main"
      ],
      "env": {}
    }
  }
}

依赖项

关键库包括:

  • crawl4ai:核心网络爬取功能
  • fastmcp:MCP服务器实现
  • sentence-transformers:文本嵌入生成
  • torch:sentence-transformers的依赖
  • typer:构建命令行工具
  • uv:项目和环境管理
  • beautifulsoup4(通过crawl4ai使用)
  • rich:增强终端输出

体系结构

系统遵循以下流程:

  1. 爬虫CLI:用户运行工具,指定起始URL及相关选项。
  2. 网络爬取:使用crawl4ai获取网页内容,并根据规则抓取链接。
  3. 内容清洗:可选步骤,使用BeautifulSoup清理HTML。
  4. 文档生成:将处理后的内容转换为Markdown格式并保存。
  5. MCP服务器启动:运行mcp_server.main模块,提供知识库查询服务。

安全提示

  • Pickle缓存:项目使用pickle模块缓存处理数据。为确保安全,请保证./storage/目录仅被受信任的用户或进程访问。

安全注意事项

⚠️ 重要提示

  • 确保缓存目录./storage/仅被授权用户访问。
  • 定期清理旧文档以减少潜在的安全风险。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端