Skip to content

mermaid-chart-mcp

URL: https://mcp.mermaidchart.com/mcp Server: Mermaid Server v1.0.0 Date: 2026-06-26

  • Transport: HTTP POST with SSE (Server-Sent Events) responses
  • Session: Created via initialize call, returns mcp-session-id header (UUID)
  • Subsequent calls require Mcp-Session-Id header
  • Accept header must be application/json, text/event-stream
  • Server supports MCP protocol version 2024-11-05
  • tools with listChanged support
Tool Access Description
validate_and_render_mermaid_diagram RO Render Mermaid diagrams, returns image or error details
get_diagram_title RO Returns LLM prompts for title generation (see Notes)
get_diagram_summary RO Returns LLM prompts for summary generation (see Notes)
search_mermaid_icons RO Search AWS/Azure/GCP/FontAwesome icons for diagrams
get_mermaid_syntax_document RO Get full syntax docs for a specific diagram type
Tool Access Description
list_repos RO List repos for user or org
list_mermaid_files RO Find .mmd files in a repo
read_mermaid_file RO Read a .mmd file from a repo
create_pr RW Create branch + commit + PR with file changes
push_file RW Create/update a single file on a branch
list_pulls RO List pull requests
list_branches RO List or resolve branch names
list_issues RO List issues
create_issue RW Create an issue
get_issue_comments RO Get comments on an issue
get_pull_comments RO Get PR comments (thread + inline)
list_tools RO List all available MCP servers and tools
  • Every tool requires a clientName parameter (analytics tracking)
  • GitHub tools require Github-Token header or GITHUB_TOKEN env var
  • The server combines Mermaid diagram generation with GitHub repo operations
  • The validate_and_render_mermaid_diagram tool is the primary rendering entry point
  • Icon search supports AWS, Azure, GCP, and FontAwesome icon sets
  • Server returns base64-encoded PNG images in responses
  • Server provides preview/edit links for generated diagrams (shortened URLs)
  • get_diagram_title and get_diagram_summary do not generate titles/summaries themselves. They return system/user prompts for the client LLM to perform the generation. The rendered response includes the diagram content + the prompts.
  • validate_and_render_mermaid_diagram is the only Mermaid tool that performs actual work (rendering to PNG).
  • Every tool requires a clientName parameter — used for analytics tracking by MermaidChart.
  • GitHub tools require a Github-Token HTTP header (or GITHUB_TOKEN/GH_TOKEN env var on the server side).
  • Server is a third-party public service at MermaidChart.com — not part of the satware AG/IPADP ecosystem.
  1. Initialize session with initialize method
  2. Send notifications/initialized notification
  3. Use tools/list to discover available tools
  4. Call tools with tools/call method
Terminal window
# Initialize session
RAW=$(curl -s -D - -X POST 'https://mcp.mermaidchart.com/mcp' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2024-11-05","capabilities":{},"clientInfo":{"name":"hermes","version":"1.0"}}}')
SESSION_ID=$(echo "$RAW" | grep -i '^mcp-session-id:' | sed 's/^mcp-session-id: *//;s/\r$//')
# Send initialized notification
curl -s -X POST 'https://mcp.mermaidchart.com/mcp' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H "Mcp-Session-Id: $SESSION_ID" \
-d '{"jsonrpc":"2.0","method":"notifications/initialized"}' > /dev/null
# Render a diagram
curl -s -X POST 'https://mcp.mermaidchart.com/mcp' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-H "Mcp-Session-Id: $SESSION_ID" \
-d '{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"validate_and_render_mermaid_diagram","arguments":{"prompt":"Simple flowchart showing a decision process","mermaidCode":"flowchart TD\n A[Start] --> B{Is it working?}\n B -->|Yes| C[Great!]\n B -->|No| D[Fix it]\n D --> B","diagramType":"flowchart","clientName":"hermes","useUrlShortener":true}}}'