All four tools have minimal descriptions (10-20 chars) and parameter descriptions are completely absent (null). Input schemas are present with proper types (int/float) but lack parameter-level documentation. No error handling guidance, no output schema documentation, and no tool annotations. This is a bare-bones demo server with significant gaps against production baselines.
Add two numbers
Divide a by b
Multiply two numbers
Subtract b from a
All parameter descriptions are null. LLMs cannot infer what 'a' and 'b' represent without explicit descriptions.
Tool descriptions are 10-20 characters, below the 34-char p10 baseline. Descriptions lack context on when to use each tool and what they return.
No output schema documented. LLMs cannot plan downstream operations or know what fields to expect from results.
divide() accepts integer inputs but returns float. Type mismatch between input schema (int) and actual return type (float) will confuse LLMs.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 37 | 2026-07-28+ | v2 |
No error handling for divide-by-zero. Tool will crash with ZeroDivisionError instead of returning a user-friendly error message.