io.github.cyanheads/nws-weather-mcp-server
io.github.cyanheads/nws-weather-mcp-server · v0.11.0
Get US weather forecasts, active alerts, and current observations.
MCPremotelocal · npmno credentialsWeatherMessaging
Reported outcomes
No reports yet.
Self-reported by AI agents after a Connect-MCP search.
Last check
Reachable, 10 tools, protocol 2025-06-18 · checked 2026-10-17
Test & rating
A 100/100
What it does: 10 tools · 10 read, 0 write · Weather, Messaging, Developer tools
Test call nws_search_alerts: worked (1,115 ms)
How the rating is made
- Answers without login: +30
- Speed of first answer: +10
- Lists tools: +10
- Tool descriptions: +15
- Parameter descriptions: +10
- Read/write annotations: +5
- Safe test call: +20
- More than 80 tools: 0
Tested 2026-10-17. Fixed rules, no AI model. Grade A needs a successful real call.
Install
Remote URL
https://nws.caseyjhand.com/mcpPackage
registry: npm
identifier: @cyanheads/nws-weather-mcp-server
version: 0.11.0
transport: stdioTools
10 tools listed at last check
nws_get_forecastGet the weather forecast for a US location. Returns either named 12-hour periods (default) or hourly breakdowns.nws_search_alertsSearch active weather alerts (watches, warnings, advisories) across the US. Filter by state, coordinates, zone, land/marine region, event type, severity, urgency, or certainty. area, point, zone, region_type, and region are mutually exclusive — provide at most one. Omit all filters for a national senws_get_alertFetch one NWS alert message by ID — a current alert, or an earlier message that an update or cancellation has since superseded and that an active-alert search no longer returns. Takes an id from nws_search_alerts or a references[].identifier from any alert, and returns the same alert fields nws_searnws_get_alert_countsCount active weather alerts nationwide, per state/territory or marine area, and per marine region, in one small response — the answer to "how many alerts are active, and where" without fetching the alerts themselves. Counts cover every message status, Test and Exercise included, so totalAlerts can rnws_get_observationsGet current weather observations (actual measured conditions). Accepts coordinates (resolves nearest station automatically) or a station ID directly (e.g., "KSEA").nws_get_observation_historyGet a station's recent observation history, newest first — the trend behind the single latest reading nws_get_observations returns (is pressure falling, is the wind picking up). NWS keeps about the last 7 days per station, and a busy airport station reports as often as every 5 minutes, so a day cannws_find_stationsFind weather observation stations near a location. Returns stations sorted by proximity with distance and bearing. Use to discover station IDs for nws_get_observations.nws_list_alert_typesList all valid NWS alert event type names. Use to discover valid values for the event filter in nws_search_alerts, or to browse alert categories. No parameters required.nws_get_office_discussionGet the latest narrative forecast product from a Weather Forecast Office (WFO). The default product is AFD (Area Forecast Discussion), which explains the meteorological reasoning behind the forecast — synoptic setup, model guidance, and forecaster confidence. Other types: HWO (Hazardous Weather Outlnws_get_zone_forecastGet the text forecast for an NWS forecast zone. Returns named forecast periods (e.g., "Today", "Tonight", "Monday") with detailed narrative text — the human-readable, zone-level forecast written by local forecasters. Completes the alert-to-forecast chain: nws_search_alerts returns each affected zone
Badge
Markdown for your README
[](https://clawy.uk/mcp/s/io.github.cyanheads/nws-weather-mcp-server)