How AI agents watch severe weather alerts
An AI agent watches severe weather by calling a wire that reads the National Weather Service active alerts feed at runtime. It returns watches, warnings and advisories filtered by severity and time window, each carrying a posting timestamp and a link back to the NWS alert it came from.
/mcp. Nothing here needs an API key or a signup.
Weather is the case where a stale answer is not merely wrong, it is the wrong kind of wrong. A model answering from training data will describe a hurricane season that ended two years ago in the present tense. There is no prompt that fixes this, because the information does not exist inside the model. It has to be fetched at the moment the question is asked.
What the severity filter actually selects
The wire reads three NWS queries: alerts marked severity Extreme, alerts marked severity Severe, and alerts of any severity marked urgency Immediate. Those three map onto the severity filter values extreme, severe and immediate.
That is deliberately the top of the ladder, and it means the wire does not mirror the full alert stream. When this page was written, the NWS active alerts endpoint carried 371 actual alerts nationwide. Of those, 1 was Extreme and 106 were Severe. The remaining 264 were Moderate, Minor or Unknown: dense fog advisories, small craft advisories, frost warnings. Real alerts, but not the ones an agent should wake a human for.
So the honest description is a triage filter on the NWS stream, not a copy of it. An agent that needs every advisory in a county should query the NWS API directly. An agent that needs to know when something dangerous was issued should call this.
The call an agent makes
# free preview, top 3 results, no payment and no wallet curl "https://thebotwire.com/weather/preview?severity=severe" # paid, $0.005: everything extreme or severe posted in the last 24 hours curl "https://thebotwire.com/weather/alerts?since=24h&limit=20" # one hazard type, one region name curl "https://thebotwire.com/weather/alerts?q=tornado&since=6h"
Parameters are severity (extreme, severe, immediate), q (hazard type, state, county or NWS office name), since (30m, 2h, 24h, 3d) and limit (1 to 50). The wire holds a 72-hour window and defaults to a 24-hour lookback. The route costs $0.005 per call in USDC on Base, with no API key and no signup.
Posted recently is not the same as active now
This distinction decides whether an agent built on this wire is trustworthy, and it is the one most likely to be missed.
The NWS endpoint is a snapshot of what is active this second. Alerts appear when issued and vanish when they expire. This wire is a rolling 72-hour window of what was *posted*, so an alert that expired an hour ago is still in the window until it ages out. Those are two different questions with two different answers.
- Asking what was issued recently: the wire answers directly. Filter by
since and read the results.
- Asking whether a warning is in force right now: read the expiry time on the
item before reporting it. A tornado warning issued 90 minutes ago has almost certainly lapsed, and an agent that reports it as current is manufacturing an emergency.
The general form of this mistake, treating retrieved text as though it were timestamped truth, is covered in why agents hallucinate recent events. The same posted-versus-current gap appears on provider status pages, described in how agents check whether AWS or OpenAI is down. The routing table lists which endpoint owns which question.
Freshness, and why five minutes is enough here
This wire sits in the breaking tier and is refreshed on every ingest run rather than on a slower schedule. The observed interval between runs on this service is about 298 seconds, published live at /health alongside the last poll time.
For a tornado warning with a 30-minute lifespan, a five-minute poll is a meaningful fraction of the event, and an agent making a life-safety decision should not be reading a cached wire at all. It should read api.weather.gov directly and accept the rate limits. This wire is built for the surrounding work: logistics rerouting, travel advice, insurance triage, situational summaries, where a few minutes costs nothing and one uniform response shape across 57 wires saves a great deal.
FAQ
Can an AI agent get every NWS alert from this wire?
No. The wire carries Extreme severity, Severe severity and Immediate urgency alerts, which was 107 of the 371 active alerts at the time of writing. Advisories below that threshold are not included. An agent that needs full county-level coverage should query the NWS API directly.
Does an agent need an account or an API key?
No. The route answers HTTP 402 with a price offer, an x402 client signs a USDC authorization on Base and retries, and the data comes back. The wallet setup takes three things and no signup, listed in what an agent wallet needs on Base.
How does an agent watch one state or one hazard?
Pass the term to q and run it on a schedule. q=tornado, q=Oklahoma or an NWS office name all work, and terms match against the alert headline and area text. A sweep every 15 minutes is 96 calls a day, or about $14 a month at $0.005 a call.
Is this US-only?
Yes. The National Weather Service issues alerts for the United States and its territories, so the wire is US-only. There is no equivalent international feed behind this route, and an empty result for a location outside NWS coverage means the wire has nothing, never that conditions are calm.
Sources
Alert data on this wire comes from the National Weather Service public API, documented at weather.gov API Web Service, which serves active alerts from api.weather.gov/alerts/active in Common Alerting Protocol format. The 371 active alerts and the severity breakdown quoted above were read from that endpoint on 2 August 2026. Poll cadence and wire count for this service are live at thebotwire.com/health.
Related: How do AI agents check whether AWS or OpenAI is down? · Why do AI agents hallucinate recent events, and how do you fix it?