Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, get in touch and we’ll put it right.

Diagrams.so

NPM · @DIAGRAMS-SO/MCP · SCANNED AUG 14

Generate and edit AWS, Azure, GCP and Kubernetes architecture diagrams as editable draw.io files.

Available components

+4 this week 75 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score →

Supply Chain Security98
  • No malware found by supply-chain analysis.Pass
  • No known CVEs affecting this package version or its production dependencies.Pass
  • No install/post-install scripts declared.Pass
  • 30 of 96 dependencies flagged as unhealthy. View diagnostics → Partial
Provenance & Transparency45
Schema Quality & AI Usability82
  • AI-judged instruction clarity (excellent).Pass
  • Tool/resource definitions use about 1894 tokens (~82/item across 23 items; 23 tools + 0 resources), lean.Pass
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management33
  • Stability observed for 10 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

npm · @diagrams-so/mcp

# add to Claude Code
claude mcp add redhold-diagrams-so-mcp -- npx -y @diagrams-so/mcp
# add to Codex CLI
codex mcp add redhold-diagrams-so-mcp -- npx -y @diagrams-so/mcp
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "redhold-diagrams-so-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "@diagrams-so/mcp"
      ],
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add redhold-diagrams-so-mcp --command npx --arg -y --arg @diagrams-so/mcp
# ~/.hermes/config.yaml
mcp_servers:
  redhold-diagrams-so-mcp:
    command: "npx"
    args: ["-y", "@diagrams-so/mcp"]
// mcp.json
{
  "mcpServers": {
    "redhold-diagrams-so-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@diagrams-so/mcp"
      ]
    }
  }
}
Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 14 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 30 to 33. That category is still filling its 30-day observation window: 9 days of observed history at the previous scan, 10 at this one. The score rises as the window fills, whether or not the server changes.

  • 12 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

  • 11 Aug 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 9 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 13 to 17. That category is still filling its 30-day observation window: 4 days of observed history at the previous scan, 5 at this one. The score rises as the window fills, whether or not the server changes.

  • 7 Aug 26 +43
    • Known CVEs: unverified → pass security
    • Tool coverage: unverified → 100 functional
    • Stability: unverified → 0.10 functional
    • MCP protocol: unverified → pass functional
    • Dependency health: unverified → 0.85 functional
    • First check of Tool coverage: 100 functional
    • First check of Schema quality: fail functional
    • First check of Schema quality: excellent functional
    • First check of Tool coverage: 98 functional
    • First check of Schema quality: pass functional
    • Package version: 1.4.4 → 1.4.5 functional
  • 6 Aug 26 −7
    • Known CVEs: partial → unverified security
    • Dependency health: partial → unverified functional
    • Package version: 1.4.2 → 1.4.4 functional
    • Package version: 1.4.2 → 1.4.3 functional
  • 5 Aug 26 0
    • Stability: Stability not yet verified: not enough scan history yet (needs a 30-day window). security
    • Tool coverage: unverified → 100 functional
    • MCP protocol: unverified → pass functional
    • First check of Schema quality: pass functional
    • First check of Tool coverage: 98 functional
    • First check of Schema quality: excellent functional
    • First check of Schema quality: fail functional
    • Package version: 1.4.1 → 1.4.2 functional
  • 4 Aug 26 35

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 14 Aug 2026 · Analysed npm/@diagrams-so/mcp@1.4.5

Provenance No attestation

The registry publishes no build provenance for this version, so there is nothing to verify.

Result No attestation
Ecosystem npm
Dependencies 96 packages
Packages resolved 96
Stale 30
Tree resolution Complete
MCP tools · 23 exposed · ~1,792 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
clarify_prompt ~42

Get 1–3 clarifying questions (and a suggested diagram type) for a vague prompt, before generating. Free.

NameTypeReqDescription
promptstringyesYour prompt

No output schema declared.

No examples provided.

delete_diagram ~55

Delete (soft-delete) a diagram you own. It stops appearing in list_diagrams and can no longer be fetched. Confirm with the user before calling — this is destructive.

NameTypeReqDescription
diagram_idstringyesThe diagram id

No output schema declared.

No examples provided.

edit_diagram ~89

Apply a natural-language change to an existing diagram (e.g. 'add a Redis cache'). Creates a new version and returns the updated XML. Costs credits. Confirm with the user before calling — it mutates the diagram.

NameTypeReqDescription
diagram_idstringyesThe id returned by generate_diagram / list_diagrams
edit_promptstringyesThe change to make, in plain language

No output schema declared.

No examples provided.

enhance_prompt ~63

Turn a rough idea into a detailed generation prompt. Free.

NameTypeReqDescription
cloud_providerstringaws | azure | gcp | kubernetes | oci | general — biases the enhanced prompt toward that provider's services
promptstringyesYour rough prompt

No output schema declared.

No examples provided.

export_diagram ~77

Export a diagram as a raw file: `drawio` (open at app.diagrams.net) or `svg`. Returns the file content directly. Exports are free on every plan. Free-plan SVG exports carry a watermark.

NameTypeReqDescription
diagram_idstringyesThe diagram id
formatstringdrawio or svg

No output schema declared.

No examples provided.

fix_warning ~106

Resolve a single Well-Architected warning (from get_warnings), leaving the rest of the diagram untouched. Creates a new version. Costs credits.

NameTypeReqDescription
componentstringThe warning's `component`, if any
diagram_idstringyesThe diagram id
messagestringyesThe warning's `message` (as returned by get_warnings)
warning_typestringThe warning's `type`, e.g. no_encryption_transit

No output schema declared.

No examples provided.

fork_template ~52

Copy a PUBLIC gallery diagram or curated library template into your own account (private) so you can edit it. Returns the new diagram id.

NameTypeReqDescription
diagram_idstringyesA public/library diagram id from search_gallery

No output schema declared.

No examples provided.

generate_diagram ~152

Create a new cloud architecture diagram from a natural-language prompt. Returns the diagram id, its draw.io XML, Well-Architected warnings, score, and credits used. Costs credits.

NameTypeReqDescription
cloud_providerstringaws | azure | gcp | kubernetes | oci | general (default: general)
diagram_typestringarchitecture | flowchart | sequence | data_pipeline | ... (default: architecture)
opinionatedbooleanApply best-practice hardening suggestions during generation (paid plans only).
promptstringyesWhat to draw, e.g. 'AWS 3-tier web app with ALB, EC2 Auto Scaling and RDS Multi-AZ'

No output schema declared.

No examples provided.

get_diagram ~41

Fetch a diagram by id — returns its title, draw.io XML, and Well-Architected score.

NameTypeReqDescription
diagram_idstringyesThe diagram id

No output schema declared.

No examples provided.

get_relayout_status ~81

Check the status of an async re-layout job started by relayout_diagram. Returns pending/done/failed; when done+applied it includes the re-laid XML + fresh warnings/score. Free.

NameTypeReqDescription
diagram_idstringyesThe diagram id
job_idstringyesThe job_id returned by relayout_diagram

No output schema declared.

No examples provided.

get_usage ~24

Show your current plan, credits remaining, and per-action cost estimates. Free.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

get_usage_history ~176

List how much credit each past task (generate/edit/fix/relayout) charged — newest first, with the diagram it touched and the surface (api/sdk/mcp) that ran it. Use this to answer 'how much did each task cost?'. Also shows a running tally of tasks performed in THIS session. Free (read-only).

NameTypeReqDescription
actionstringFilter to one task type.
cursorstringPagination cursor from a previous call's next_cursor.
diagram_idstringOnly tasks that touched this diagram.
limitintegerMax rows to return (default 20).
sincestringISO-8601 lower bound (inclusive).
sourcestringFilter to one surface.
untilstringISO-8601 upper bound (exclusive).

No output schema declared.

No examples provided.

get_version ~57

Fetch a specific version's XML + Well-Architected score (e.g. to inspect before reverting). Free.

NameTypeReqDescription
diagram_idstringyesThe diagram id
version_idstringyesThe version id (from list_versions)

No output schema declared.

No examples provided.

get_warnings ~41

List the Well-Architected findings for a diagram (each has type, component, message). Free.

NameTypeReqDescription
diagram_idstringyesThe diagram id

No output schema declared.

No examples provided.

import_diagram ~109

Import an existing draw.io (mxGraphModel/mxfile) XML document as a new diagram in your account. Validated and sanitized. Free (no AI).

NameTypeReqDescription
cloud_providerstringaws | azure | gcp | ... (default: general)
diagram_typestringarchitecture | flowchart | ... (default: architecture)
titlestringOptional title (derived if omitted)
xmlstringyesdraw.io mxGraphModel/mxfile XML

No output schema declared.

No examples provided.

list_capabilities ~41

Discover the valid diagram types, cloud providers, and export formats the API supports — so you pass valid values to generate_diagram / export_diagram. Free.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

list_diagrams ~57

List your diagrams (newest first, cursor-paginated). Returns id, title, cloud, type.

NameTypeReqDescription
cursorstringnext_cursor from a previous call
limitintegerPage size (default 20)

No output schema declared.

No examples provided.

list_versions ~72

List a diagram's version history (ascending; `is_current` marks the live one). Use with revert_diagram / get_version.

NameTypeReqDescription
cursorstringnext_cursor from a previous call
diagram_idstringyesThe diagram id
limitintegerPage size (default 20)

No output schema declared.

No examples provided.

relayout_diagram ~120

Automatically re-arrange a diagram's layout for readability (async). Starts the job and waits for it to finish, returning the re-laid XML + fresh warnings/score. Every re-layout costs credits based on the tokens it uses (like edit/fix) and requires confirm=true. If the job is still running when the wait elapses, returns a job_id you can poll with get_relayout_status.

NameTypeReqDescription
confirmbooleanConsent to the token-based charge (required to start).
diagram_idstringyesThe diagram id

No output schema declared.

No examples provided.

revert_diagram ~80

Revert a diagram to an earlier version (from list_versions). Pass either version_id or version_number. Free (no AI).

NameTypeReqDescription
diagram_idstringyesThe diagram id
version_idstringThe version's id (from list_versions)
version_numberintegerOr the version number, e.g. 2

No output schema declared.

No examples provided.

search_gallery ~124

Search public community diagrams and curated library templates to reuse as a starting point. Returns id, title, and source (community/library). Fork one with fork_template.

NameTypeReqDescription
cloud_providerstringFilter by provider
cursorstringnext_cursor from a previous call (community feed is paginated)
diagram_typestringFilter by diagram type
limitintegerPage size (default 20)
qstringSearch text (matches title/description)
sourcestringall (default) · community · library

No output schema declared.

No examples provided.

update_diagram ~105

Update a diagram's metadata or XML: rename it, change visibility (public/private — paid plans for private), or replace its XML. Pass only the fields you want to change. Free (no AI).

NameTypeReqDescription
diagram_idstringyesThe diagram id
is_publicbooleantrue = public in the gallery, false = private (paid)
titlestringNew title
xmlstringReplace the diagram XML (validated + sanitized)

No output schema declared.

No examples provided.

whoami ~28

Show the account, plan, scopes, and live/test mode of the configured API key. Free.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.