Weather MCP
Weather MCP
MCP server with 12 weather tools — conditions, forecasts, alerts, NWP model imagery, NEXRAD radar, and 205 meteorological calculations. Built for Claude Code.
Data tools work immediately with just requests. Image rendering and calculations use optional Rust-backed packages for professional-grade output.
Quick Start
git clone https://github.com/FahrenheitResearch/weather-mcp
cd weather-mcp
pip install requests mcpAdd to your Claude Code MCP config (~/.claude/settings.json):
{
"mcpServers": {
"weather": {
"command": "python",
"args": ["/full/path/to/weather-mcp/server.py"]
}
}
}Restart Claude Code. You now have 7 weather data tools available immediately.
Tools
Data (Python — always available)
Tool | What it does |
| Current obs: temperature, wind, sky, dewpoint |
| NWS 7-day or hourly forecast |
| Active warnings/watches with GeoJSON polygons for map overlays |
| Raw/decoded METAR for any ICAO station |
| Conditions + forecast + alerts in one call |
| Non-US locations via Open-Meteo |
| SPC Day 1 outlook + active watches |
Images (Rust — optional)
Tool | What it does |
| NWP field rendered as PNG — 22+ products, 3 models, batch support |
| NEXRAD Level 2 reflectivity (1024px, 200km, dark background) |
| Radar with storm cell analysis |
Calculations (Rust — optional)
Tool | What it does |
| Any of 205 meteorological functions (dewpoint, CAPE, LCL, Fosberg FWI, etc.) |
| Model sounding at a point — 40 levels + all derived parameters |
Optional: Image & Calculation Packages
# Model imagery + soundings
pip install metrust cfrust rusbie rustweather
# Radar (build from source)
cd /path/to/rustdar
cargo build --release --bin radar-render
# Set path if not at ~/rustdar/
export RADAR_RENDER_PATH=/path/to/radar-renderWhat Can I Build With This?
Just tell Claude Code what you want. Examples:
"Build me a fire weather dashboard with Red Flag Warning overlays" — Claude Code will use
wx_alerts(event_type="Red Flag Warning")and overlay the GeoJSON polygons on your map"Show me the HRRR CAPE forecast for Oklahoma" —
wx_model_image(var="cape", lat=35.5, lon=-97.5, radius_km=300)"Calculate the Fosberg Fire Weather Index for 95°F, 8% RH, 25 mph wind" —
wx_calc(function="fosberg_fire_weather_index", ...)"What's the severe weather outlook?" —
wx_severe()"Build a weather app with current conditions and radar" — Claude Code chains
wx_conditions+wx_radar_image
Credits
Color tables: Solarpower07
Meteorological calculations: metrust — 205 functions verified against MetPy
GRIB decoding: cfrust (pure Rust, replaces eccodes)
NWP downloads: rusbie (byte-range .idx filtering)
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/FahrenheitResearch/weather-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server