MCP (Model Context Protocol) server library for Rust — a pure protocol handler implementing the 2025-03-26 spec
This MCP server exhibits significant definition quality gaps across all six tools. While schemas are present and validly structured, descriptions are severely deficient (averaging 15-20 characters, well below the 194-character baseline), parameter descriptions are entirely absent, and tool naming lacks clarity. The server demonstrates basic protocol correctness but fails to meet production standards for LLM-facing tool design. Tools lack actionable guidance, context for selection, and parameter constraints that would help an LLM use them correctly.
Returns server configuration
echoes
Echoes the input message
Geocodes an address or performs reverse geocoding from coordinates
Greets a user with optional style parameter
Returns the caller's identity from JWT claims
Tool descriptions critically short (7 - 48 characters), far below 194-character baseline. Most fail the 20-character minimum threshold.
No parameter descriptions present across all tools. 'name', 'style', 'address', 'lat', 'lon', 'message' parameters lack any guidance on format, valid values, or constraints.
No output schemas documented for ANY tool. Tool responses (e.g., what fields 'whoami' returns, what 'geocode' returns) are invisible to the LLM.
Tool naming lacks verb clarity. 'echo', 'greet', 'config', 'whoami' are generic or colloquial; not verb_noun pattern (get_*, create_*, etc.).
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 45 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 36 | 2025-03-26+ | v1 |
Duplicate tool 'echo' registered in both basic_server.rs and cognito_server.rs with identical definitions.
No enum constraints documented for 'style' parameter in greet tool. Description mentions 'casual' and 'formal' but schema constraints not visible in descriptions.
No error handling guidance documented. Tools provide no indication of what to do on failure (retry? ask user? fatal?).
No rate limits, quotas, or prerequisites documented for tools that call external services (geocode may call mapping API, whoami reads JWT).