mcpbeat

Diagrams MCP Server

io.github.mskry/diagrams-mcp-server
answering

Diagrams MCP is answering right now. Last checked 4 min ago. 141 installs a week from pypi. It exposes 9 tools. Last commit 18 Jun 2026.

Generate cloud architecture diagrams, flowcharts, and sequence diagrams.

Installs per day peak 75 · avg 27 · -33% w/w
a month agotoday
Uptime history 39 hours of history
39 hours agonow
100.0%
Uptime 24h
91 of 91 checks
9
Tools
read from the server
204 ms
Response time
average over 24h
141
Installs / week
npm and PyPI

Connect this server

Endpoint below is the one we actually reach during checks — not the one copied from a README. Last verified 4 min ago.

run in your terminal
claude mcp add diagrams-mcp-server --transport http https://diagrams-mcp-production.up.railway.app/mcp
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "diagrams-mcp-server": {
      "url": "https://diagrams-mcp-production.up.railway.app/mcp"
    }
  }
}
~/.codex/config.toml
[mcp_servers.diagrams-mcp-server]
url = "https://diagrams-mcp-production.up.railway.app/mcp"
.cursor/mcp.json
{
  "mcpServers": {
    "diagrams-mcp-server": {
      "url": "https://diagrams-mcp-production.up.railway.app/mcp"
    }
  }
}
.vscode/mcp.json
{
  "mcpServers": {
    "diagrams-mcp-server": {
      "url": "https://diagrams-mcp-production.up.railway.app/mcp"
    }
  }
}

Available tools 9

Read directly from the server with tools/list, grouped by what they act on. If a tool disappears, we record the date.

render
render_diagram
Render a mingrammer/diagrams Python snippet to PNG and return the image. The code must be a complete Python script using `from diagrams import ...` imports and a `with Diagram(...)` context manager block. Use search_nodes to verify node names and get correct import paths before writing code. Read the diagrams://reference/diagram, diagrams://reference/edge, and diagrams://reference/cluster resources for constructor options and usage examples. Args: code: Full Python code using the diagrams library. filename: Output filename without extension. format: Output format — ``"png"`` (default), ``"svg"``, or ``"pdf"``. download_link: If True, return a temporary download URL path (/images/{token}) that expires after 15 minutes; if False, return inline image bytes. Defaults to True (URL) — set ``DIAGRAMS_INLINE_DEFAULT=true`` on the server to flip the default. SVG/PDF and PNGs larger than the inline limit always use a download link.
render_mermaid
Render a Mermaid diagram definition and return the image with metadata. The definition should be valid Mermaid syntax (e.g. flowchart, sequence, class, ER, state, or Gantt diagram). Returns a list of content blocks: the rendered image plus a JSON text block with metadata including a mermaid.live edit link for opening the diagram in a browser editor. Args: definition: Mermaid diagram definition text. filename: Output filename without extension. format: Output format — ``"png"`` (default), ``"svg"``, or ``"pdf"``. download_link: If True, return a temporary download URL path (/images/{token}) that expires after 15 minutes; if False, return inline image bytes. Defaults to True (URL) — set ``DIAGRAMS_INLINE_DEFAULT=true`` on the server to flip the default. SVG/PDF and PNGs larger than the inline limit always use a download link.
render_plantuml
Render a PlantUML diagram definition and return the image. The definition should be valid PlantUML syntax wrapped in @startuml/@enduml (sequence, class, component, activity, state, deployment, etc.). Args: definition: PlantUML diagram definition text. filename: Output filename without extension. format: Output format — ``"png"`` (default) or ``"svg"``. PDF is not supported (requires Batik/FOP). download_link: If True, return a temporary download URL path (/images/{token}) that expires after 15 minutes; if False, return inline image bytes. Defaults to True (URL) — set ``DIAGRAMS_INLINE_DEFAULT=true`` on the server to flip the default. SVG and PNGs larger than the inline limit always use a download link.
nodes
list_nodes
List available node classes for a provider.service combo. Args: provider: Provider name (e.g. 'aws', 'gcp', 'k8s'). service: Service category (e.g. 'compute', 'database', 'network'). Returns: List of nodes with keys: name, import, alias_of (optional).
search_nodes
Search for diagram nodes by keyword across all providers and services. For targeted browsing when you know the provider, use list_providers -> list_services -> list_nodes instead. Args: query: Search term (case-insensitive substring match). Returns: List of matching nodes with keys: node, provider, service, import, alias_of (optional). Sorted by relevance: exact match first, then prefix, then substring.
categories
list_categories
List all infrastructure role categories with their mapped nodes. Use this to browse all available equivalence mappings, or to disambiguate node names when find_equivalent reports ambiguity. Returns a list of category dicts, each with: category (str): Category identifier (e.g. 'virtual_machine'). description (str): Human-readable description. providers (list[str]): Providers covered by this category. nodes (dict): Mapping of provider → list of node names in that category.
equivalent
find_equivalent
Find cross-provider equivalents for a diagram node by infrastructure role. Given a node name (e.g. 'EC2', 'Lambda', 'ComputeEngine'), returns the infrastructure role category it belongs to and the equivalent nodes from other providers. If a node name is ambiguous, use list_categories to see all mapped roles and pick a provider-specific node name. Args: node: Node class name to look up (case-insensitive, e.g. 'EC2', 'lambda'). target_provider: Optional provider to filter equivalents to (e.g. 'gcp', 'azure', 'aws'). If omitted, all equivalents across all other providers are returned. Returns: A dict with keys: category (str): Infrastructure role category name. description (str): Human-readable description of the category. source (dict): The matched node with keys node, provider, service, import. equivalents (list[dict]): Equivalent nodes, each with keys node, provider, service, import.
providers
list_providers
List all available diagram providers (aws, gcp, azure, k8s, onprem, etc.). Use list_providers -> list_services -> list_nodes to browse available node types for a specific provider.
services
list_services
List service categories for a provider (e.g. 'aws' -> ['compute', 'database', ...]). Args: provider: Provider name from list_providers (e.g. 'aws', 'gcp', 'k8s').

Endpoints

URLTransportStateLatencyChecked
https://diagrams-mcp-production.up.railway.app/mcp streamable-http answering 221 ms 4 min ago

Diagrams MCP — questions

Answers built from our own checks of this server.

What can Diagrams MCP do?
It exposes 9 tools, read directly from the server on our last check. Among them: find_equivalent, list_categories, list_nodes, list_providers, list_services, render_diagram and 3 more. The full list with descriptions is on this page — we take it from the server itself via tools/list, not from a README. How MCP servers expose tools in the first place →
What is Diagrams MCP mostly used for?
Its tools cluster around render and nodes. That is what this server is built to work with — the grouping comes from the actual tool names, not from a category we assigned.
Is Diagrams MCP working right now?
We send a real MCP handshake every 15 minutes. Over the last 24 hours 91 of 91 checks got a reply (100.0%), average response time 204 ms. The bar chart above shows every period we have measured.
How do I connect Diagrams MCP?
Copy the ready config from this page — we generate it for Claude Code, Claude Desktop, Codex, Cursor and VS Code, each with the file path that client actually reads. It is a remote server, so there is nothing to install — the client connects to the address.
Does Diagrams MCP need an API key?
No. Diagrams MCP completed a full MCP handshake with us as an anonymous client and listed its tools without asking for anything. All 9 of them are readable on this page. This is what we observed, not what the docs claim.
How fast is Diagrams MCP?
It answers our handshake in 204 ms on average, which is faster than 62% of all working MCP servers we measure. The comparison comes from our own checks across the whole registry, every 15 minutes.
How many people use Diagrams MCP?
The pypi package diagrams-mcp-server was installed 141 times in the last week. Week over week that is -33%. We show installs rather than GitHub stars on purpose: a star is a bookmark, an install is someone actually running it.
Is Diagrams MCP open source?
Yes — written in Python and 3 stars on GitHub. The source link is on this page, so you can read exactly what it does with your data before you connect it.