基本能力
产品定位
MCP Server Python模板旨在为开发者提供一个快速构建MCP服务器的Python基础框架,特别适合AI辅助开发场景。
核心功能
- 提供即用型的MCP服务器实现
- 支持可配置的传输模式(stdio、SSE)
- 集成了天气服务示例(NWS API)
- 代码结构清晰且文档完善
- 依赖项极少
- 内置MCP规范和文档,增强AI工具理解
适用场景
- AI辅助开发MCP工具
- 快速构建MCP服务器原型
- 教育和学习MCP协议
工具列表
- FastMCP: 用于初始化MCP服务器和定义工具
- @mcp.tool()装饰器: 用于定义MCP工具函数
- stdio/SSE传输: 支持命令行工具和Web应用的通信
常见问题解答
- Q: 如何运行示例服务器?
A: 使用python server.py --transport stdio
或python server.py --transport sse --host 0.0.0.0 --port 8080
命令。 - Q: 如何创建自定义MCP工具?
A: 使用@mcp.tool()
装饰器定义函数,并通过mcp.run()
运行服务器。
使用教程
使用依赖
- Python 3.12+
- 依赖包:
mcp>=1.4.1
httpx>=0.28.1
starlette>=0.46.1
uvicorn>=0.34.0
安装教程
- 克隆仓库:
bash
git clone https://github.com/yourusername/mcp-server-python-template.git
cd mcp-server-python-template - 创建虚拟环境并安装依赖:
bash
python -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -e .
调试方式
- 运行示例服务器:
bash
# CLI工具模式
python server.py --transport stdio
# Web应用模式
python server.py --transport sse --host 0.0.0.0 --port 8080 - 自定义工具调试:
python
from mcp.server.fastmcp import FastMCP
mcp = FastMCP("your-namespace")
@mcp.tool()
async def your_tool_function(param1: str, param2: int) -> str:
"""工具描述"""
return result
mcp.run(transport='stdio')