A remote MCP server providing calculator tools without authentication, deployed on Cloudflare Workers
Two tools with basic schemas and minimal descriptions. Both tools have input schemas with proper types (number, string enum), but descriptions are extremely short (10-40 chars) and lack context for LLM selection. No output schema documentation. Error handling present in 'calculate' (divide-by-zero) but not generalized. Tool names are action-oriented ('add', 'calculate') but lack verb_noun clarity. No parameter descriptions beyond type hints. Schemas visible and properly typed, but descriptions fall well below the 50-200 char baseline for A+ tools.
Simple addition tool
Calculator tool with multiple operations
Tool descriptions critically short (10-40 chars). 'Simple addition tool' and 'Calculator tool with multiple operations' lack context for LLM selection. Baseline is 50-200 chars; these are 1/5 the minimum. No explanation of WHEN to use each tool or WHAT they return.
No parameter descriptions. Input schema declares types (a: number, b: number, operation: enum) but provides no guidance on valid ranges, units, or constraints. LLMs cannot infer whether 'a' accepts negative numbers, decimals, or has bounds.
No output schema documented. Tools return text content but LLMs have no formal specification of response structure. Baseline: 100% of A+ tools document return types.
Tool naming lacks verb_noun clarity. 'add' and 'calculate' are generic; 'calculate_arithmetic' or 'perform_calculation' would better signal intent. 'add' conflicts with 'calculate' (which also adds), LLM must reason about which to use.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Error handling only in 'calculate' (divide-by-zero). No recovery guidance. Error message 'Cannot divide by zero' is user-friendly but does not tell the LLM what to do next (retry with different input, ask user, etc.).