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), 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 are action-oriented (add, calculate) but lack verb_noun clarity. No parameter descriptions beyond type hints. No composition guidance or chaining IDs. Schemas are present but sparse.
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. Should explain WHAT, WHEN, and WHAT IT RETURNS (50-200 char baseline).
No parameter descriptions. Parameters 'a', 'b', 'operation' have types but no guidance on valid ranges, formats, or constraints. LLMs cannot infer meaning from names alone.
No output schema documented. Callers cannot predict response structure. Should document that both tools return {content: [{type: 'text', text: string}]}.
Minimal error handling. Only 'calculate' checks divide-by-zero; 'add' has none. No guidance for LLM on recovery. Error messages should state what went wrong and suggest next steps.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 44 | 2026-07-28+ | v2 |
Tool naming lacks verb_noun clarity. 'add' and 'calculate' are generic. 'calculate' overlaps with 'add' (both can add). Should be 'perform_arithmetic' or split into 'add_numbers', 'subtract_numbers', etc. for clarity.