本项目实现了一个MCP(模型上下文协议)服务器和客户端,用于构建增强型RAG(检索增强生成)应用程序。服务器提供了一系列工具,可提升RAG系统的性能,如实体提取、查询优化和相关性检查等。客户端则展示了如何连接到服务器并使用这些工具。
本项目的使用步骤如下:
python server.py
python mcp-client.py
mcp
库中的FastMCP
类实现,提供了多种实用工具。git clone https://github.com/rukshanet/mcp-agentic-rag.git
pip install -r requirements.txt
.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}"
)
服务器基于mcp
库中的FastMCP
类实现,提供了以下工具:
客户端通过ClientSession
类从mcp
库建立与服务器的连接,提供了以下示例:
MIT