An MCP server for DxSure project with calculator and currency conversion tools
Two tools with basic schemas and minimal descriptions. Both tools have input schemas with typed parameters and descriptions, meeting baseline requirements. However, descriptions are extremely brief (10-13 words), falling below the 50-200 char LLM-optimized range. No output schemas documented. No error handling guidance. No tool annotations. The 'convertCurrency' tool makes an external API call but lacks timeout, retry, or failure recovery guidance. Tool names lack action verbs ('add' is acceptable; 'convertCurrency' uses camelCase instead of snake_case convention). No composition guidance or chaining IDs documented.
Add two numbers
Convert an amount from one currency to another using a public API
Descriptions are critically short (10-13 words). LLMs need 50-200 char descriptions explaining WHAT the tool does, WHEN to use it, and any prerequisites. Current descriptions lack context for tool selection.
No output schema documented. LLMs cannot plan downstream calls or extract required data without knowing what fields to expect. Both tools return text content but structure is undocumented.
convertCurrency lacks error recovery guidance. Tool calls external API but returns generic error messages ('Failed to fetch', 'No conversion result') without actionable next steps for the LLM.
Tool naming convention inconsistent. 'add' uses lowercase verb; 'convertCurrency' uses camelCase. MCP convention is snake_case (convert_currency). Inconsistency confuses LLM tool selection.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | <=2025-11-25 | v2 |
No tool annotations present. Tools lack readOnlyHint, destructiveHint, or idempotentHint. LLMs cannot determine which tools are safe to retry or have side effects.