项目简介

KnowledgeBaseMCP是一个专门用于管理个人知识库的MCP服务器,能够索引、搜索和操作Markdown格式的笔记文件,支持YAML元数据、标签管理和自动Git同步。

主要功能

  • 笔记管理:创建、更新、追加Markdown笔记内容
  • 全文搜索:基于SQLite FTS5的快速全文搜索,支持关键词高亮显示
  • 标签与元数据:支持YAML frontmatter格式的标签和元数据
  • 知识库统计:查看笔记总数、内容字符数等统计信息
  • 自动索引:启动时自动索引所有笔记,并在修改后重新索引
  • Git同步:可选的自动Git提交和推送功能,实现多设备同步
  • 多种传输模式:支持STDIO(本地)和SSE(HTTP服务器)两种通信方式

安装步骤

Docker部署(推荐)

  1. 克隆仓库:'git clone https://github.com/macanolli/KnowledgeBaseMCP.git'
  2. 配置环境变量:复制'.env.example'为'.env'并编辑
  3. 配置Git信息:复制'.gitconfig-docker.example'为'.gitconfig-docker'
  4. 启动服务:'docker-compose up -d'

Python环境部署

  1. 克隆仓库并创建虚拟环境
  2. 安装依赖:'pip install -r requirements.txt'
  3. 配置环境变量并运行:'python server.py'

服务器配置

MCP客户端需要配置以下信息与服务器建立连接:

{
  "mcpServers": {
    "knowledge-base": {
      "command": "docker",
      "args": ["compose", "up", "-d"]
    // 或者使用Python直接运行:
    // "command": "python",
    // "args": ["server.py"]
}

配置说明

  • command: 启动命令,Docker方式为"docker",Python方式为"python"
    • Docker方式:'args'为["compose", "up", "-d"]
    • Python方式:'args'为["server.py"]
  • 工作目录:设置为KnowledgeBaseMCP项目根目录
  • 环境变量:需要在.env文件中配置KB_DIR(笔记目录)和KB_DB(数据库路径)

基本使用方法

服务器启动后,MCP客户端可以调用以下工具:

  • 'search_notes "关键词"' - 搜索笔记内容
  • 'create_note "标题" "内容"' - 创建新笔记
  • 'read_note "文件路径"' - 读取完整笔记内容
  • 'list_recent_notes' - 查看最近修改的笔记
  • 'get_kb_stats' - 获取知识库统计信息
  • 'update_note "文件路径" "新内容"' - 更新现有笔记
  • 'append_to_note "文件路径" "追加内容"' - 向笔记末尾添加内容

使用示例

  • "搜索我的笔记中关于Python异步编程的内容"
  • "创建一个关于Docker网络配置的笔记"
  • "显示我最近的笔记列表"

信息

分类

数据库与文件