Skip to main content
Glama

national-parks-mcp-server: get alerts

nps_get_alerts
Read-only

Current alerts for a park or a whole state — closures, hazards, caution notices, and information — with category and recency surfaced first so "is anything closed at Glacier right now?" is answered at a glance. Get park codes from nps_find_parks, or pass a stateCode for a statewide "what's closed" sweep. Returns most-recent-first; an empty result with totalCount 0 means the park reports nothing closed or hazardous — good news, not an error. An empty page with a non-zero totalCount only means start ran past the end, so read the notice rather than the empty list. Closures and road conditions change daily — re-check before departure.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoMaximum alerts to return (1–50), most-recent first.
queryNoFree-text search within alert titles/descriptions (e.g. "road", "wildfire", "trail").
startNoZero-based offset for pagination within the matched set. Use with limit to page through results — when totalCount exceeds what was returned, re-request with start advanced by limit.
categoryNoFilter to one alert category. "Danger" and "Park Closure" are the high-priority ones for trip safety. Applied locally (the API has no category param) across every alert matching parkCode/stateCode/query, then paginated with start/limit — so totalCount is the true count of matching alerts, not a per-page tally. Omit to see all categories (the default — closures and hazards should not be missed).
parkCodeNoPark code, or comma-separated list (e.g. "glac", "yose,zion") — 4-letter lowercase codes. Get codes from nps_find_parks. Provide parkCode or stateCode; with neither, returns recent alerts service-wide.
stateCodeNoTwo-letter state code, or comma-separated list (e.g. "MT", "WY,MT,ID"). Returns alerts for all NPS sites in those states — use for a statewide sweep rather than one park.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
capNoLimit applied (populated when results were truncated).
errorNoPresent when the call failed. Absent on success.
shownNoAlerts returned in this response (populated when capped by limit).
alertsNoCurrent alerts, sorted most-recent first. An empty array with totalCount 0 means no active alerts — good news, not an error; with a non-zero totalCount it means start paged past the end of the matches. The notice says which.
noticeNoMessage when the page is empty — states which case it is: good news (totalCount 0, the park reports nothing closed/hazardous right now) or a paging artifact (start ran past the end of a non-empty matched set).
totalCountNoTotal alerts matching the filter before the limit was applied.
appliedFiltersNoEcho of parkCode/stateCode/category/query as applied.
categoryBreakdownNoCount of returned alerts per category (e.g. "Park Closure: 3, Caution: 1, Information: 2") — gauge severity without scanning every alert.

TDQS

A4.6/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations (readOnlyHint=true, openWorldHint=true) already establish the safety profile; the description goes well beyond this. It discloses ordering ('most-recent-first'), the exact semantics of empty results vs. empty pages ('An empty page with a non-zero totalCount only means start ran past the end'), the local-filter behavior of category, and a real-world caveat ('Closures and road conditions change daily — re-check before departure'). No contradiction with annotations — the read-only, open-world hints align perfectly with the described behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The main purpose is front-loaded in the first sentence with the key use-case poised as a question. The three sentences each earn their place: purpose+recency priority, usage routing, and output semantics. Dense but not bloated for a 6-parameter tool with non-trivial pagination and filtering semantics. Slightly compresses the category-local-filter detail into the schema, which keeps the main description lean.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

An output schema exists, so no obligation to explain return values. The description covers purpose, input routing (park vs. state, service-wide fallback), result interpretation (empty = good news vs. empty page = pagination overrun), recency ordering, and a freshness warning. For a tool with this complexity — 6 params, pagination, local filtering, cross-tool dependency — nothing an agent needs to call it correctly is missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% (all 6 params described in schema with enums and defaults), so baseline is 3. The description adds real value beyond schema: it ranks category values ('Danger' and 'Park Closure' are the high-priority ones), explains that category filtering is applied locally vs. API-native, explains the meaning of totalCount under local filtering, and provides the nps_find_parks cross-reference for parkCode. This meaningful interpretation pushes it above baseline.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Specific verb ('get alerts') + resource (NPS alerts) + explicit scope ('for a park or a whole state') with the alert types enumerated (closures, hazards, caution notices, information). The sibling set (campgrounds, events, parks, activities) contains no alert tool, so the domain is auto-differentiated, and the description reinforces this by naming the exact resource. No ambiguity in what this tool does.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear when-to-use context: 'Get park codes from nps_find_parks, or pass a stateCode for a statewide sweep' names the concrete alternative for obtaining input. It also tells the agent how to interpret outcomes ('an empty result with totalCount 0 means... good news, not an error'), which guides decision-making. It doesn't explicitly state when NOT to use this tool versus an alternative, but sibling domains are separated so cleanly by topic that explicit exclusions would be redundant.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

TDQS

A4.4/5.0
Disambiguation5/5

Each tool targets a distinct domain resource: parks, park details, alerts, events, activities, and campgrounds. There is no overlap in purpose; an agent can unambiguously select the right tool for a query.

Naming Consistency5/5

All tools follow a consistent `nps_` prefix with a verb-noun pattern (`find_*` or `get_*`). The only minor variation is singular/plural nouns, but this is predictable and does not hinder understanding.

Tool Count5/5

Six tools is well-scoped for a national parks API, each covering a core aspect of trip planning (lookup, detail, alerts, events, activities, campgrounds). No tool feels redundant or unnecessary.

Completeness4/5

The surface covers primary trip-planning needs: finding parks, getting detailed info, checking alerts, seeing events, exploring activities, and finding campgrounds. Minor gaps like webcams or permits are non-essential, but the set is nearly complete.