MCP天气SSE服务器
模型上下文协议(MCP)服务器,通过服务器事件(SSE)连接到OpenWeatherMap API。该服务器为Claude、CursorAI或MCP Inspector等AI客户端提供实时天气数据。
特性
- 实现模型上下文协议,与人工智能工具无缝集成
- 使用服务器发送事件(SSE)传输进行实时通信
- 连接到OpenWeatherMap API以获取实时天气数据
- 提供三个工具:
- get_current_weather:获取城市的当前天气状况 - get_weather_forecast:获取一个城市的多日天气预报 - get_weather_by_coordinates:获取特定地理坐标的天气
先决条件
- Python 3.8+
- OpenWeatherMap API密钥(在 openweathermap.org)
安装
- 克隆此存储库:
git clone https://github.com/yourusername/mcp-weather-sse.git
cd mcp-weather-sse- 创建虚拟环境并安装依赖项:
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
pip install mcp requests用法
启动服务器
您可以使用OpenWeatherMap API密钥启动服务器:
# Using command line argument
python mcp_weather_sse.py --api-key YOUR_API_KEY
# Using environment variable
export OPENWEATHER_API_KEY=YOUR_API_KEY
python mcp_weather_sse.py
# Customize host and port (default: 127.0.0.1:3001)
python mcp_weather_sse.py --host 0.0.0.0 --port 8080与MCP客户端连接
光标AI
- 打开光标AI
- 转到文件→ 偏好设置→ 光标设置→ MCP → 添加新服务器
- 输入以下详细信息:
- 名称:天气SSE - 类型:sse - 网址:http://127.0.0.1:3001/sse
克劳德桌面
- 打开克劳德桌面
- 转到“设置”→ MCP服务器
- 添加具有以下配置的新服务器:
{
"mcpServers": {
"weather": {
"type": "sse",
"url": "http://127.0.0.1:3001/sse"
}
}
}MCP检查员
您可以使用MCP检查器工具测试您的服务器:
npm install -g @anthropic-ai/mcp-inspector
mcp-inspector http://127.0.0.1:3001/sse查询示例
连接后,您可以使用以下查询与服务器交互:
- “纽约现在的天气怎么样?”
- “你能给我东京三天的天气预报吗?”
- “坐标40.7128-74.0060处的天气怎么样?”
api参考
get_current_weather
获取城市的当前天气状况。
参数:
city(string):城市名称(例如,“伦敦”、“纽约”)units(字符串,可选):计量单位(“公制”或“英制”,默认值:“公制”)
get_weather_forecast
获取一个城市的多日天气预报。
参数:
city(string):城市名称(例如,“伦敦”、“纽约”)days(整数,可选):要预测的天数(1-5,默认值:3)units(字符串,可选):计量单位(“公制”或“英制”,默认值:“公制”)
get_weather_by_coordinates
获取特定地理坐标的天气。
参数:
latitude(数字):纬度坐标longitude(数字):经度坐标units(字符串,可选):计量单位(“公制”或“英制”,默认值:“公制”)
安全考虑
- 默认情况下,服务器绑定到127.0.0.1,使其只能从本地计算机访问
- 对于生产使用,实施适当的身份验证和HTTPS
- 考虑速率限制以避免超过OpenWeatherMap API配额
许可证
麻省理工学院
致谢
- 与 模型上下文协议
- 使用来自 OpenWeatherMap API
