mcpField
R
RAG Documentation MCP Server

RAG Documentation MCP Server

本地服务
github.com/hannesrudolph记忆与知识26467 周前更新

关于 RAG Documentation MCP Server

RAG Documentation MCP Server 是一个 MCP 服务,通过向量检索处理文档,使 AI 助手能够用相关文档上下文增强回答。它面向需要文档语义搜索的开发者与助手构建者。

主要功能

  1. 01基于向量的文档搜索与检索
  2. 02支持多个文档来源
  3. 03语义搜索
  4. 04自动化文档处理
  5. 05为 LLM 实时补充上下文

适用场景

  1. 01为 AI 助手提供文档上下文
  2. 02构建具备文档感知能力的开发工具
  3. 03为已有知识库补充语义检索

MCP 相关

该项目是一个 MCP 服务,向 MCP 客户端暴露 search_documentation、list_sources、extract_urls、remove_documentation、list_queue、run_queue 和 clear_queue 等工具。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"ragdocs": {
"command": "npx",
"args": [
"-y",
"@hannesrudolph/mcp-ragdocs"
],
"env": {
"OPENAI_API_KEY": "<OPENAI_API_KEY>",
"QDRANT_URL": "<QDRANT_URL>",
"QDRANT_API_KEY": "<QDRANT_API_KEY>"
}
}
}
}
启动命令npx -y @hannesrudolph/mcp-ragdocs
需要配置的环境变量
OPENAI_API_KEY密钥
QDRANT_URL
QDRANT_API_KEY密钥

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

安装包
npm@hannesrudolph/mcp-ragdocs

工具

7

收录的工具列表 · 更新于 3 周前

参数类型必填说明
limitnumber否返回结果的最大数量(1-20)。较高的上限可提供更全面的结果,但可能需要更长的处理时间。默认值为 5。
querystring是要在文档中搜索的文本。可以是自然语言查询、特定术语或代码片段。

详细介绍

RAG 文档 MCP 服务

一个 MCP 服务实现,可通过向量搜索检索和处理文档,让 AI 助手利用相关文档上下文增强回复。

mcp-ragdocs MCP 服务

功能

  • 基于向量的文档搜索与检索
  • 支持多个文档来源
  • 语义搜索能力
  • 自动处理文档
  • 为大模型实时补充上下文

工具

search_documentation

使用自然语言查询搜索已存储的文档。返回匹配的摘录及上下文,并按相关性排序。

输入:

  • query(字符串):要在文档中搜索的文本。可以是自然语言查询、特定术语或代码片段。
  • limit(数字,可选):返回结果的最大数量(1-20,默认值:5)。较高的数量会提供更全面的结果,但处理时间可能更长。
list_sources

列出系统中当前存储的所有文档来源。返回所有已建立索引的文档,包括来源 URL、标题和上次更新时间。可用于了解可供搜索的文档,或确认特定来源是否已建立索引。

extract_urls

从指定网页中提取并分析所有 URL。此工具会抓取指定网页、识别所有超链接,并可选择将其添加到处理队列。

输入:

  • url(字符串):要分析网页的完整 URL(必须包含协议,例如 https://)。该页面必须可公开访问。
  • add_to_queue(布尔值,可选):如果为 true,则自动将提取的 URL 添加到处理队列,以便之后建立索引。大型网站请谨慎使用,以免队列中添加过多 URL。
remove_documentation

根据 URL 从系统中移除特定文档来源。移除操作不可恢复,并会影响之后的搜索结果。

输入:

  • urls(字符串数组):要从数据库中移除的 URL 数组。每个 URL 必须与添加文档时使用的 URL 完全一致。
list_queue

列出当前在文档处理队列中等待的所有 URL。显示待处理的文档来源,这些来源将在调用 run_queue 时进行处理。可用于监控队列状态、确认 URL 是否已正确添加,或查看处理积压情况。

run_queue

处理并为文档队列中的所有 URL 建立索引。系统会按顺序逐个处理 URL,并进行错误处理和重试。处理过程中会提供进度更新。长时间运行的操作会持续处理,直到队列为空或发生无法恢复的错误。

clear_queue

从文档处理队列中移除所有待处理的 URL。可用于重置队列、移除不需要的 URL 或取消待处理任务。此操作会立即生效且不可恢复;如果之后仍要处理这些 URL,则需要重新添加。

用途

RAG Documentation 工具适用于:

  • 使用相关文档增强 AI 回复
  • 构建具备文档感知能力的 AI 助手
  • 为开发者创建上下文感知工具
  • 实现语义文档搜索
  • 增强现有知识库

配置

在 Claude Desktop 中使用

将以下内容添加到你的 claude_desktop_config.json:

{
  "mcpServers": {
    "rag-docs": {
      "command": "npx",
      "args": [
        "-y",
        "@hannesrudolph/mcp-ragdocs"
      ],
      "env": {
        "OPENAI_API_KEY": "",
        "QDRANT_URL": "",
        "QDRANT_API_KEY": ""
      }
    }
  }
}

你需要为以下环境变量提供值:

  • OPENAI_API_KEY:用于生成嵌入向量的 OpenAI API 密钥
  • QDRANT_URL:Qdrant 向量数据库实例的 URL
  • QDRANT_API_KEY:用于向 Qdrant 进行身份验证的 API 密钥

许可证

此 MCP 服务采用 MIT 许可证授权。这意味着您可以自由使用、修改和分发本软件,但须遵守 MIT 许可证的条款和条件。详情请参阅项目仓库中的 LICENSE 文件。

致谢

本项目是 qpd-v/mcp-ragdocs 的分支,原项目由 qpd-v 开发。原项目为本实现奠定了基础。

评论

支持 Markdown

第一次接触 MCP?

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

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