Weather MCP Service
一个基于 Model Control Protocol (MCP) 的天气信息服务,提供天气预报和警报查询功能。
功能
- 获取美国各州的天气警报(
get_alerts) - 通过经纬度查询天气预报(
get_forecast)
技术栈
- Python 3.11+
- MCP (Model Control Protocol)
- FastMCP 服务器
- LangGraph + LangChain
- SSE (Server-Sent Events) 传输
安装
克隆仓库:
git clone https://github.com/haichaozheng/weather-mcp.git cd weather-mcp创建虚拟环境:
# 使用 Python 标准库 python -m venv weather_venv # 激活虚拟环境(Windows) weather_venvScriptsactivate # 激活虚拟环境(Linux/Mac) source weather_venv/bin/activate安装依赖:
pip install -r requirements.txt配置环境变量:
- 创建
.env文件,参考.env.example文件格式 - 添加必要的 API 密钥
- 创建
使用方法
启动 Weather 服务器:
python weather/weather.py服务器将在 http://localhost:8000 上启动,使用 SSE 传输。
在另一个终端窗口中运行客户端:
python weather/mcp_client.py客户端将连接到服务器并执行一系列天气查询测试。
API 功能
天气警报查询
get_alerts(state: str) -> str
state: 两字母美国州代码(例如:CA, NY)- 返回:该州的活跃天气警报列表
天气预报查询
get_forecast(latitude: float, longitude: float) -> str
latitude: 位置纬度longitude: 位置经度- 返回:该位置的天气预报
项目结构
weather-mcp/ ├── weather/ │ ├── weather.py # 主服务器文件 │ ├── mcp_client.py # 客户端测试文件 ├── requirements.txt # 项目依赖 ├── .env.example # 环境变量示例 └── README.md # 本文档
## 环境变量配置
项目使用 `.env` 文件存储环境变量和敏感信息。请按照以下步骤设置:
1. 复制环境变量模板文件:
```bash
cp .env.example .env
编辑
.env文件,填入您的实际配置:MOONSHOT_API_KEY=your_actual_api_key确保
.env文件不会被提交到版本控制系统中
Weather MCP Service
Project Details
- haichaozheng/weather-mcp
- Last Updated: 4/27/2025
Recomended MCP Servers
📦 Repomix (formerly Repopack) is a powerful tool that packs your entire repository into a single, AI-friendly file....
🔥 Turn entire websites into LLM-ready markdown or structured data. Scrape, crawl and extract with a single API.
An MCP Reddit server for post management in Reddit
PoC: an app maker and serve for goose GUI - delivered as an MCP





