A minimalistic MCP server demonstrating tools, resources, and prompts
Single well-defined calculator tool with complete schema, clear description, and proper parameter annotations. Naming follows verb-noun convention ('calculator' is noun-like but acceptable for domain context). Description is concise (34 chars) but adequate. Input schema uses Zod with full type definitions and per-parameter descriptions. Error handling for division by zero demonstrates defensive programming. However, tool is trivial (arithmetic only), lacks real-world complexity, and the description could be more prescriptive about when/why to use it. Output format is text-only rather than structured. No multi-step composition patterns demonstrated. Server is a starter template, not a production-grade tool ecosystem.
Perform basic arithmetic operations
Tool description lacks guidance on when/why to call this tool and what it returns. Currently just 'Perform basic arithmetic operations', could specify return format, supported range, or use cases.
Output is text-only ('text' type) rather than structured JSON. Should return {result: number, operation: string, a: number, b: number} for LLM-friendly parsing and chaining.
Single trivial tool limits demonstration of composition patterns (tool-chain, idempotent-operation). Starter template, but does not showcase how multiple tools would coordinate or how responses enable downstream calls.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 60 | <=2025-11-25 | v2 |
| 2026-03-09 | F | 38 | - | v1 |