A mathematical operations server providing basic arithmetic functions
Math-server provides 5 simple arithmetic tools with basic schemas and minimal descriptions. All tools have input schemas with typed parameters (float) and descriptions, but descriptions are extremely terse (10-40 chars, well below the 50-200 char baseline for A+ tools). No output schemas documented. No error handling guidance beyond divide-by-zero check. Tools lack context about when to use them vs alternatives, and descriptions do not explain what the tool returns or its purpose in a multi-step workflow. Parameter descriptions are adequate but minimal. No tool annotations (readOnlyHint, idempotentHint). Overall structure is sound but quality is below production baseline.
Add two numbers
Divide two numbers
Multiply two numbers
Raise base to the power of exponent
Subtract two numbers
Tool descriptions are too terse (10-40 chars vs 50-200 char baseline). 'Add two numbers' lacks context about when to use add vs other tools, what it returns, or its role in workflows.
No output schemas documented. LLMs cannot infer what fields or types are returned, forcing them to guess about downstream tool compatibility.
No tool annotations (readOnlyHint, idempotentHint). All tools are read-only and idempotent, but this is not declared in the schema, forcing LLMs to infer safety properties.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 54 | 2026-07-28+ | v2 |
Error handling is minimal. Only divide() checks for division by zero; other tools have no validation or recovery guidance. Error messages should guide LLMs on next steps.
Parameter descriptions are minimal. 'First number' and 'Dividend' lack context about valid ranges, precision, or constraints. Numeric parameters should specify min/max bounds.