MCP 服务器 ragdocs
MCP 服务器实现提供了通过矢量搜索检索和处理文档的工具,使 AI 助手能够通过相关文档上下文增强他们的响应。
目录
用法
RAG 文档工具旨在用于:
- 利用相关文档增强人工智能响应
- 构建具有文档意识的人工智能助手
- 为开发人员创建上下文感知工具
- 实现语义文档搜索
- 扩充现有知识库
特征
- 基于矢量的文档搜索和检索
- 支持多种文档来源
- 支持本地(Ollama)嵌入生成或 OPENAI
- 语义搜索功能
- 自动化文档处理
- 法学硕士 (LLM) 的实时上下文增强
配置
与 Claude Desktop 一起使用
将其添加到您的claude_desktop_config.json
中:
OpenAI 配置
Ollama配置
Ollama 从此代码库运行
环境变量参考
多变的 | 必需 | 默认 | 评论 |
---|---|---|---|
EMBEDDINGS_PROVIDER | 全部 | ollama | “openai”或“ollama” |
OPENAI_API_KEY | OpenAI | - | 从 OpenAI 仪表板获取 |
OLLAMA_BASE_URL | 奥拉马 | http://localhost:11434 | 本地 Ollama 服务器 URL |
QDRANT_URL | 全部 | http://localhost:6333 | Qdrant 端点 URL |
QDRANT_API_KEY | 云 Qdrant | - | 从 Qdrant Cloud 控制台 |
本地部署
该存储库包括用于本地开发的 Docker Compose 配置:
开始于:
- 端口 6333 上的 Qdrant 矢量数据库
- 端口 11434 上的 Ollama LLM 服务
访问端点:
- Qdrant: http://localhost:6333
- 论坛: http://localhost:11434
云部署
对于生产部署:
- 使用托管的 Qdrant Cloud 服务
- 设置以下环境变量:
工具
搜索文档
使用自然语言查询搜索存储的文档。返回符合上下文的摘录,并按相关性排序。
输入:
query
(字符串):要在文档中搜索的文本。可以是自然语言查询、特定术语或代码片段。limit
(数字,可选):返回结果的最大数量(1-20,默认值:5)。限制值越高,返回结果越全面,但处理时间也越长。
列出来源
列出系统中当前存储的所有文档来源。返回所有已索引文档的完整列表,包括来源 URL、标题和最后更新时间。使用此列表可以了解哪些文档可供搜索,或验证特定来源是否已被索引。
提取网址
提取并分析给定网页的所有 URL。此工具会抓取指定网页,识别所有超链接,并选择性地将其添加到处理队列中。
输入:
url
(字符串):待分析网页的完整 URL(必须包含协议,例如 https://)。该页面必须可公开访问。add_to_queue
(布尔值,可选):如果设置为 true,则自动将提取的 URL 添加到处理队列中,以便稍后进行索引。在大型网站上请谨慎使用,以避免队列过长。
删除文档
根据 URL 从系统中移除特定文档来源。移除操作是永久性的,并将影响未来的搜索结果。
输入:
urls
(string[]):要从数据库中移除的 URL 数组。每个 URL 必须与添加文档时使用的 URL 完全匹配。
列表队列
列出当前在文档处理队列中等待的所有 URL。显示调用 run_queue 时将处理的待处理文档源。使用此方法可以监控队列状态、验证 URL 是否已正确添加,或检查处理积压情况。
运行队列
处理并索引当前文档队列中的所有 URL。每个 URL 均按顺序处理,并采用适当的错误处理和重试逻辑。处理过程中会提供进度更新。长时间运行的操作将一直处理,直到队列为空或发生不可恢复的错误。
清除队列
从文档处理队列中移除所有待处理的 URL。当您想重新开始、移除不需要的 URL 或取消待处理处理时,可以使用此功能重置队列。此操作是即时且永久的 - 如果您希望稍后处理 URL,则需要重新添加。
项目结构
该软件包采用模块化架构,核心组件和 MCP 协议处理程序之间清晰分离。请参阅ARCHITECTURE.md以获取详细的结构文档和设计决策。
不使用 Docker 来使用 Ollama Embeddings
- 安装Ollama:
- 下载 nomic-embed-text 模型:
- 验证安装:
执照
此 MCP 服务器采用 MIT 许可证。这意味着您可以自由使用、修改和分发该软件,但须遵守 MIT 许可证的条款和条件。更多详情,请参阅项目仓库中的 LICENSE 文件。
贡献
欢迎大家贡献代码!请参阅我们的CONTRIBUTING.md 文件,了解详细指南,以下是一些基本要求:
- 分叉存储库
- 安装依赖项:
npm install
- 创建功能分支:
git checkout -b feat/your-feature
- 使用 npm run commit 提交更改以确保符合常规提交
- 推送到你的 fork 并打开 PR
Forkception 致谢
该项目基于hannesrudolph/mcp-ragdocs的一个分支,而 hannesrudolph/mcp-ragdocs 本身又从qpd-v/mcp-ragdocs的原始作品中分叉而来。原始项目为本实现提供了基础。
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
MCP 服务器实现提供了通过矢量搜索检索和处理文档的工具,使 AI 助手能够通过相关文档上下文增强他们的响应。
使用 Ollama 或 OpenAI 生成嵌入。
包含 Docker 文件
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityAn MCP server implementation that provides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation contextLast updated -76281TypeScriptMIT License
- -securityFlicense-qualityEnables AI assistants to enhance their responses with relevant documentation through a semantic vector search, offering tools for managing and processing documentation efficiently.Last updated -6213TypeScript
- -securityFlicense-qualityAn MCP server that integrates with Claude to provide smart documentation search capabilities across multiple AI/ML libraries, allowing users to retrieve and process technical information through natural language queries.Last updated -Python
- -securityAlicense-qualityProvides tools for retrieving and processing documentation through vector search, enabling AI assistants to augment their responses with relevant documentation context.Last updated -62TypeScriptMIT License
Appeared in Searches
- Information or resources related to 'rag'
- A server/tool for RAG-based documentation scraping and retrieval with SSE support
- A server or tool using RAG for documentation scraping, storage, and retrieval with SSE support
- A server to build a knowledge base of Node.js packages with RAG search functionality
- Search for information about 'rag'