4.5 开发自定义 MCP 服务器
4.5.1 极速入门:FastMCP (Python)
环境准备
# 安装 mcp 库
pip install mcp编写代码 (weather_server.py)
weather_server.py)from mcp.server.fastmcp import FastMCP
# 1. 创建 Server 实例
mcp = FastMCP("My Weather Server")
# 2. 定义工具 (使用装饰器)
# docstring 会自动变成工具的 description
# 类型注解会自动变成 input_schema
@mcp.tool()
def get_weather(city: str) -> str:
"""获取指定城市的当前天气情况。"""
# 这里可以填写真实的 API 调用逻辑
# 例如: requests.get(f"https://api.weather.com/{city}")
return f"{city} 今天晴朗,气温 25度。"
# 3. 定义资源 (Resource)
# 让 Claude 可以直接读取这种格式的数据: weather://beijing
@mcp.resource("weather://{city}")
def get_weather_resource(city: str) -> str:
"""以资源形式获取天气数据"""
return f"Latest weather report for {city}: Sunny, 25C, Humidity 40%."
if __name__ == "__main__":
# 启动 Server
mcp.run()本地测试
4.5.2 企业级开发:TypeScript SDK
初始化项目
编写代码 (index.ts)
index.ts)4.5.3 设计原则与最佳实践
保持原子性 (Atomicity)
丰富的描述 (Rich Descriptions)
错误处理 (Error Handling)
4.5.4 部署与分发
最后更新于
