MCP server for interactive visual Mermaid diagram editing in Claude Code
This server has 3 tools with basic schemas and descriptions, but significant gaps prevent higher scoring. Tool names follow verb_noun pattern (show_diagram, get_diagram_feedback, close_diagram), which is good. However, descriptions lack LLM-optimized specificity, parameter descriptions are minimal, and output schemas are not documented. The server operates in STDIO mode, which impacts overall scoring. Descriptions exist but are between 100-200 chars, meeting minimum bars but lacking the precision expected in production tools. No parameter validation guidance, error classification, or recovery hints provided.
Close the diagram editor session. Returns the final Mermaid code (last submitted version, or original if never submitted). Shuts down the local HTTP server.
Poll for user's diagram edits. Returns 'submitted' with updated Mermaid code and a changes summary if the user has submitted, or 'pending' if they are still editing. Submission is one-shot: cleared after reading.
Display a Mermaid flowchart in a visual drag-and-drop editor. Opens a browser-based editor where the user can visually edit the diagram. Call get_diagram_feedback() afterwards to retrieve the user's changes.
Output schemas not documented. Tool descriptions state what is returned ('returns submitted with updated Mermaid code', 'returns final Mermaid code') but no formal output schema is provided. LLMs cannot infer the exact fields, types, or structure of responses.
Parameter descriptions are generic and lack actionable constraints. 'Mermaid flowchart code (e.g., "graph TD\n A[Start] --> B[End]")' includes an example value in the description, which LLMs may replicate literally. No validation rules, format specifications, or content guidelines provided.
get_diagram_feedback has no input parameters documented, yet the description mentions polling state ('pending' vs 'submitted'). No explanation of what fields are returned, how to interpret 'submitted' vs 'pending', or what 'changes summary' contains.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 51 | 2026-07-28+ | v2 |
No error handling or recovery guidance. Tools do not document what errors can occur (e.g., 'No active diagram session' is mentioned in code but not in the tool description) or how to recover. LLMs cannot self-correct.
get_diagram_feedback description mentions calling 'afterwards to retrieve user's changes' but does not clarify: Is polling continuous? What is the polling interval? How long are results cached? This ambiguity will lead to incorrect agent behavior.
No idempotency or side-effect documentation. show_diagram starts a server (a side effect); close_diagram shuts it down. No tool states whether it is safe to retry or idempotent. This is critical for agent planning.