MCP server that provides weather forecast data for US locations using the National Weather Service API
Single tool 'get_forecast' has a clear action verb and basic schema, but lacks critical depth. Description is minimal (34 chars, below 50-200 char baseline for LLM optimization). Parameters have types but lack format/range constraints and dependency documentation. No output schema documented. Error handling returns text blobs without recovery guidance. Tool does not follow composition patterns for multi-step weather workflows.
Get weather forecast for a location
Description too short (34 chars). LLM cannot determine when to use this tool vs alternatives or what it returns. Baseline: 50-200 chars for LLM optimization.
No output schema documented. LLM cannot plan downstream operations or extract structured data. Must document: forecast periods array, temperature, wind, conditions, timestamps.
Parameters lack format/range constraints. Latitude/longitude accept any number; should specify valid ranges (-90 to 90, -180 to 180) and precision (e.g., 4 decimal places). No enum or pattern validation.
Error responses are unstructured text without recovery guidance. 'Failed to retrieve grid point data' tells LLM nothing actionable. Should categorize as retryable vs user-fixable and suggest next steps.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 39 | <=2025-11-25 | v2 |
No pagination or result limits documented. If forecast returns 100+ periods, response bloats context window. Should cap at 10-20 periods and document in description.