使用说明
项目简介
'easy_mcp' 是一个使用 Python 编写的 Model Context Protocol (MCP) 服务器模块,旨在简化 MCP 服务器的创建过程。它利用 Server-Sent Events (SSE) 实现与 LLM 客户端的高效通信,并提供工具注册和执行、资源管理和 Prompt 模板等核心 MCP 功能的初步框架。本项目包含一个天气服务示例,展示了如何使用 'easy_mcp' 模块构建实际应用。
主要功能点
- MCP 服务器框架: 提供基础的 MCP 协议服务端实现,支持处理客户端的初始化、工具调用等请求。
- 工具注册与执行: 允许注册自定义工具,并响应客户端的工具调用请求,例如天气预报查询工具。
- SSE 通信: 使用 Server-Sent Events (SSE) 协议与客户端进行实时、高效的数据传输。
- HTTP/HTTPS 支持: 支持 HTTP 和 HTTPS 两种模式,HTTPS 模式提供安全连接。
- 示例应用: 包含一个天气预报 Demo,演示了如何集成外部 API 并通过工具提供给 LLM 客户端。
安装步骤
- 克隆仓库:
git clone https://github.com/gitcnd/easy_mcp.git cd easy_mcp - 创建并激活虚拟环境:
python3 -m venv venv source venv/bin/activate # Linux/macOS venv\Scripts\activate # Windows - 安装项目:
pip install -e .
服务器配置
MCP 服务器主要通过命令行参数进行配置。对于 MCP 客户端(如 Cursor 编辑器),您需要配置服务器的启动命令和参数。以下是针对 Cursor 编辑器的 MCP 配置示例 ('~/.cursor/mcp.json'):
{ "mcpServers": { "weather-demo-mcp-server": { // 服务器名称,可以自定义 "url": "http://127.0.0.1:9443/sse", // MCP 服务器 SSE 端点 URL,HTTPS 模式请使用 'https' "env": {} // 环境变量(本示例无需配置) } } }
Cursor MCP 客户端服务器启动配置:
- Server Name (服务器名称): 'weather-demo-mcp-server' (或自定义名称)
- Command (命令): 'python'
- Args (参数): 'examples/weather_demo.py --http' (HTTP 模式) 或 'examples/weather_demo.py' (HTTPS 模式,需要配置证书)
参数说明:
- '--http': 以 HTTP 模式运行服务器 (不启用 TLS/HTTPS)。
- '--port': 指定服务器监听端口,默认为 '9443'。
- '--host': 指定服务器绑定的主机地址,默认为 '127.0.0.1' (本地)。
- '--hostname': 公共主机名,用于 SSE 连接,通常无需配置。
基本使用方法
- 启动服务器:
- HTTP 模式 (推荐开发测试):
python examples/weather_demo.py --http - HTTPS 模式 (生产环境):
- 首先,替换 'src/easy_mcp/certs/' 目录下的证书文件为您自己的 SSL 证书。
- 然后运行服务器:
python examples/weather_demo.py
- HTTP 模式 (推荐开发测试):
- 配置 MCP 客户端:
- 根据 “服务器配置” 章节的说明,在 MCP 客户端 (如 Cursor 编辑器) 中添加并配置 'weather-demo-mcp-server'。
- 在 MCP 客户端中使用工具:
- 连接成功后,客户端应能发现并调用服务器注册的工具,例如天气预报工具 'x_get_forecast'。具体使用方式请参考 MCP 客户端的文档。
信息
分类
AI与计算