关于 mcp-agentic-rag
mcp-agentic-rag 提供用于 Agentic RAG 应用的 MCP 服务和示例客户端。其工具支持实体提取、查询优化和相关性检查,以辅助检索工作流。
主要功能
- 01从查询中提取实体
- 02优化文本查询
- 03检查文本块相关性
- 04附带 MCP 客户端示例
适用场景
- 01在检索文档前识别查询实体
- 02改进用于检索的查询
- 03从结果中过滤无关文本块
MCP 相关
MCP 服务提供时间、实体提取、查询优化和相关性检查工具。附带的客户端示例演示连接、列出工具及调用工具。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
暂未收录安装方式
我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
mcp-agentic-rag
概述
此项目实现了一个 MCP(Model Context Protocol)服务和客户端,用于构建 Agentic RAG(检索增强生成)应用。服务提供了一组可用于提升 RAG 系统性能的工具,例如实体提取、查询优化和相关性检查。客户端演示了如何连接到该服务并使用其工具。
服务(server.py)
该服务使用 mcp 库中的 FastMCP 类实现,并提供以下工具:
- get_time_with_prefix: 返回当前日期和时间。
- extract_entities_tool: 使用 OpenAI 从给定的文本查询中提取实体。此工具可用于识别用户查询中的关键实体,进而帮助改进相关文档的检索效果。
- refine_query_tool: 使用 OpenAI 优化给定的文本查询。此工具可用于提升用户查询的质量,进而帮助改进相关文档的检索效果。
- check_relevance: 使用大模型检查文本块与给定问题的相关性。此工具可用于从检索结果中过滤掉不相关的文档。
客户端(mcp-client.py)
客户端演示了如何连接到 MCP 服务并使用其工具。它使用 mcp 库中的 ClientSession 类与服务建立连接。客户端提供了以下示例:
- 连接到服务
- 列出可用工具
- 使用参数调用特定工具
- 使用 OpenAI 和可用的 MCP 工具处理查询
要求
- Python 3.7+
- openai
- mcp
- dotenv
安装
-
克隆代码仓库:
git clone https://github.com/rukshanet/mcp-agentic-rag.git -
安装依赖项:
pip install -r requirements.txt -
配置环境变量:
- 根据
.env.sample文件创建.env文件。 - 将
OPENAI_MODEL_NAME环境变量设置为要使用的 OpenAI 模型名称。
- 根据
用法
-
启动 MCP 服务:
python server.py -
运行 MCP 客户端:
python mcp-client.py
许可证
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。