An MCP server that fetches weather data by city name using the weatherstack API
Single tool with critical definition gaps. Tool name 'getWeatherBycityName' violates verb_noun convention (should be 'get_weather_by_city_name'). No tool description present. Parameter 'city' has null description (violates pattern:tool-description). No output schema documented. Error handling returns generic text without recovery guidance. Input schema exists but parameter lacks actionable description.
Tool description is completely missing. LLMs cannot determine when or why to select this tool without a description explaining its purpose, when to use it, and what it returns.
Parameter 'city' has null/missing description. LLMs cannot infer what format is expected (city name, code, coordinates?) or constraints (max length, special characters allowed?).
Tool name 'getWeatherBycityName' violates verb_noun convention. Should be 'get_weather_by_city_name' (snake_case with underscore separators). Current camelCase naming is inconsistent with MCP conventions.
No output schema documented. LLMs cannot plan downstream operations or extract relevant fields from the weather response. Response structure is opaque.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 33 | 2026-07-28+ | v2 |
Error handling returns generic 'Failed to retrieve weather data' without recovery guidance. LLM has no actionable next step (retry? check city name? try different API?). Violates pattern:recovery-guide.