δΈζηζ¬ | English
A powerful tool for validating Mermaid diagrams with both CLI and MCP server capabilities. Perfect for developers, technical writers, and AI assistants who work with Mermaid diagrams.
# Validate a Mermaid file
npx mermaid-lint-mcp lint diagram.mmd
# Validate Mermaid code directly
npx mermaid-lint-mcp lint --code "graph TD; A-->B"
# Start MCP server for AI assistants
npx mermaid-lint-mcp server
# Get help
npx mermaid-lint-mcp --helpNo installation required! The tool will be downloaded automatically on first use.
- Pre-commit validation: Ensure all Mermaid diagrams in your codebase are valid
- CI/CD integration: Add diagram validation to your build pipeline
- Documentation quality: Catch syntax errors before publishing docs
- Content validation: Verify diagrams render correctly before publication
- Error debugging: Get clear error messages for syntax issues
- Real-time validation: Validate generated diagrams instantly
- MCP integration: Seamless integration with Claude Code, Cursor, Trae, and other AI tools
- Automated workflows: Enable AI to self-validate diagram outputs
- β Fast Validation: Optimized for speed with browser reuse and local libraries
- β Multiple Formats: Support for all Mermaid diagram types
- β Dual Interface: Both CLI tool and MCP server in one package
- β Error Details: Clear error messages with line numbers and suggestions
- β Timeout Control: Configurable validation timeouts
- β Zero Config: Works out of the box
No installation needed - just use npx mermaid-lint-mcp directly.
npm install -g mermaid-lint-mcp
# Then use: mermaid-lint-mcpnpm install mermaid-lint-mcp
# Then use: npx mermaid-lint-mcp# Validate a file
npx mermaid-lint-mcp lint diagram.mmd
npx mermaid-lint-mcp diagram.mmd # 'lint' is default
# Validate code string
npx mermaid-lint-mcp lint --code "graph TD; A-->B"
# With custom timeout (5 seconds)
npx mermaid-lint-mcp lint --timeout 5000 diagram.mmd
# Validate with file option
npx mermaid-lint-mcp lint --file diagram.mmd# Start server for AI assistant integration
npx mermaid-lint-mcp servernpx mermaid-lint-mcp --help # Show all commands
npx mermaid-lint-mcp --version # Show versionAdd to your claude_desktop_config.json:
{
"mcpServers": {
"mermaid-lint": {
"command": "npx",
"args": ["mermaid-lint-mcp", "server"]
}
}
}| Type | Syntax | Example |
|---|---|---|
| Flowchart | flowchart TD |
Decision trees, processes |
| Sequence | sequenceDiagram |
API interactions, workflows |
| Class | classDiagram |
Object relationships |
| State | stateDiagram-v2 |
State machines |
| ER | erDiagram |
Database schemas |
| Gantt | gantt |
Project timelines |
| Pie | pie |
Data visualization |
| Journey | journey |
User experiences |
| Git Graph | gitgraph |
Version control flows |
| ... | ... |
... |
interface ValidationOptions {
timeout?: number; // Timeout in milliseconds (default: 5000)
}# Set default timeout
export MERMAID_TIMEOUT=10000
# Enable debug logging
export DEBUG=mermaid-lint-mcp{
"isValid": true,
"error": null,
"diagramType": "flowchart"
}{
"isValid": false,
"error": "Parse error on line 8: ...> C E --> F[End ---------------------^ Expecting 'SQE', 'DOUBLECIRCLEEND', 'PE', '-)', 'STADIUMEND', 'SUBROUTINEEND', 'PIPE', 'CYLINDEREND', 'DIAMOND_STOP', 'TAGEND', 'TRAPEND', 'INVTRAPEND', 'UNICODE_TEXT', 'TEXT', 'TAGSTART', got '1'",
"diagramType": "flowchart"
}$ npx mermaid-lint-mcp lint --code "graph TD; A-->B"
π Validating Mermaid diagram...
β
Diagram is valid!
π Diagram type: flowchartSolution: Use npx mermaid-lint-mcp instead of mermaid-lint-mcp
Solution: Increase timeout with --timeout 10000
Solution: Run with appropriate permissions or use npx
MIT License - see LICENSE file for details.
- π Documentation
- π Report Issues
- π¬ Discussions
- Mermaid - Create diagrams with text
- Mermaid Live Editor - Online diagram editor
- Model Context Protocol - AI integration standard