Implementation for a MCP weather server providing weather forecasts and alerts via the National Weather Service API
Two tools with basic schemas and minimal descriptions. Both tools have proper type definitions (double, string) and parameter descriptions, meeting baseline schema requirements. However, descriptions are extremely brief (under 100 chars each), lacking context on WHEN to use each tool, dependencies, or return value structure. No output schemas documented. No error handling guidance. Tool names follow verb_noun pattern correctly. Missing composition guidance, unclear how these tools relate or chain together. No pagination, no result limits documented despite weather alerts potentially returning large datasets.
Get weather alerts for a US state. Input is Two-letter US state code (e.g. CA, NY)
Get weather forecast for a specific latitude/longitude
Output schemas not documented. LLMs cannot plan downstream operations or extract specific fields from responses.
Descriptions under 100 characters lack context on WHEN to use each tool, what data is returned, or dependencies. Baseline for A+ tools is 194 chars average.
No pagination or result limit guidance for getAlerts. Weather alerts for a US state could return hundreds of items, risking context window exhaustion.
No error handling guidance. LLMs cannot determine if failures are retryable, user-fixable, or fatal (e.g., invalid state code, API timeout).
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
No tool composition guidance. Unclear if getWeatherForecastByLocation and getAlerts should be called together, or what the relationship is between latitude/longitude and state-based queries.