本项目建于2025-03-30,是一个MCP Client 与 MCP Server的样例实现(Python版本)

本项目建于2025-03-30,是一个MCP Client 与 MCP Server的样例实现(Python版本)

site icon
2025.03.31 5
Python图书搜索MCP协议搜索工具
py-mcp-sse 是一个基于SSE(Server-Sent Events)的MCP服务器和客户端的Python实现,主要用于图书搜索。它通过OpenRouter.ai的LLM中转调用平台实现,提供了基于古腾堡计划API的图书搜索工具。该项目适用于需要远程连接和使用图书搜索服务的场景,支持解耦的服务器和客户端运行模式。
View on GitHub

Overview

基本能力

产品定位

py-mcp-sse 是一个基于SSE的MCP服务器和客户端实现,主要用于图书搜索服务。

核心功能

  1. 基于SSE的MCP服务器实现,支持远程连接和使用。
  2. 提供基于古腾堡计划API的图书搜索工具。
  3. 支持OpenRouter.ai的LLM中转调用平台。
  4. 解耦的服务器和客户端运行模式,适合云原生用例。

适用场景

  1. 需要远程连接和使用图书搜索服务的场景。
  2. 云原生应用开发,需要解耦的服务器和客户端运行模式。
  3. 基于MCP协议的开发和学习。

工具列表

  1. search_gutenberg_books: 基于古腾堡计划API的图书搜索工具。

常见问题解答

  1. Python版本是否满足要求(>=3.13)。
  2. 环境变量是否正确配置。
  3. 所有依赖是否正确安装。
  4. 端口8080是否被占用(如被占用,可使用--port参数指定其他端口)。

使用教程

使用依赖

  1. Python 3.13 或更高版本。
  2. 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 --host 127.0.0.1 --port 8080
  1. 启动客户端
uv run client.py http://localhost:8080/sse

许可证

None