关于 Weather MCP Server
Weather MCP Server 使用 National Weather Service API 提供美国各州的天气预警,面向 MCP 客户端使用。它支持 stdio 和 SSE 传输,并附带带对话记忆的 LLM 命令行客户端。
主要功能
- 01查询美国州级天气预警
- 02支持 stdio 或 SSE 传输
- 03通过 Docker 容器运行
- 04集成 Claude Desktop 和 Cursor IDE
- 05带对话记忆的 LLM 命令行客户端
适用场景
- 01查询美国某州的天气预警
- 02将天气预警接入 Claude Desktop 或 Cursor IDE
- 03使用带对话记忆的 LLM 命令行客户端
MCP 相关
提供 get_alerts 工具,用于查询指定美国州的天气预警。服务支持 stdio 和 SSE 传输。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
还没有获取到工具列表
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
Weather MCP Server
一个使用 MCP Python SDK 构建的模型上下文协议(MCP)服务实现,可提供美国各州的天气预警。本项目演示了如何创建包含工具、资源和 Docker 集成的 MCP 服务。
功能
- 使用 National Weather Service API 获取美国各州的天气预警
- 支持 stdio 和 SSE(服务器发送事件)两种传输方式
- Docker 容器化
- 与 Claude Desktop 和 Cursor IDE 集成
- 使用 Groq 的大模型驱动命令行客户端
- 内置对话记忆支持
项目结构
Creating-MCP-server/
├── server/
│ ├── weather.py # Main MCP server implementation
│ ├── client.py # LLM-powered CLI client
│ └── weather.json # Server configuration
├── mcpserver/
│ ├── Dockerfile # Docker configuration
│ ├── requirements.txt # Python dependencies
│ ├── client-stdio.py # Standard I/O client example
│ ├── client-sse.py # SSE client example
│ └── server.py # Containerized server
安装
本地设置
- 克隆代码仓库:
git clone <repository-url>
cd Creating-MCP-server
- 安装依赖:
pip install -r mcpserver/requirements.txt
Docker 设置
拉取预构建镜像:
docker pull ksharma9719/weather-mcp-server
或在本地构建:
cd mcpserver
docker build -t weather-mcp-server .
使用方法
运行服务
本地开发
cd server
python weather.py
使用 Docker
docker run -p 8000:8000 ksharma9719/weather-mcp-server
客户端示例
集成大模型的命令行客户端
cd server
python client.py
标准输入/输出客户端
cd mcpserver
python client-stdio.py
SSE 客户端
cd mcpserver
python client-sse.py
可用工具
get_alerts
获取美国某个州的天气预警。
参数:
state:美国州的两字母代码(例如 CA、TX、NY)
示例:
result = await session.call_tool("get_alerts", arguments={"state": "CA"})
与 Claude Desktop 集成
- 在 Claude Desktop 中安装该服务:
mcp install weather.py
- 可选:指定自定义名称:
mcp install weather.py --name "Weather Alerts Server"
开发
先决条件
- Python 3.11 或更高版本
- uv 包管理器
- Docker(可选)
环境变量
在服务目录中创建 .env 文件:
GROQ_API_KEY=your_groq_api_key
文档
贡献
- Fork 代码仓库
- 创建功能分支(
git checkout -b feature/amazing-feature) - 提交更改(
git commit -m 'Add some amazing feature') - 推送到分支(
git push origin feature/amazing-feature) - 创建 Pull Request
许可证
本项目采用 MIT 许可证授权——详情请参阅 LICENSE 文件。
致谢
- 感谢 Model Context Protocol 团队提供出色的 SDK
- 感谢 National Weather Service 提供公共 API
- 感谢 Groq 提供大模型 API
评论
支持 Markdown
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。