Catalog / National Weather Service

National Weather Service API

api.weather.gov

Read-only live access to api.weather.gov forecast, active-alert, and nearest-station observation data. Forecasts and observations accept geographic coordinates; alerts accept a two-letter US state or territory code.

  • weather
  • NOAA
  • forecast
  • alerts
  • observations
3 endpointsDocs updated

Endpoint health

Loading verification…

ForecastLoading
AlertsLoading

Connect your agent

Connect through MCP so your agent can find this API, read its docs, and call its endpoints.

Setup guide

Add the server from your terminal.

Claude Code · terminal
claude mcp add --transport http agent-data https://agent-data.motie.dev/mcp

In Claude Code, run /mcp, select agent-data, then Authenticate. Sign in to your agent-data account in the browser.

Then ask your agent to use the National Weather Service API for your task.

Call it over HTTP

Get an API key

Sign up free, generate an API key, and set it as AGENT_DATA_API_KEY in your environment. Your first 100 calls each month are free.

Retrieve NOAA's forecast periods, location, update time, and generation time for a geographic point.

Latitude in decimal degrees.

Longitude in decimal degrees.

View call pricing
cURL · Forecast
curl --request GET --get 'https://api.agent-data.dev/api-weather-gov/v1/forecast' \
  --header "Authorization: Bearer $AGENT_DATA_API_KEY" \
  --data-urlencode 'latitude=38.8977' \
  --data-urlencode 'longitude=-77.0365'

Endpoints

Inputs and response fields for every endpoint in this API.

GETForecast/v1/forecast

Retrieve NOAA's forecast periods, location, update time, and generation time for a geographic point.

Input

latitudeRequiredQuery · number, min: -90, max: 90

Latitude in decimal degrees.

Example: 38.8977

longitudeRequiredQuery · number, min: -180, max: 180

Longitude in decimal degrees.

Example: -77.0365

Response

periodsobject[]
locationobject
location.citystring
location.statestring
location.grid_xinteger
location.grid_yinteger
location.grid_idstring
location.timezonestring
update_timestring
generated_atstring
GETAlerts/v1/alerts

Retrieve currently active NOAA weather alerts for a two-letter US state or territory code.

Input

areaRequiredQuery · string

Two-letter US state or territory code.

Example: DC

Response

totalinteger, min: 0
alertsobject[]
GETObservations/v1/observations

Retrieve the latest observation from the nearest NOAA station to a geographic point.

Input

latitudeRequiredQuery · number, min: -90, max: 90

Latitude in decimal degrees.

Example: 38.8977

longitudeRequiredQuery · number, min: -180, max: 180

Longitude in decimal degrees.

Example: -77.0365

Response

timestampstring
dewpoint_cnumber | integer | null
station_idstring
heat_index_cnumber | integer | null
station_namestring
visibility_mnumber | integer | null
wind_chill_cnumber | integer | null
temperature_cnumber | integer | null
wind_gust_kmhnumber | integer | null
wind_speed_kmhnumber | integer | null
text_descriptionstring | null
relative_humidity_pctnumber | integer | null

Don’t see the endpoint you need?

Ask agent-data to add an endpoint or return more fields. Extensions are free and keep existing endpoints working.