A simple MCP server providing calculator tools with addition and multi-operation arithmetic
Two tools with basic schemas and minimal descriptions. Both tools have input schemas with proper types (number, string enum), but descriptions are extremely brief (10-15 chars), falling well below the 50-200 char baseline for LLM-optimized descriptions. No output schemas documented. Error handling is minimal (divide-by-zero check in 'calculate' only). Tool names lack action verbs ('add' and 'calculate' are weak; 'perform_addition' and 'perform_calculation' would be clearer). No parameter descriptions beyond type info. No guidance on when to use one tool vs. the other.
Simple addition tool
Calculator tool with multiple operations
Descriptions are critically short (10-15 chars). 'Simple addition tool' and 'Calculator tool with multiple operations' lack context for LLM selection. Should explain WHEN to use each tool, WHAT they return, and any prerequisites.
No output schema documented. LLMs cannot plan downstream calls or extract structured data. Both tools return text content but no schema specifies the response structure.
Parameter descriptions missing. 'a' and 'b' parameters have no descriptions explaining what they represent or valid ranges. 'operation' enum has no description of what each operation does.
Tool naming lacks action verbs. 'add' and 'calculate' are generic. Verb_noun pattern (e.g., 'perform_addition', 'perform_arithmetic') would clarify intent and improve LLM disambiguation.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2026-07-28+ | v2 |
Minimal error handling. Only 'calculate' checks for divide-by-zero; 'add' has no validation. No guidance on what errors mean or how to recover. Error messages should be actionable.