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, 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 in code 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 for A+ tools is 50-200 chars with WHAT/WHEN/WHY guidance.
Parameter descriptions missing entirely. 'a', 'b', and 'operation' have type hints but no descriptions explaining what they control or valid ranges. LLMs cannot infer parameter meaning from names alone.
Output schema not documented. Tools return text content but no schema specification for downstream tool chaining or LLM planning. Baseline: 100% of A+ tools document return types.
Tool naming lacks verb_noun clarity. 'add' and 'calculate' are generic; 'perform_addition' and 'perform_calculation' would better signal intent. Current names risk LLM confusion when many tools are available.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 45 | 2026-07-28+ | v2 |
Error handling only in 'calculate' (divide-by-zero). No recovery guidance. Error message 'Cannot divide by zero' lacks actionable next steps for the LLM. Baseline: errors must tell LLM what to do next.