Py Mcp Sse

Py Mcp Sse

🚀 MCP客户端与服务器Python样例项目

本项目是一个MCP客户端与MCP服务器的样例实现(Python版本),于2025年3月30日创建。它优化自https://github.com/sidharthrajaram/mcp-sse,原项目基于https://github.com/modelcontextprotocol/python-sdk/issues/145的原始讨论,你可下载原项目获取更多说明。原版本使用ANTHROPIC LLM实现,本版本调整为使用OpenRouter.ai的LLM中转调用平台实现。

🚀 快速开始

本项目提供了基于SSE的 MCP 服务器和客户端。

  • mcp_server.py 是基于SSE的MCP服务器,提供了基于古腾堡计划API的图书搜索工具,改编自MCP文档中的示例STDIO服务器实现
  • client.py 是MCP客户端,可连接并使用基于SSE的MCP服务器提供的工具,改编自MCP文档中的示例STDIO客户端实现

📦 安装指南

系统要求

  • Python 3.13 或更高版本
  • uv包管理器(推荐)或pip

安装步骤

  1. 克隆项目
git clone [your-repository-url]
cd jay-py-mcp-sse
  1. 环境配置 使用uv(推荐):
# 安装uv(如果未安装)
curl -LsSf https://astral.sh/uv/install.sh | sh

# 创建虚拟环境并安装依赖
uv venv
uv pip install .

或使用传统pip:

# 创建虚拟环境
python -m venv .venv
source .venv/bin/activate  # Linux/MacOS
# 或
.venv\Scripts\activate  # Windows

# 安装依赖
pip install .
  1. 配置环境变量 复制环境变量示例文件并填写必要信息:
cp .env.sample .env

编辑 .env 文件,填入你的OpenRouter API密钥:

OPENROUTER_API_KEY=your_api_key_here

💻 使用示例

运行服务

  1. 启动服务器
uv run mcp_server.py

或指定接口和端口:

uv run mcp_server.py --interface "0.0.0.0" --port 8000
  1. 启动客户端
uv run client.py

示例输出

以下是运行时的示例输出:

[2025-03-30T16:00:00+00:00] INFO - Server is running on http://localhost:8000
[2025-03-30T16:00:01+00:00] INFO - Client connected to server at http://localhost:8000
[2025-03-30T16:00:02+00:00] INFO - Available tools: search_books, recommend_books

📚 详细文档

项目结构

jay-py-mcp-sse/
├── mcp_server.py          # 基于SSE的MCP服务器实现
├── client.py              # MCP客户端实现
├── README.md               # 项目说明文档
└── .env.sample            # 环境变量示例文件

故障排除

  1. 检查Python版本
    • 确保你使用的是Python 3.13或更高版本。
  2. 检查环境变量配置
    • 确保 .env 文件中的 OPENROUTER_API_KEY 正确填写。
  3. 启动问题
    • 如果服务器或客户端无法启动,请检查控制台输出中的错误信息。
    • 确保所有依赖项已正确安装。
  4. 连接问题
    • 如果客户端无法连接到服务器,请检查网络配置和端口是否正确。

获取帮助

如果遇到问题,请参考项目文档或在GitHub仓库中提交问题:https://github.com/yourusername/jay-py-mcp-sse

  • 0 关注
  • 0 收藏,20 浏览
  • system 提出于 2025-09-22 18:51

相似服务问题

相关AI产品