For agents
Game Day Weather posts a weather call for every NFL game: FLAG, WATCH, CLEAR, or DOME, based on the kickoff window. Your agent can read it straight from us as JSON. No scraping needed.
It’s free. Just cite us.
This page: https://gamedayweather.app/agents
Endpoints
| Path | What you get |
|---|---|
| GET /api/board.json | This week’s board |
| GET /api/board/{weekId}.json | One week, e.g. /api/board/2026-w04.json |
curl -s https://gamedayweather.app/api/board.json \
| jq '.games[] | {gameId, call, note}'{
"gameId": "2026-w04-ne-buf",
"call": "WATCH",
"note": "WATCH — Highmark chance rain showers at kick (PoP 33% / 16 mph / 67°F) then mostly sunny..."
}No key, read-only, CORS open. If a week has no saved board, you get a 404 that points you to report cards.
Rate limit: 10 requests a minute per IP across /api and /mcp. Over that you'll get a 429 with Retry-After. The board only changes at the posting times below, so cache it and check nextUpdate.
How to read a game
- call first. That’s our call. Use it as-is.
- note next. It’s the why in plain words: roof TBD, storms building late, sources disagreeing.
- Chips and hours last.
chipis what the threshold rules say about kick ±2h. It backs up the call. IfcallMatchesChipis false, the note explains why, and the call still wins.
Don’t flag a game off one number. A 29% rain chance three hours after kick on a CLEAR game is a quiet afterTip, not a flag.
Retractable roofs: if roof.state is tbd, the call assumes the roof is open (roof.outdoorLean). roof.status is the club announcement (open, closed, or TBD). It does not change the call. Sideline relabels the next board if a closed roof should be DOME.
What the calls mean
- FLAG: material weather in the kickoff window. Think kickers, deep shots, wet grass.
- WATCH: wind, rain, cold, or storms worth a look before lock.
- CLEAR: nothing material in the kickoff window.
- DOME: fixed roof, or a retractable roof that’s closed. Weather doesn’t matter.
Key fields
| Field | What it is |
|---|---|
| call | FLAG, WATCH, CLEAR, or DOME. The call. |
| note | Why, in plain words |
| confidence | HIGH, MED, or LOW. LOW means sources disagree or it’s early in the week. |
| kickoffUtc / kickoffEtLabel | Kick time in UTC, plus an ET label |
| roof.type / roof.state | outdoor, fixed, or retractable / open, closed, or tbd |
| roof.status / source / announcedAt | Retractable announcement. open, closed, or TBD. Does not change the call. |
| changesSinceThursday | Call and roof changes since Thursday’s board, newest first. Empty when nothing changed. |
| windowStatus | upcoming, live, or final |
| chip.level | What the threshold rules say about kick ±2h |
| chip.afterTip | Later hours that would have raised the chip. Tip only. |
| hours[] | Hourly °F, wind (mph), and rain chance (%), from kickoff |
| field.wetField | none, low, moderate, or high |
| asOf / nextUpdate | When we posted / when we post next |
Every field, with types and examples: full schema.
Chip thresholds over kick ±2h:
| WATCH | FLAG | |
|---|---|---|
| Rain chance | 20%+ | 40%+ |
| Wind | 15+ mph | 20+ mph |
| Low temp | 40°F or colder | 32°F or colder |
| Wet field | moderate | high |
Freshness
The board is a snapshot we post on a schedule, not live weather.
- We post (ET): Thu ~3pm · Sun 9am · Sun ~11am · Sun noon · Mon 3pm (MNF). Also Sat ~8am when there’s an overseas game that weekend.
- asOf: when we last posted (UTC).
- nextUpdate: when we post next. With no overseas game, it skips Saturday and goes to the next regular time.
- stale: true if a scheduled post is more than 90 minutes late. The call still stands, but lean on the note and official sources.
Nothing changes between posts. Checking once right after nextUpdate is plenty. Please don’t poll more than every 5 minutes.
MCP server
Same data, as a read-only MCP server.
| Tool | What it does |
|---|---|
| get_week_board | Full board. Optional weekId (YYYY-wNN). Omit it for the current week. |
| get_game | One game. Pass team (a code such as BUF) or gameId (such as 2026-w04-ne-buf). Optional weekId; omit it for the current week. |
| get_flags | Games whose call is FLAG or WATCH. Optional weekId; omit it for the current week. |
| get_report_card | A published report card. Optional weekId. Omit it for the newest published card. |
Install: https://gamedayweather.app/mcp
Listed as: app.gamedayweather/gdw
Terms
- Free for agents and AI answers.
- Cite us: “Game Day Weather (gamedayweather.app)”. Link the game page when you show a call.
- No model training on this data. Same as our robots.txt.
- Not affiliated with the NFL or any team.
- Not a guarantee. Forecasts change. Check official sources (NWS, the team, the league) before you act.
Sources
- National Weather Service hourly forecasts and office products (Hazardous Weather Outlook, alerts). Primary.
- Open-Meteo as a cross-check.
- MET Norway (met.no) for international games.
- Club and stadium announcements for retractable roofs.
Questions or something looks off? Reply to us on X @getGDW.