
MCP SSE Client-Server

2025.05.01
0
Python开发工具通信服务开发效率
MCP SSE Client-Server 是一个基于 Python 实现的 MCP 客户端和服务器,使用 Server-Sent Events (SSE) 进行通信。它集成了 MCP 平台工具,支持异步处理查询,并提供了全面的日志记录和错误处理功能。此外,它还支持 OpenAI API 和 OpenRouter 作为后备选项,适用于需要高效通信和集成的开发场景。
View on GitHub
Overview
基本能力
产品定位
MCP SSE Client-Server 是一个用于高效通信和集成的开发工具,特别适用于需要异步处理和 SSE 通信的场景。
核心功能
- SSE 基础的客户端和服务器通信
- 与 MCP 平台工具的集成(如 google_search, get_web_content)
- 使用 Python 的 asyncio 进行异步查询处理
- 全面的日志记录和错误处理
- OpenAI API 集成,支持 OpenRouter 作为后备选项
- 环境变量配置支持
适用场景
- 需要高效通信的开发项目
- 需要集成多种工具(如搜索引擎、网页内容获取)的应用
- 需要异步处理查询的场景
- 需要灵活配置 API 密钥和基础 URL 的项目
工具列表
- google_search: 执行网页搜索
- get_web_content: 获取完整的网页内容
- get_weekday_from_date: 日期工具
- get_weather_for_date: 天气信息
常见问题解答
- 如何配置 API 密钥?
在项目根目录创建
.env
文件,并填写OPENAI_API_KEY
或OPENROUTER_API_KEY
。 - 如何启动服务器?
使用命令
uv run mcp-server-search.py
。 - 如何启动客户端?
使用命令
uv run mcp-client-sse.py --server URL_ADDRESS-server-url:8081/sse --verbose
。
使用教程
使用依赖
- Python 3.10+
- 依赖项(在 pyproject.toml 中列出):
- httpx
- python-dotenv
- openai
- mcp[cli]
安装教程
- 克隆仓库
- 创建并激活虚拟环境:
bash uv venv # Windows .venv\Scripts\activate # Unix/macOS source .venv/bin/activate
- 安装依赖:
bash uv sync .
调试方式
- 启动服务器:
bash uv run mcp-server-search.py
- 启动客户端:
bash uv run mcp-client-sse.py --server URL_ADDRESS-server-url:8081/sse --verbose
- 查看日志文件
mcp-client.log
获取详细调试信息。