Search / io.github.mskry/diagrams-mcp-server
Diagrams MCP
not classifiedGenerate cloud architecture diagrams, flowcharts, and sequence diagrams.
v0.1.2 · active · repository · descriptor JSON · versions
Search / io.github.mskry/diagrams-mcp-server
Generate cloud architecture diagrams, flowcharts, and sequence diagrams.
v0.1.2 · active · repository · descriptor JSON · versions
{
"mcpServers": {
"diagrams-mcp-server": {
"type": "http",
"url": "https://diagrams-mcp-production.up.railway.app/mcp"
}
}
}claude mcp add --transport http diagrams-mcp-server https://diagrams-mcp-production.up.railway.app/mcp[mcp_servers.diagrams-mcp-server]
url = "https://diagrams-mcp-production.up.railway.app/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"diagrams-mcp-server": {
"type": "remote",
"url": "https://diagrams-mcp-production.up.railway.app/mcp",
"enabled": true
}
}
}{
"mcpServers": {
"diagrams-mcp-server": {
"type": "http",
"url": "https://diagrams-mcp-production.up.railway.app/mcp"
}
},
"deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=diagrams-mcp-server&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vZGlhZ3JhbXMtbWNwLXByb2R1Y3Rpb24udXAucmFpbHdheS5hcHAvbWNwIn0%3D"
}{
"servers": {
"diagrams-mcp-server": {
"type": "http",
"url": "https://diagrams-mcp-production.up.railway.app/mcp"
}
}
}{
"mcpServers": {
"diagrams-mcp-server": {
"httpUrl": "https://diagrams-mcp-production.up.railway.app/mcp"
}
}
}extensions:
"diagrams-mcp-server":
enabled: true
name: "diagrams-mcp-server"
type: streamable_http
uri: "https://diagrams-mcp-production.up.railway.app/mcp"
timeout: 300
protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28protocol.statelessonly applies to 2026-07-28 serversprotocol.transportstreamable HTTPprotocol.list_ttlonly applies to 2026-07-28 serversauth.prm, auth.as_metadata, auth.cimdno remote uses OAuthauth.secret_in_urlno templated URLtools.descriptionsevery tool has a descriptiontools.description_length1 tools have descriptions over 1,024 characters, which crowds the contexttools.schemasevery tool has an object input schematools.annotations9 of 9 tools declare readOnlyHint or destructiveHinttools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: list_providers (destructiveHint, openWorldHint); render_diagram (destructiveHint, idempotentHint, openWorldHint); list_nodes (destructiveHint, openWorldHint); …tools.token_costabout 1,849 tokens to load every tooltools.api_dumptools are not a one-to-one API dumpstability.changesno tool changes in 30 daysstability.rug_pullno tool changed its meaning under the same namedeps.known_vulnsno known advisory in 79 resolved packagesdeps.mcp_sdk_versionmcp 1.30.0, no known advisorydeps.resolvable[email protected] resolved: 79 packagesNo tool definition changes recorded. A server's first observation is its baseline; later probes record what changes.
Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.
+repository -unreachable(11 failures) -stale-192d
Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.
[email protected] PyPI78 dependencies, resolved · MCP SDK mcp 1.30.0 · advisories checked 2026-10-19
No known advisory affects this dependency graph.
Dependency graphs from deps.dev; advisories from OSV.dev, including the GitHub Advisory Database and the PyPI Advisory Database; all CC BY 4.0. The graph is what a clean install of this version resolves today; nothing was installed or run. How it is checked.
| remote | auth | reachable | uptime 30d | p50 | protocol | last ok |
|---|---|---|---|---|---|---|
https://diagrams-mcp-production.up.railway.app/mcp streamable-http | none | no (11 failures) | 65% | 473 ms | 2025-11-25 | 2026-09-24 |
| package | registry | version | runtime | secrets |
|---|---|---|---|---|
diagrams-mcp-server | pypi | 0.1.2 | – |
find_equivalentread-only | 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. |
list_categoriesread-only | 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. |
list_nodesread-only | 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). |
list_providersread-only | 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. |
list_servicesread-only | List service categories for a provider (e.g. 'aws' -> ['compute', 'database', ...]). Args: provider: Provider name from list_providers (e.g. 'aws', 'gcp', 'k8s'). |
render_diagramread-only | 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_mermaidread-only | 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_plantumlread-only | 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. |
search_nodesread-only | 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. |
Schemas: list_tools.
{
"name": "io.github.mskry/diagrams-mcp-server",
"title": "Diagrams MCP",
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"remotes": [
{
"url": "https://diagrams-mcp-production.up.railway.app/mcp",
"type": "streamable-http"
}
],
"version": "0.1.2",
"packages": [
{
"version": "0.1.2",
"transport": {
"type": "stdio"
},
"identifier": "diagrams-mcp-server",
"registryType": "pypi"
}
],
"repository": {
"url": "https://github.com/ByteOverDev/diagrams-mcp",
"source": "github"
},
"description": "Generate cloud architecture diagrams, flowcharts, and sequence diagrams."
}