Skip to main content
Glama
july090

MCP Knowledge Base

by july090

基于ChromaDB的本地知识库系统

项目简介

本项目是一个基于 ChromaDB 的本地知识库系统,支持 txt 和 pdf 文档的自动分块、向量化存储与高效相似度检索。适合个人、企业、内网环境下的知识管理。

新增功能: 已支持 MCP(Model Context Protocol),让AI助手可以直接调用知识库功能!


Related MCP server: KB-MCP Server

功能特点

  • 基于 ChromaDB,支持高效向量检索

  • 支持 txt 和 pdf 文件(PDF 需安装 PyPDF2 或 PyMuPDF)

  • 自动分块、嵌入向量化、余弦相似度检索

  • 本地持久化存储,数据安全可控

  • 命令行一键添加、查询、删除、统计

  • 文档去重、分块管理

  • MCP工具支持 - AI助手可直接调用知识库功能


安装依赖

推荐使用 Python 3.10 及以上(3.12最佳),并安装如下依赖:

pip install chromadb PyPDF2 PyMuPDF

如需更强嵌入效果,可安装 sentence-transformers(首次需联网下载模型):

pip install sentence-transformers

目录结构

向量数据库/
├── knowledge_base_chromadb.py   # 主程序(ChromaDB版)
├── mcp_server.py                # MCP服务器实现
├── mcp_knowledge_base.py        # MCP工具包装器
├── mcp_server_config.json       # MCP服务器配置
├── documents/                   # 存放待导入文档
│   └── example.txt              # 示例文档
├── knowledge_base/              # ChromaDB数据库文件夹
├── README.md                    # 说明文档
├── 使用指南.md                  # 详细使用指南
└── MCP使用说明.md               # MCP工具使用说明

快速开始

命令行使用

  1. 准备文档

    • 将 txt/pdf 文件放入 documents/ 目录

  2. 添加文档到知识库

    python knowledge_base_chromadb.py add documents/example.txt
    # 或
    py -3.12 knowledge_base_chromadb.py add documents/example.txt
  3. 查询知识库

    python knowledge_base_chromadb.py search "人工智能"
  4. 列出所有文档

    python knowledge_base_chromadb.py list
  5. 删除文档

    python knowledge_base_chromadb.py delete 文档名
  6. 查看统计信息

    python knowledge_base_chromadb.py stats

MCP工具使用

AI助手现在可以直接调用知识库功能:

用户: "请帮我搜索关于人工智能的文档"
AI助手: 我来搜索知识库中关于人工智能的文档。
[调用 search_documents 工具]

用户: "请添加这个文档到知识库"
AI助手: 我来帮您添加文档到知识库。
[调用 add_document 工具]

用户: "知识库里有哪些文档?"
AI助手: 让我查看一下知识库中的文档列表。
[调用 list_documents 工具]

命令行用法

  • 添加文档:add <文件路径>

  • 检索知识:search <查询内容> [--top-k N]

  • 列出文档:list

  • 删除文档:delete <文档名>

  • 统计信息:stats

  • 指定数据库:--db <数据库文件夹>


MCP工具

支持的MCP工具

  • add_document - 添加文档到知识库

  • search_documents - 搜索知识库

  • list_documents - 列出所有文档

  • delete_document - 删除文档

  • get_stats - 获取统计信息

  • batch_add_documents - 批量添加文档

MCP配置

在MCP客户端配置中添加:

{
  "mcpServers": {
    "knowledge-base": {
      "command": "python",
      "args": ["mcp_server.py"],
      "env": {
        "PYTHONPATH": "."
      }
    }
  }
}

常见问题

  • PDF无法读取:请确保已安装 PyPDF2 或 PyMuPDF

  • 检索无结果:请确认已成功添加文档

  • 数据库损坏:可删除 knowledge_base 文件夹重新初始化

  • 编码问题:请确保文档为 UTF-8 编码

  • MCP连接失败:检查Python路径和依赖安装


如需详细命令示例和进阶用法,请参见 使用指南.mdMCP使用说明.md

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    C
    maintenance
    Intelligent knowledge base system that enables users to process documents in 25+ formats, perform semantic search and Q\&A through vector retrieval. Supports multiple AI models including OpenAI and DouBao with local processing capabilities.
    10
    6
    -
  • F
    license
    A
    quality
    Not graded
    maintenance
    A local-first knowledge base server that enables AI clients to store, retrieve, and manage documents using semantic search. Provides privacy-focused, offline-capable memory for AI assistants with tools for ingesting, querying, updating, and deleting knowledge.
    7
    12 npm
    -
  • A
    license
    A
    quality
    D
    maintenance
    Provides AI assistants with long-term semantic memory capabilities through local vector-based storage. Enables storing, recalling, and managing information across sessions with complete privacy using ChromaDB, with no data ever leaving your machine.
    3
    9
    MIT
  • A
    license
    B
    quality
    A
    maintenance
    Provides AI assistants with a local knowledge base and research library, enabling semantic and full-text retrieval, memory persistence, and multi-agent collaboration via 58 MCP tools.
    76
    2
    MIT