loading…
Search for a command to run...
loading…
MCP server for rendering 35+ diagram types — sequence, flowchart, ER, C4, gantt, mindmap, infra, and more — to SVG/PNG with browser preview. Local rendering wit
MCP server for rendering 35+ diagram types — sequence, flowchart, ER, C4, gantt, mindmap, infra, and more — to SVG/PNG with browser preview. Local rendering with palette/theme support and shareable diagrammo.app URLs.
MCP server for rendering DGMO diagrams. Works with Claude Desktop, Claude Code, and any MCP-compatible AI tool.
| Tool | Description |
|---|---|
render_diagram |
Render DGMO markup to SVG or PNG |
share_diagram |
Generate a shareable diagrammo.app URL |
open_in_app |
Open diagram in Diagrammo desktop app (falls back to browser if app not installed) |
list_chart_types |
List all supported chart types |
get_language_reference |
Get DGMO syntax documentation |
preview_diagram |
Render one or more diagrams and open an HTML preview in the browser |
generate_report |
Generate a polished HTML report with multiple diagrams, ToC, and optional source |
Renders one or more DGMO diagrams to SVG and opens a self-contained HTML page in the default browser. The page includes a light/dark theme toggle and responsive SVG layout.
| Parameter | Type | Default | Description |
|---|---|---|---|
diagrams |
[{ title?, dgmo }] |
(required) | One or more diagrams to preview |
theme |
'light' | 'dark' |
'light' |
Color theme for rendered SVGs |
palette |
string |
'nord' |
Color palette |
include_source |
boolean |
false |
Show DGMO source in collapsible blocks |
A single diagram renders as a simple preview page. Multiple diagrams produce a report-style layout with a table of contents (when >3 sections). If some diagrams fail to render, successful ones are shown with error placeholders for the failures.
Generates a polished multi-section HTML report and optionally opens it in the browser. Includes a title, optional subtitle, auto-generated table of contents, per-section descriptions, and a timestamp footer. Suitable for bundling project analysis into a shareable document.
| Parameter | Type | Default | Description |
|---|---|---|---|
title |
string |
(required) | Report title |
subtitle |
string |
— | Optional subtitle |
sections |
[{ title, description?, dgmo }] |
(required) | Report sections, each with a diagram |
theme |
'light' | 'dark' |
'light' |
Color theme for rendered SVGs |
palette |
string |
'nord' |
Color palette |
include_source |
boolean |
false |
Show DGMO source in collapsible blocks |
open |
boolean |
true |
Open the report in the browser |
Add to your project's .claude/settings.local.json:
{
"mcpServers": {
"dgmo": {
"command": "npx",
"args": ["-y", "@diagrammo/dgmo-mcp"]
}
}
}
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"dgmo": {
"command": "npx",
"args": ["-y", "@diagrammo/dgmo-mcp"]
}
}
}
Restart Claude Desktop after saving. The tools appear automatically.
pnpm install
pnpm build
pnpm typecheck
To iterate against an unpublished @diagrammo/dgmo checked out in ../dgmo,
override the npm-resolved dep with a workspace symlink after install:
pnpm install
pnpm link ../dgmo # symlink node_modules/@diagrammo/dgmo → ../dgmo
pnpm --filter @diagrammo/dgmo build # ensure dist/ is up to date
pnpm install will undo the link, so re-run pnpm link ../dgmo if deps change.
Releases are tag-driven via .github/workflows/release.yml:
package.json → versionmanifest.json → versionserver.json → version and packages[0].versiongit commit -am "Release vX.Y.Z"
git tag vX.Y.Z
git push && git push --tags
.mcpb, publishes to the MCP registry via GitHub OIDC, and
attaches the .mcpb to a GitHub release.NPM_TOKEN — npm granular access token scoped to @diagrammo/* write.
Settings → Secrets and variables → Actions → New repository secret.MCP registry auth uses GitHub OIDC automatically (no token needed) because the
repo is in the diagrammo org and the server namespace is
io.github.diagrammo/*.
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"dgmo-mcp": {
"command": "npx",
"args": []
}
}
}