Weather MCP Server

MCP server giving AI assistants 17 weather tools with zero API keys: global forecasts, current conditions, alerts, air quality, marine conditions

Local serverstdioTypeScript

What is the Weather MCP server?

If you already use Weather, the weather mcp server is the piece that lets your assistant work with it directly. MCP server giving AI assistants 17 weather tools with zero API keys: global forecasts, current conditions, alerts, air quality, marine conditions, lightning detection, radar imagery, river levels, wildfire tracking, and historical weather.

What the server does

Weather MCP is a Model Context Protocol server that connects AI assistants (Claude, Cursor, Cline, Zed, and any other MCP client) to live weather data: forecasts, current conditions, alerts, air quality, marine conditions, lightning, radar, rivers, wildfires, and 85+ years of historical weather. It's built entirely on free public data sources — NOAA, Open-Meteo, USGS, NIFC, RainViewer, and Blitzortung.org — so there is nothing to sign up for and no key to paste in.

  • Genuinely free — — every data source is a free public API. No trial that expires, no credit card, no rate-limited "free tier" bait
  • No API keys — — install to first forecast in under a minute. Nothing to configure, nothing to leak into a repo
  • Fully open source — — MIT licensed, readable TypeScript, 1,332 tests. Audit it, fork it, fix it
  • Privacy-respecting — — your queries go directly from your machine to public weather APIs. No middleman server, no telemetry
  • Breadth — — 17 tools covering weather, safety hazards (lightning, floods, wildfires), marine conditions, air quality, and historical data back to 1940. Most weather MCPs stop at forecasts

Available tools

The toolset is worth reading before you wire it up, because it tells you what the integration is really for:

  • get_forecast — Daily/hourly forecasts up to 16 days by coordinates, saved location, or city name; sunrise/sunset, UV, precipitation probability, optional
  • get_current_conditions — Current weather: temperature, wind, humidity, pressure; NOAA station observations in the US (plus heat index/wind chill, snow depth, optional
  • get_alerts — Active watches, warnings, and advisories sorted by severity
  • get_historical_weather — Hourly/daily observations from 1940 to present
  • get_weather_summary — One-call overview combining current conditions, forecast, and alerts (optionally air quality and lightning)
  • search_location — Geocode place names to coordinates ("Paris" → 48.85, 2.35)
  • get_air_quality — AQI (US/European scales), pollutants, UV index, health guidance; optional day-grouped forecast up to 7 days with per-day peak AQI and UV
  • get_marine_conditions — Wave height, swell, ocean currents, Douglas Sea Scale — includes Great Lakes and major US bays; forecast up to 16 days
  • get_weather_imagery — Precipitation radar (static or 2-hour animated loops) + GOES satellite imagery
  • get_lightning_activity — Real-time strike detection with 4-level proximity safety assessment
  • get_river_conditions — River gauge levels, flood stages, streamflow, rise/fall trends, NWPS forecast series
  • get_wildfire_info — Active fires, containment, size, proximity-based safety guidance

Credentials and setup notes

Configuration is passed through the environment: ENABLED_TOOLS, CACHE_MAX_SIZE, LOG_LEVEL, NCEI_API_TOKEN. Treat anything key-shaped as a real credential — scope it to the minimum the server needs, and rotate it if it ever lands in a shared config.

Installation

Installation goes through your MCP client rather than a global install: point it at @dangahagan/weather-mcp on npm and it is fetched when the client starts. The copy-paste blocks for Claude Desktop, Claude Code and Cursor are further down this page.

Where it fits

Among the developer tooling options, the useful question is rarely "what can it do" but "what does it cost you to run" — permissions, credentials, and how much of your context its toolset consumes. Weather's toolset — get_forecast, get_current_conditions, get_alerts and 11 more — is a fair guide to whether it matches your workflow. It is maintained by GitHub Actions; worth a glance at recent repository activity before you build anything load-bearing on it.

SyncDev reviews every entry in this directory against the project's own documentation before publishing, and revisits them as servers change.

Worth knowing first

  • It runs with your machine's permissions. That is convenient and also the reason to think about what you point it at before you approve a tool call.
  • With 14 tools registered it takes up a noticeable share of the context window; turn it off in projects that never touch Weather.
  • Missing credentials fail quietly in some clients — if no tools show up, check the environment block first.
  • Keep per-call confirmation enabled while you learn its behaviour; it is the cheapest safeguard you have.

Available tools

ToolWhat it does
get_forecastDaily/hourly forecasts up to 16 days by coordinates, saved location, or city name; sunrise/sunset, UV, precipitation probability, optional climate-normals comparison
get_current_conditionsCurrent weather: temperature, wind, humidity, pressure; NOAA station observations in the US (plus heat index/wind chill, snow depth, optional fire-weather indices), Open-Meteo model data elsewhere
get_alertsActive watches, warnings, and advisories sorted by severity
get_historical_weatherHourly/daily observations from 1940 to present
get_weather_summaryOne-call overview combining current conditions, forecast, and alerts (optionally air quality and lightning)
search_locationGeocode place names to coordinates ("Paris" → 48.85, 2.35)
get_air_qualityAQI (US/European scales), pollutants, UV index, health guidance; optional day-grouped forecast up to 7 days with per-day peak AQI and UV
get_marine_conditionsWave height, swell, ocean currents, Douglas Sea Scale — includes Great Lakes and major US bays; forecast up to 16 days
get_weather_imageryPrecipitation radar (static or 2-hour animated loops) + GOES satellite imagery
get_lightning_activityReal-time strike detection with 4-level proximity safety assessment
get_river_conditionsRiver gauge levels, flood stages, streamflow, rise/fall trends, NWPS forecast series
get_wildfire_infoActive fires, containment, size, proximity-based safety guidance
check_service_statusHealth checks for all upstream APIs plus cache statistics
save_locationSave places as aliases ("home", "cabin") with optional activity tags

How to install the Weather MCP server

Or in any MCP client's configuration:

```json
{
  "mcpServers": {
    "weather": {
      "command": "npx",
      "args": ["-y", "@dangahagan/weather-mcp@latest"]
    }
  }
}

Configuration as documented by the project. Restart the client after saving.

Configuration

VariableDescriptionRequired
ENABLED_TOOLSConfiguration value read at startup.Optional
CACHE_MAX_SIZEConfiguration value read at startup.Optional
LOG_LEVELConfiguration value read at startup.Optional
NCEI_API_TOKENCredential the server authenticates with.Yes

Example prompts to try

  • Use Weather to get forecast.
  • Use Weather to get current conditions.
  • Use Weather to get alerts.

Frequently asked questions

It connects Weather to MCP-compatible AI assistants such as Claude and Cursor, exposing 14 tools (get_forecast, get_current_conditions, get_alerts, and more) that the assistant can call on your behalf. Instead of copying data back and forth by hand, the assistant works with Weather directly.