A Kotlin-based MCP server template demonstrating tools, resources, and prompts with support for STDIO and SSE transports
Single tool with basic schema and minimal description. Tool name 'Hello Tool' lacks action verb (should be 'greet_user' or similar). Description is only 12 characters ('Says hello!'), below the 20-char minimum for meaningful LLM guidance. Input schema is present with proper type (string) but parameter 'name' lacks description entirely. No output schema documented. No error handling, validation, or recovery guidance. Tool is trivial (echo input) and does not demonstrate production-grade patterns.
Says hello!
Tool name 'Hello Tool' does not start with action verb. Should be 'greet_user', 'send_greeting', or similar to signal intent to LLM.
Tool description 'Says hello!' is only 12 characters, below 20-char minimum. LLM cannot determine when/why to select this tool. Expand to explain purpose, when to use, and what it returns.
Parameter 'name' has no description. LLM cannot infer what format is expected (full name, username, email, etc.). Add description like 'The user's full name or username'.
No output schema documented. LLM does not know what fields to expect in the response or how to chain this tool with others.
No error handling or validation. Tool returns raw input as output without validation, error messages, or recovery guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |