Python SDK for Gopher MCP - AI Agent orchestration framework with native performance. Includes example MCP servers and authentication support.
Critical structural issues prevent a higher score. The repository is labeled 'Gopher MCP Python' but the tool definitions provided are from TypeScript/JavaScript example servers (server3001, server3002) in a Node.js context, not Python MCP servers. The actual Python server implementation is not provided in the source code excerpt, only configuration files (pyproject.toml, requirements.txt) for an auth example are visible. Without access to the actual Python MCP server implementation, tool definitions, and registration code, meaningful evaluation of definition quality is impossible. The 5 tools listed appear to be inferred from example servers that may not be part of the actual deliverable. Tools lack proper descriptions (weather tools are 1-3 words), parameters lack constraint documentation, output schemas are not visible, and error handling guidance is absent.
Generate a secure password
Get weather forecast for a city
Get current time for a timezone or city
Get current weather for a city
Get weather alerts for a region
Source code mismatch: Repository claims to be 'Gopher MCP Python' but tool definitions appear to come from TypeScript example servers (server3001/server3002 in Node.js). No actual Python MCP server implementation visible in provided code.
Insufficient tool descriptions: 'Get current weather for a city' (29 chars) is below the actionable minimum of 50 chars. Description must answer WHAT, WHEN to use, and any prerequisites. Current descriptions lack context for LLM tool selection.
Missing parameter descriptions: 'city', 'days', 'region', 'location', 'length' parameters lack constraint documentation. Parameter 'days' has min/max in schema (1-7) but description should state 'Days forecast (1-7)'. LLMs cannot read JSON Schema min/max, they rely on text descriptions.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
No output schema documentation: Response structure for all 5 tools is not visible. LLMs need to know what fields to expect in responses so they can plan downstream calls and extract data correctly.
No error handling guidance: Tools lack recovery guidance. If 'city' is invalid, does it return a list of suggestions? A 404? Tools must tell LLMs what to do next via actionable error messages.
Parameter 'location' is ambiguous: 'Timezone (e.g., "UTC", "America/New_York") or city name' creates type confusion. Split into 'timezone' and 'city' parameters, or add enum constraints for valid timezones.
Tool composition risk: generate-password has optional parameters (all required:[] is empty). Without defaults, LLM must reason about which combinations to use. Provide sensible defaults: includeUppercase=true, includeLowercase=true, includeNumbers=true, includeSymbols=false.