A remote MCP server providing calculator tools without authentication
Two tools with basic schemas and minimal descriptions. Both tools have input schemas with typed parameters and enums (good), but descriptions are extremely short (10-40 chars), falling well below the 50-200 char baseline for LLM-optimized descriptions. No output schema documentation. No error handling guidance. Tool names lack action verbs ('add', 'calculate' are weak; 'perform_addition', 'execute_calculation' would be clearer). No parameter descriptions beyond type info. Divide-by-zero handling exists but error message is unstructured text, not actionable guidance.
Simple addition tool
Calculator tool with multiple operations
Tool descriptions are critically short (10-40 chars). 'Simple addition tool' and 'Calculator tool with multiple operations' lack context for LLM selection. Should explain WHEN to use each tool, what distinguishes them, and what they return.
No output schema documented. LLMs cannot plan downstream calls or extract structured data. Should document that both tools return a text field containing the numeric result.
Parameter descriptions missing. 'a' and 'b' parameters have no descriptions explaining what they represent. 'operation' enum has no description of valid values or when to use each operation.
Tool names lack action verbs. 'add' and 'calculate' are generic. Verb_noun pattern (e.g., 'perform_addition', 'execute_arithmetic') would clarify intent and improve LLM disambiguation.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Error handling is unstructured. Divide-by-zero returns plain text 'Error: Cannot divide by zero' instead of actionable guidance. Should return structured error with recovery hint.