README
🚀 知识库 MCP 服务器
本 MCP 服务器为您提供工具,用于列出和检索来自不同知识库的内容,帮助您高效管理和获取知识。
🚀 快速开始
此 MCP 服务器的主要功能是让您能够轻松地列出和检索不同知识库中的内容。接下来,我们将详细介绍安装和使用方法。
📦 安装指南
这些说明假设您已经在系统上安装了 Node.js 和 npm。
先决条件
安装步骤
- 克隆仓库:
git clone <repository_url> cd knowledge-base-mcp-server - 安装依赖项:
npm install - 配置环境变量:
- 服务器需要设置
HUGGINGFACE_API_KEY环境变量,这是用于生成知识库内容嵌入的 Hugging Face 推理 API 密钥。您可以在 Hugging Face 网站 (https://huggingface.co/) 免费获取 API 密钥。 - 服务器需要设置
KNOWLEDGE_BASES_ROOT_DIR环境变量,此变量指定知识库子目录所在的目录。如果没有设置,将默认使用$HOME/knowledge_bases,其中$HOME是当前用户的主目录。 - 服务器支持
FAISS_INDEX_PATH环境变量来指定 FAISS 索引的路径。如果未设置,默认为$HOME/knowledge_bases/.faiss。 - 服务器支持
HUGGINGFACE_MODEL_NAME环境变量来指定用于生成嵌入的 Hugging Face 模型。如果未设置,默认使用sentence-transformers/all-MiniLM-L6-v2。 - 您可以在
.env文件或系统环境中配置这些环境变量。
- 服务器需要设置
- 构建服务器:
npm run build - 添加到 MCP 设置: 要将此服务器添加到 MCP 界面,请按照 MCP 文档中的说明进行操作。确保 MCP 已正确配置以识别此服务器,并设置必要的权限。
- 创建知识库目录:
在开始之前,建议您为每个知识库创建适当的目录结构。例如:
knowledge_bases/ ├── doc1.md ├── doc2.pdf └── subdirectory/ └── file.txt
💻 使用示例
知识库服务器功能
此服务器提供以下主要功能:
- 列出知识库:获取所有注册的知识库及其元数据。
- 检索知识内容:根据查询语句检索相关知识文档。支持指定特定知识库进行搜索或跨所有知识库搜索。
检索知识工具
retrieve_knowledge 工具执行语义搜索,使用 FAISS 索引。该索引在服务器启动时自动更新,或者在检测到知识库文件更改时更新。
输出格式
检索操作的输出为 Markdown 格式的字符串,结构如下:
## 语义搜索结果
**结果 1:**
[最相似片段的内容]
**来源:**
```json
{
"source": "[包含片段的文件路径]"
}
结果 2:
[第二个最相似片段的内容]
来源:
{
"source": "[包含片段的文件路径]"
}
免责声明: 提供的结果可能并非全部相关。请检查信息的相关性。
每个结果都包含最相似片段的内容、来源文件路径和相似度评分。
### 基础用法
通过 MCP 界面使用工具:
```json
{
"tool": "retrieve_knowledge",
"args": {
"query": "您的查询语句。",
"knowledge_base": "指定知识库名称(可选)",
"threshold": 2.0
}
}
参数说明
- query:必填。要检索的信息的查询语句。
- knowledge_base:可选。指定特定知识库进行搜索;如果不指定,默认搜索所有知识库。
- threshold:可选。相似度阈值,低于该阈值的结果将被返回。默认为 2.0。
示例输出
{
"result": [
{
"content": "相关片段内容。",
"source": "文件路径",
"score": 1.5
},
{
"content": "另一个相关片段内容。",
"source": "另一个文件路径",
"score": 1.8
}
],
"message": "搜索完成。"
}
⚠️ 注意事项
- 确保所有知识库文件都是可读的,并且服务器具有适当的文件权限。
- 定期更新知识库以保持索引是最新的。
- 调整相似度阈值以优化检索结果的相关性。
通过遵循这些步骤,您可以有效地利用此 MCP 服务器来管理、搜索和检索您的知识内容。
Scan to contact