An MCP server demonstrating tool registration and SSE transport with Express
Three tools with basic schemas but critical gaps in descriptions and parameter documentation. Tool descriptions are minimal (10-30 chars, well below the 194-char baseline). No parameter descriptions visible in schema definitions. The 'create-file' tool throws an unimplemented error, indicating incomplete development. Naming is acceptable (verb-noun pattern) but lacks clarity on distinctions. No output schemas documented. Error handling is absent, no recovery guidance or actionable error messages.
Create a file with content
Repeats given message
List files in a given directory
All tool descriptions are under 20 characters ('Repeats given message', 'List files in a given directory', 'Create a file with content'). Descriptions lack WHEN to use, prerequisites, and state-modification warnings.
No parameter descriptions visible in schema. Zod schema defines types but LLM cannot see parameter intent. E.g., 'path' parameter in list-files lacks format/constraint documentation (absolute vs relative? symlinks allowed? max depth?).
create-file tool implementation throws 'Something failed!' error unconditionally. Tool is non-functional and provides no recovery guidance. Error message does not tell LLM what to do next.
No output schemas documented. LLMs cannot plan downstream tool calls or extract structured data. Tool responses are text-only; no field definitions provided.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
list-files tool executes shell command 'ls -la' without input validation. Vulnerable to command injection if path contains shell metacharacters. No sanitization visible.