A minimal protocol-correct MCP server using the official Python SDK
Single tool with minimal definition quality. Tool name 'hello_world' lacks action verb (should be 'greet_user' or similar). Description is adequate (47 chars) but generic. Input schema present with type and description for 'name' parameter. No output schema documented. No error handling guidance. Tool is READ_ONLY but lacks explicit annotation. Overall definition follows basic structure but falls short of production patterns.
Return a greeting from the quickstart server.
Tool name lacks action verb. 'hello_world' does not start with a verb (get_, create_, send_, etc.). Should be 'greet_user' or 'generate_greeting' to signal intent to LLM.
No output schema documented. Tool returns a string but LLMs cannot infer structure. Document return type explicitly (e.g., 'Returns: {greeting: string}').
No error handling guidance. Tool lacks recovery instructions if input is invalid or service fails. Add error classification and recovery hints.
Missing tool annotations. Tool is READ_ONLY but lacks explicit readOnlyHint annotation in schema. Add tool annotations for clarity.
Description is generic and lacks context. 'Return a greeting from the quickstart server' does not explain WHEN to use this tool or what makes it distinct from similar tools.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |