Knowledge Base MCP Server

Knowledge Base MCP Server

提供工具,用于使用语义搜索功能,从不同的知识库中列出和检索内容。

Category
访问服务器

Tools

list_knowledge_bases

Lists the available knowledge bases.

retrieve_knowledge

Retrieves similar chunks from the knowledge base based on a query. Optionally, if a knowledge base is specified, only that one is searched; otherwise, all available knowledge bases are considered. By default, at most 10 documents are returned with a score below a threshold of 2. A different threshold can optionally be provided.

README

知识库 MCP 服务器

此 MCP 服务器提供用于列出和检索来自不同知识库的内容的工具。

<a href="https://glama.ai/mcp/servers/n0p6v0o0a4"> <img width="380" height="200" src="https://glama.ai/mcp/servers/n0p6v0o0a4/badge" alt="Knowledge Base Server MCP server" /> </a>

设置说明

以下说明假设您的系统上已安装 Node.js 和 npm。

先决条件

  • Node.js (版本 16 或更高)
  • npm (Node 包管理器)
  1. 克隆存储库:

    git clone <repository_url>
    cd knowledge-base-mcp-server
    
  2. 安装依赖项:

    npm install
    
  3. 配置环境变量:

    • 服务器需要设置 HUGGINGFACE_API_KEY 环境变量。 这是 Hugging Face Inference API 的 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
    • 您可以在 .bashrc.zshrc 文件中设置这些环境变量,也可以直接在 MCP 设置中设置。
  4. 构建服务器:

    npm run build
    
  5. 将服务器添加到 MCP 设置:

    • 编辑位于 /home/jean/.vscode-server/data/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json 文件。
    • 将以下配置添加到 mcpServers 对象:
    "knowledge-base-mcp": {
      "command": "node",
      "args": [
        "/path/to/knowledge-base-mcp-server/build/index.js"
      ],
      "disabled": false,
      "autoApprove": [],
      "env": {
        "KNOWLEDGE_BASES_ROOT_DIR": "/path/to/knowledge_bases",
        "HUGGINGFACE_API_KEY": "YOUR_HUGGINGFACE_API_KEY",
      },
      "description": "从知识库中检索基于查询的相似块。"
    },
    
    • /path/to/knowledge-base-mcp-server 替换为服务器目录的实际路径。
    • /path/to/knowledge_bases 替换为知识库目录的实际路径。
  6. 创建知识库目录:

    • KNOWLEDGE_BASES_ROOT_DIR 中为每个知识库创建子目录(例如,companyit_supportonboarding)。
    • 将包含知识库内容的文本文件(例如,.txt.md)放置在这些子目录中。
  • 服务器递归读取指定知识库子目录中的所有文本文件(例如,.txt.md)。
  • 服务器跳过隐藏文件和目录(以 . 开头的文件和目录)。
  • 对于每个文件,服务器计算 SHA256 哈希并将其存储在隐藏的 .index 子目录中具有相同名称的文件中。 此哈希用于确定自上次索引以来文件是否已修改。
  • 文件内容使用 langchain/text_splitter 中的 MarkdownTextSplitter 分割成块。
  • 然后将每个块的内容添加到 FAISS 索引,该索引用于相似性搜索。
  • FAISS 索引在服务器启动时自动初始化。 它检查知识库文件中的更改并相应地更新索引。

用法

服务器公开两个工具:

  • list_knowledge_bases:列出可用的知识库。
  • retrieve_knowledge:根据查询从知识库中检索相似的块。 (可选)如果指定了知识库,则仅搜索该知识库;否则,将考虑所有可用的知识库。 默认情况下,最多返回 10 个文档块,其分数低于 2 的阈值。可以使用 threshold 参数选择性地提供不同的阈值。

您可以通过 MCP 界面使用这些工具。

retrieve_knowledge 工具使用 FAISS 索引执行语义搜索。 当服务器启动或知识库中的文件被修改时,索引会自动更新。

retrieve_knowledge 工具的输出是一个 markdown 格式的字符串,具有以下结构:

## 语义搜索结果

**结果 1:**

[最相似块的内容]

**来源:**
```json
{
  "source": "[包含该块的文件的路径]"
}
```

---

**结果 2:**

[第二个最相似块的内容]

**来源:**
```json
{
  "source": "[包含该块的文件的路径]"
}
```

> **免责声明:** 提供的结果可能并非都相关。 请交叉检查信息的关联性。

每个结果都包括最相似块的内容、源文件和相似度分数。

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选