A Model Context Protocol server for analyzing text documents with word and character counting capabilities
Single tool with basic but incomplete definition. Tool name follows verb_noun pattern (analyze_text), which is correct. Description is present (51 chars) and explains the action adequately. Input schema has proper JSON Schema structure with type and description for the filePath parameter. However, critical gaps exist: (1) no output schema documented, LLM cannot predict returned fields; (2) error handling is minimal, errors return raw exception messages rather than actionable guidance; (3) no parameter constraints (no minLength, maxLength, or pattern for filePath); (4) missing information about what file formats are supported, expected file size limits, or line ending handling; (5) no explanation of what 'character count (excluding spaces)' means or why the tool returns three different counts instead of focusing on the most useful metrics.
Count words and characters in a text document
No output schema documented. LLMs cannot predict what fields are returned (words, characters, charactersNoSpaces, or others) and thus cannot chain this tool with downstream operations or extract results confidently.
Input parameter 'filePath' lacks constraints. No minLength, maxLength, pattern validation, or file format restrictions. Description does not specify: supported file types, maximum file size, required file permissions, or behavior on missing files.
Error handling returns raw exception messages (e.g., 'ENOENT: no such file or directory') instead of actionable guidance. LLM cannot determine if error is retryable, user-fixable, or fatal, and lacks context to suggest next steps.
Tool returns three metrics (words, characters, charactersNoSpaces) but lacks justification for why all three matter. Description should clarify: when would an LLM need character count without spaces? When is this preferable to word count?
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | F | 48 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 39 | - | v1 |
No mention of word-counting algorithm or edge cases. Does the tool handle contractions (don't = 1 or 2 words)? Hyphenated words? Numbers? Punctuation-only tokens? These details affect result reliability.