Two tools with clear verb-noun naming (get_alerts, get_forecast) and basic parameter schemas using Zod. Descriptions are present but minimal (10-40 chars). Parameters have type constraints (latitude/longitude bounds, state length) but lack depth. No output schema documentation. Error handling returns text responses but lacks actionable recovery guidance. Missing parameter descriptions for some fields and no documentation of response structure.
Get weather alerts for a state
Get weather forecast for a location
Tool descriptions are too brief (10-40 chars). 'Get weather alerts for a state' and 'Get weather forecast for a location' lack context on when to use each tool, what data is returned, or prerequisites. Baseline for A+ tools is 50-200 chars with WHAT/WHEN/WHY guidance.
No output schema documented. Callers cannot predict response structure (AlertFeature fields, ForecastPeriod fields, pagination). LLMs must infer from unstructured text responses, risking parsing errors and wasted tokens.
Error responses are generic text ('Failed to retrieve alerts data', 'This location may not be supported by the NWS API'). No actionable recovery guidance. LLM cannot determine if error is retryable, user-fixable, or fatal.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 47 | 2026-07-28+ | v2 |
Parameter 'state' in get_alerts lacks description beyond constraint. What format? What happens if invalid? No enum of valid state codes provided, forcing LLM to guess or hallucinate values.
No pagination support. If alerts or forecast periods exceed reasonable limits, entire result is returned, bloating context. No limit parameter, no cursor, no total count.