diagrams-so
OfficialServer Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DIAGRAMS_API_KEY | No | API key for CI and headless use; normally login is used instead. | |
| DIAGRAMS_BROWSER | No | Specify a non-default browser to use for login, e.g. 'Google Chrome'. | |
| DIAGRAMS_API_BASE | No | Base URL for the Diagrams.so API. Defaults to https://api.diagrams.so/api/v2 | https://api.diagrams.so/api/v2 |
| DIAGRAMS_NO_BROWSER | No | Set to any value to prevent login from opening a browser; the URL is printed instead. | |
| DIAGRAMS_NO_AUTO_LOGIN | No | Set to any value to disable automatic login in tools; unauthenticated tools will prompt to run login. | |
| DIAGRAMS_API_TIMEOUT_MS | No | Per-request timeout in milliseconds. Defaults to 450000. | 450000 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| generate_diagramA | 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. |
| edit_diagramA | 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. |
| fix_warningA | Resolve a single Well-Architected warning (from get_warnings), leaving the rest of the diagram untouched. Creates a new version. Costs credits. |
| relayout_diagramA | 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. |
| import_diagramA | Import an existing draw.io (mxGraphModel/mxfile) XML document as a new diagram in your account. Validated and sanitized. Free (no AI). |
| update_diagramA | 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). |
| delete_diagramA | 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. |
| revert_diagramA | Revert a diagram to an earlier version (from list_versions). Pass either version_id or version_number. Free (no AI). |
| get_diagramA | Fetch a diagram by id — returns its title, draw.io XML, and Well-Architected score. |
| list_diagramsA | List your diagrams (newest first, cursor-paginated). Returns id, title, cloud, type. |
| get_warningsA | List the Well-Architected findings for a diagram (each has type, component, message). Free. |
| export_diagramA | Export a diagram as a raw file: |
| list_versionsA | List a diagram's version history (ascending; |
| get_versionA | Fetch a specific version's XML + Well-Architected score (e.g. to inspect before reverting). Free. |
| get_relayout_statusA | 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. |
| search_galleryA | 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. |
| fork_templateA | Copy a PUBLIC gallery diagram or curated library template into your own account (private) so you can edit it. Returns the new diagram id. |
| enhance_promptC | Turn a rough idea into a detailed generation prompt. Free. |
| clarify_promptA | Get 1–3 clarifying questions (and a suggested diagram type) for a vague prompt, before generating. Free. |
| get_usageA | Show your current plan, credits remaining, and per-action cost estimates. Free. |
| get_usage_historyA | 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). |
| whoamiA | Show the account, plan, scopes, and live/test mode of the configured API key. Free. |
| list_capabilitiesA | Discover the valid diagram types, cloud providers, and export formats the API supports — so you pass valid values to generate_diagram / export_diagram. Free. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/RedHold/diagrams-mcp-app-core'
If you have feedback or need assistance with the MCP directory API, please join our Discord server