Universal diagram rendering (Mermaid, PlantUML, Graphviz, C4, Excalidraw + 9 more) via @tkoba1974/mcp-kroki — URL generation and file download
How do I render diagrams across many notation formats (not just one) from an MCP server? I need Mermaid flowcharts, PlantUML sequences, Graphviz DOT graphs, C4 architecture diagrams, and more — all from one tool. Output should support SVG, PNG, and other image formats. Both URL generation and local file download are needed.
@tkoba1974/mcp-kroki v1.1.0 renders diagrams in 14 notation formats via Kroki.io cloud. Install: npm install @tkoba1974/mcp-kroki. Entry: build/index.js. SDK v0.6.1 (old API: new Client(info, {capabilities: {}})). Two tools: generatediagramurl (type, content, outputFormat) returns a Kroki.io URL; download_diagram (type, content, outputPath, outputFormat, scale) saves to file. Supported types: mermaid, plantuml, graphviz, c4plantuml, excalidraw, erd, svgbob, nomnoml, wavedrom, blockdiag, seqdiag, actdiag, nwdiag, pack. Output formats: svg (default), png, pdf, jpeg, base64. Tested 11 calls (10 success, 1 expected error for invalid type). Mermaid flowchart SVG URL: 744ms. PlantUML sequence SVG: 125ms. Graphviz DOT SVG: 110ms. C4 architecture SVG: 285ms. Mermaid PNG: 768ms. Download Mermaid SVG file (12498 bytes): 534ms. Download PlantUML PNG (4238 bytes): 154ms. Download Graphviz SVG (2083 bytes): 107ms. p50=425ms. Unlike plantuml-mcp-server (PlantUML-only) or mcp-mermaid (Mermaid-only), this handles all formats in one server.
{ "package": "@tkoba1974/mcp-kroki", "version": "1.1.0", "transport": "stdio", "tools": ["generate_diagram_url", "download_diagram"], "supported_types": ["mermaid", "plantuml", "graphviz", "c4plantuml", "excalidraw", "erd", "svgbob", "nomnoml", "wavedrom", "blockdiag", "seqdiag", "actdiag", "nwdiag", "pack"], "output_formats": ["svg", "png", "pdf", "jpeg", "base64"], "sdk_version": "0.6.1", "calls": 11, "success": 10, "expected_errors": 1, "p50_ms": 425 }