# nws-weather-mcp-server [Health: Active]

**Category:** 🌳 Environment & Nature  
**Repository:** https://github.com/cyanheads/nws-weather-mcp-server  
**GitHub Stars:** 2  
**npm Downloads (last month):** 2081  
**Views:** 2  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/nws-weather-mcp-server

## Description
Real-time US weather data via National Weather Service API. Forecasts, alerts, and observations.

## Tools
Capabilities this server exposes over MCP:

- **nws_get_forecast** — 7-day or hourly forecast for coordinates. Resolves NWS grid internally.
- **nws_search_alerts** — Active weather alerts filtered by area, point, zone, event, severity, urgency, certainty, and status.
- **nws_get_alert** — One alert message by ID, current or superseded (~7-day retention).
- **nws_get_alert_counts** — Active alert counts nationwide, per state/territory or marine area, and per marine region.
- **nws_get_observations** — Current conditions by coordinates (nearest station) or station ID.
- **nws_get_observation_history** — A station's recent observations, newest first, paged back through the ~7 days NWS keeps.
- **nws_find_stations** — Nearby observation stations sorted by distance with bearing.
- **nws_list_alert_types** — All valid alert event type names for filter discovery.
- **nws_get_office_discussion** — Latest narrative product (AFD, HWO, ZFP, SPS, FWF) from a Weather Forecast Office; a product too large to inline comes back as a section outline.
- **nws_get_zone_forecast** — Text forecast periods for an NWS forecast zone.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "nws-weather-mcp-server": {
    "command": "npx",
    "args": ["-y","@cyanheads/nws-weather-mcp-server"]
  }
}
```

## Documentation

## What nws-weather-mcp-server does

nws-weather-mcp-server exposes National Weather Service data to MCP-compatible AI clients. Its coverage includes the 50 states and US territories, with support for land forecasts, active alerts, current station observations, recent observation history, forecast zones, and narrative products from Weather Forecast Offices.

Forecast requests can return named 12-hour periods for roughly seven days or hourly periods. Alert tools support national, state or territory, marine, point, area, zone, event, severity, urgency, certainty, and status-oriented queries. Observation tools can resolve the nearest station from coordinates or work directly with a station ID.

The server also provides two MCP resources: a static NWS alert-type list at `nws://alert-types` and a weather guide at `skill://nws-weather-guide/SKILL.md` for combining forecasts, alerts, station trends, and forecaster discussions.

## How it works

Coordinate-based forecast requests resolve the appropriate NWS grid internally. Observation lookups resolve a nearby station unless a station ID is supplied. Station discovery returns nearby stations ordered by distance and includes identifiers that can be passed to observation tools.

Alert searches can be paged with cursors. Cursors retain the relevant query mode and filters, allowing an agent to continue a result walk without rebuilding the request. Forecast paging similarly preserves hourly mode. Observation history is returned newest first and can be constrained by an ISO 8601 time window.

The server returns NWS-derived details such as forecast update times, alert references and issuing offices, dual-unit measurements, precipitation intervals, and staleness notices. Large forecaster products are represented by a section outline rather than being placed entirely inline.

## Setup and configuration

No National Weather Service API key is required. The package can be launched through `npx` using:

```bash
npx -y @cyanheads/nws-weather-mcp-server
```

It supports STDIO for local MCP client configurations and Streamable HTTP for network access. A public hosted endpoint is available at `https://nws.caseyjhand.com/mcp`. Claude Desktop, Cursor, and VS Code have installation links associated with the project. Docker packaging is also available.

## Tools and capabilities

- `nws_get_forecast` returns seven-day or hourly forecasts, with optional precipitation, snowfall, and ice-accumulation amounts.
- `nws_search_alerts` filters active or other alert statuses by geography and alert attributes.
- `nws_get_alert` retrieves current or superseded messages by alert identifier.
- `nws_get_alert_counts` reports national, state or territory, and marine alert counts.
- `nws_get_observations` returns current conditions from coordinates or a station ID.
- `nws_get_observation_history` pages through approximately seven days of station reports.
- `nws_find_stations` locates nearby stations and returns distance, bearing, and station identifiers.
- `nws_list_alert_types` lists valid NWS event names for constructing filters.
- `nws_get_office_discussion` retrieves the latest AFD, HWO, ZFP, SPS, or FWF product from an NWS office.
- `nws_get_zone_forecast` returns text forecast periods for an NWS forecast zone.

## Limitations and notes

Coverage and behavior follow the National Weather Service API. Marine coordinates are unsupported by the grid forecast tool, and some land points may not have an NWS forecast grid. NWS retains observation history and alert messages for about seven days. Current observations can be older than two hours and may contain unavailable measurements.

Alert-count totals include every message status, including Test and Exercise, while alert search defaults to `Actual`. Area counts can overlap because one alert may apply to multiple zones. Forecast and alert result limits are capped, and a cursor is required to retrieve additional pages.

_Full upstream README: https://allmcps.com/mcp/nws-weather-mcp-server/readme_

