A demonstration MCP server with OAuth 2.0 authentication and a simple arithmetic tool, deployed on Cloudflare Workers
Single tool 'add' has a valid schema with typed parameters (a, b as numbers) and basic descriptions. However, the tool description is trivial (10 chars: 'Adds two numbers together'), falling well below the 34-char minimum baseline for production tools. Parameter descriptions are minimal but present. No output schema is documented. The tool performs a simple arithmetic operation with no error handling, recovery guidance, or context about when/why to use it. This is a demo/test tool, not production-grade.
Adds two numbers together
Tool description is too short (10 chars). Minimum baseline is 34 chars; production tools average 194 chars. Current description 'Adds two numbers together' provides no context for when/why an LLM should call this tool.
No output schema documented. LLMs cannot infer what fields the response contains or plan downstream tool calls. Must document return type (e.g., {result: number}).
No error handling or recovery guidance. If inputs are invalid (non-numeric), the tool provides no actionable error message to guide the LLM to self-correct.
Tool name 'add' lacks a verb prefix. Naming convention should be 'add_numbers' or 'calculate_sum' to match verb_noun pattern (e.g., send_email, get_user) and improve LLM intent parsing.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 38 | 2026-07-28+ | v2 |
No parameter constraints (min/max for numeric inputs). Unbounded numbers allow LLMs to pass absurd values (e.g., 1e308) that may cause overflow or unexpected behavior.