Educational repository demonstrating MCP (Model Context Protocol) server implementations across multiple examples: DocumentMCP (document management), VidsMCP (video conversion with roots), notifications server, sampling server, and HTTP transport server
This multi-server repository exhibits severe definition quality gaps across all 8 tools. Most tools lack descriptions entirely (add, summarize) or have minimal ones. Input schemas are present but parameter descriptions are sparse or missing. Tool naming is inconsistent: 'add' appears twice with identical signatures, violating the single-responsibility principle. The 'edit_document' tool lacks output schema documentation. No error handling guidance, no pagination support for list_roots/read_dir, and no security considerations for file operations. The repository appears to be educational material rather than production-grade tooling.
Convert an MP4 video file to another format using ffmpeg
Edit a document by replacing a string in the documents content with a new string.
List all directories that are accessible to this server. These are the root directories where files can be read from or written to.
Read directory contents. Path must be within one of the client's roots.
Read the contents of a document and return it as a string.
Duplicate tool 'add' defined in both notifications/server.py and sampling/server.py with identical signatures. Violates single-responsibility principle and creates ambiguity for LLM tool selection.
Two tools (add, summarize) have NO descriptions at all. LLMs cannot determine when or why to select these tools. Violates pattern:tool-description baseline requiring 100% coverage.
Parameter descriptions are missing or minimal across all tools. E.g., 'doc_id' in read_doc_contents lacks context; 'path' in read_dir lacks format/constraint guidance. Baseline: 100% of A+ tools have param descriptions.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
No output schemas documented for any tool. LLMs cannot plan downstream calls or extract required fields. Baseline: 100% of A+ tools have documented return types.
File operation tools (read_dir, edit_document, convert_video) lack error handling guidance and security context. No mention of path traversal validation, permission checks, or recovery steps.