mcpField
M
MCP KnowledgeBase Server

MCP KnowledgeBase Server

本地服务
github.com/mbcrawfo数据库775 周前更新

关于 MCP KnowledgeBase Server

MCP KnowledgeBase Server 是一个基于 SQLite 的记忆服务,让 LLM 在对话中保存信息并通过全文搜索再次查找。它还提供指导记忆使用的提示词。

主要功能

  1. 01在 SQLite 中保存记忆
  2. 02通过全文搜索查找记忆
  3. 03提供记忆使用提示词
  4. 04可配置数据库位置与文件名

适用场景

  1. 01保存对话中的信息以便后续检索
  2. 02通过全文搜索查找先前记忆

MCP 相关

该 MCP 服务向 LLM 提供保存和搜索记忆的能力,并包含用于指导记忆使用的提示词。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"KnowledgeBaseServer": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"mbcrawfo/knowledge-base-server"
]
}
}
}
启动命令docker run -i --rm mbcrawfo/knowledge-base-server

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocimbcrawfo/knowledge-base-server

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

MCP KnowledgeBase Server

Docker Image Version Build Status

一个 Model Context Protocol(MCP)服务,可让大模型在对话过程中存储记忆,并在之后搜索这些记忆。记忆存储在 SQLite 数据库中,记忆搜索由其全文搜索功能提供支持。

用法

两个环境变量用于控制数据库的位置和文件名。

DATABASE_NAME:使用默认位置,但指定自定义数据库文件名。例如,my_custom_db.sqlite。

DATABASE_PATH:指定数据库文件的完整路径(忽略 DATABASE_NAME)。例如,/Users/your_name/.db/my_db.sqlite。

Docker

使用 Docker 时,必须创建持久化卷来存储数据库(高级用户也可以按需挂载文件系统中的文件夹)。运行 docker volume create knowledgebase 进行设置,然后按下方所示在 claude_desktop_config.json 中配置服务。

如果要在 Docker 中使用自定义数据库文件,必须使用 DATABASE_PATH,并通过 --env 参数将其传递给 Docker 命令。例如(将这些字符串放入配置的 args 数组中,置于镜像名称之前):"--env", "DATABASE_PATH=/db/my_db.sqlite"。

{
  "mcpServers": {
    "knowledgebase": {
      "command": "docker",
      "args": [
        "run",
        "--interactive",
        "--rm",
        "--volume", "knowledgebase:/db",
        "mbcrawfo/knowledge-base-server"
      ]
    }
  }
}

使用 dotnet cli 在本地运行
  1. 你需要安装 .Net 9 SDK。
  2. 克隆此仓库。
  3. 在终端中导航到仓库目录并运行 dotnet build。
  4. 将下方配置添加到 claude_desktop_config.json(如果遇到错误,请尝试指定 dotnet cli 的完整路径)。

在本地运行时,默认数据库位置为“应用程序数据”目录。

{
  "mcpServers": {
    "knowledgebase": {
      "command": "dotnet",
      "args": [
        "run",
        "--project", "/full/path/to/repo/src/KnowledgeBaseServer/KnowledgeBaseServer.csproj",
        "--no-restore",
        "--no-build"
      ]
    }
  }
}

提示词

此服务包含一个“通用记忆用法”提示词,用于告知大模型如何使用记忆。不过,你可能希望使用自定义提示词,以更贴合自己的使用场景。

开发

你可以使用 --init-db 参数创建或升级用于测试的数据库。在 KnowledgeBaseServer 项目目录中,运行 dotnet run -- --init-db /path/to/db.sqlite。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。