本 MCP 服务器为您提供工具,用于列出和检索来自不同知识库的内容,帮助您高效管理和获取知识。
此 MCP 服务器的主要功能是让您能够轻松地列出和检索不同知识库中的内容。接下来,我们将详细介绍安装和使用方法。
这些说明假设您已经在系统上安装了 Node.js 和 npm。
git clone
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
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
}
}
{
"result": [
{
"content": "相关片段内容。",
"source": "文件路径",
"score": 1.5
},
{
"content": "另一个相关片段内容。",
"source": "另一个文件路径",
"score": 1.8
}
],
"message": "搜索完成。"
}
通过遵循这些步骤,您可以有效地利用此 MCP 服务器来管理、搜索和检索您的知识内容。