返回 MCP 目录
public公开dns本地运行

mcp-agentic-rag

该项目实现了一个MCP服务器和客户端,用于构建基于检索增强生成(RAG)的智能代理应用。服务器提供实体提取、查询优化和相关性检查等工具,客户端展示如何连接服务器并使用这些工具来增强RAG系统的性能。

article

README

🚀 MCP-agen-tic-RAG

本项目实现了一个MCP(模型上下文协议)服务器和客户端,用于构建增强型RAG(检索增强生成)应用程序。服务器提供了一系列工具,可提升RAG系统的性能,如实体提取、查询优化和相关性检查等。客户端则展示了如何连接到服务器并使用这些工具。

🚀 快速开始

本项目的使用步骤如下:

  1. 启动MCP服务器:
python server.py
  1. 运行MCP客户端:
python mcp-client.py

✨ 主要特性

  • 服务器基于mcp库中的FastMCP类实现,提供了多种实用工具。
  • 客户端展示了如何连接到MCP服务器并使用其工具,涵盖连接、列出工具、调用工具及使用工具处理查询等示例。

📦 安装指南

  1. 克隆仓库:
git clone https://github.com/rukshanet/mcp-agentic-rag.git
  1. 安装依赖项:
pip install -r requirements.txt
  1. 配置环境变量:
    • 基于.env.sample文件创建一个.env文件。
    • 设置OPENAI_MODEL_NAME环境变量为你要使用的OpenAI模型名称。

💻 使用示例

基础用法

客户端展示了如何连接到MCP服务器并使用其工具,以下是部分示例代码:

# 客户端代码示例,展示如何连接到服务器
# 假设代码在 mcp-client.py 中
from mcp import ClientSession

# 建立与服务器的连接
session = ClientSession()
# 后续可进行列出工具、调用工具等操作

高级用法

# 客户端使用OpenAI和可用MCP工具处理查询的示例
# 假设代码在 mcp-client.py 中
from mcp import ClientSession
import openai

# 建立与服务器的连接
session = ClientSession()

# 列出可用工具
available_tools = session.list_tools()

# 调用特定工具及其参数
result = session.call_tool('extract_entities_tool', {'query': 'your_query_here'})

# 使用OpenAI和可用MCP工具处理查询
# 这里只是示例,具体实现可能需要根据实际情况调整
response = openai.Completion.create(
    engine="your_openai_model",
    prompt=f"Process this query with MCP tools: {result}"
)

🔧 技术细节

服务器(server.py)

服务器基于mcp库中的FastMCP类实现,提供了以下工具:

  • get_time_with_prefix:返回当前日期和时间。
  • extract_entities_tool:使用OpenAI从给定的文本查询中提取实体,可用于识别用户查询中的关键实体,提高文档检索的相关性。
  • refine_query_tool:使用OpenAI优化给定的文本查询,可提升用户的查询质量,提高文档检索的相关性。
  • check_relevance:使用LLM检查文本片段与给定问题的相关性,可用于过滤检索结果中的不相关内容。

客户端(mcp-client.py)

客户端通过ClientSession类从mcp库建立与服务器的连接,提供了以下示例:

  • 如何连接到服务器
  • 列出可用工具
  • 调用特定工具及其参数
  • 使用OpenAI和可用MCP工具处理查询

📄 许可证

MIT

help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端