Weather MCP Server providing access to US National Weather Service data
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 (lat/lon bounds, state length) but lack depth. Output is unstructured text rather than typed objects. No error recovery guidance, no pagination, no output schema documentation. Schemas are visible and properly constrained, but descriptions fall short of LLM-optimization standards (target 50-200 chars per pattern:tool-description).
Get weather alerts for a state
Get weather forecast for a location
Descriptions are too brief (10-40 chars). LLMs need 50-200 char descriptions explaining WHAT, WHEN, and any prerequisites. Current descriptions lack context for tool selection.
Output is unstructured plain text. No documented output schema. LLMs cannot parse results reliably or chain to downstream tools. Should return typed objects with fields like alert_id, severity, headline, area.
No error recovery guidance. Errors return plain text ('Failed to retrieve alerts data') without actionable next steps. Should guide LLM: 'State code invalid. Try a valid 2-letter code (CA, NY, TX).'
get_alerts lacks pagination. No limit parameter, no total count in response. If a state has 100+ alerts, all are returned, bloating context and degrading LLM reasoning.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Parameter descriptions are minimal. 'Latitude of the location' and 'Two-letter state code' lack format hints, valid ranges, or examples. Should state: 'Two-letter US state code (e.g., CA, NY, TX). Must be uppercase.'