An MCP server that provides weather data retrieval tools using the OpenWeather API, with support for geocoding and weather forecasting
This MCP server exhibits severe definition quality issues across all tools. There are 5 tool definitions, but they suffer from duplicate naming (two 'getWeather' tools with different schemas), vague descriptions lacking context, incomplete parameter documentation, and no visible output schema documentation. The tools lack descriptions explaining WHEN to use them, what they return, or their side effects. Parameter descriptions are present but minimal. No error handling guidance is visible in the definitions. This server appears to be an experimental/test implementation rather than production-grade.
Get weather data for a location
Get weather information for a location
Get weather data for a location
Get the latest weather data of your location
This is a test prompt
This is a test resource
Say hello to MCP server
Duplicate tool names (two 'getWeather' tools with different input schemas) create ambiguity. LLMs cannot distinguish between them or understand which schema applies to each variant.
Tool 'test_mcp' has a vague, unexplanatory name that does not start with an action verb or convey what it does. Likewise 'prompt_test' is unclear, these appear to be test stubs, not production tools.
Descriptions are minimal (25-40 chars) and lack context. E.g., 'Get weather data for a location' does not explain WHEN to use this vs alternatives, what data is returned, or prerequisites. Descriptions should be 50-200 chars for LLM clarity.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 0 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 30 | - | v1 |
No output schema is documented for any tool. LLMs cannot plan downstream tool calls or extract data if they don't know what fields are returned. Source code shows JSON responses but no formal schema.
Parameter 'limit' is typed as string but should be integer with min/max bounds. 'content' in test_mcp is typed as object but lacks nested schema definition. Parameter constraints are either missing or improperly typed.
No error handling guidance is visible. Tools do not document what happens on failure, how to recover, or what error messages look like. LLMs have no strategy for handling invalid cities, API failures, or malformed input.
test_mcp and prompt_test appear to be test/experimental tools, not production-ready. They have generic names, unclear purposes, and suggest this is a development server rather than a mature MCP implementation.