d2-mcp
d2-mcp
MCP-Server für die D2-Diagrammsprache. Kompilieren, validieren und erkunden Sie D2-Diagramme von jedem MCP-kompatiblen KI-Assistenten aus.
Verwendet die native D2-CLI-Binärdatei (wird automatisch im Docker-Image installiert), um Diagramme in SVG und PNG zu kompilieren.
Werkzeuge
Werkzeug | Beschreibung |
| D2-Quellcode → SVG/PNG. Unterstützt Layout-Engines, Designs, Skizzenmodus, dunkle Designs, Multi-Board-Targeting und mehr. |
| Überprüft die D2-Syntax ohne Rendering. Gibt den Gültigkeitsstatus und Fehlerdetails zurück. |
| Listet alle verfügbaren D2-Designs mit IDs auf (hell und dunkel). |
| Listet verfügbare Layout-Engines auf ( |
| Durchsuchen Sie Symbole von icons.terrastruct.com nach Kategorie (AWS, GCP, Azure, K8s, dev, essentials, tech). |
Ressourcen
Ressource | Beschreibung |
| Vollständige Referenz der D2-Sprachsyntax in Markdown. |
Lokale Entwicklung
Voraussetzungen
Node.js 22+
D2 CLI — Installation über d2lang.com oder setzen Sie die Umgebungsvariable
D2_PATHauf den Pfad der Binärdatei.Symbole (optional) — Führen Sie
scripts/download-icons.sh ./iconsaus und setzen Sie dannICONS_DIR=./icons, um die lokale Symbolauflösung zu aktivieren. Ohne dies werden Symbol-URLs unverändert an die D2-CLI weitergeleitet.
npm install
npm run build
npm startFür die Entwicklung mit automatischem Neuladen:
npm run devDer Server startet standardmäßig auf Port 3000 (kann mit der Umgebungsvariable PORT überschrieben werden).
Gesundheitsprüfung:
GET /healthMCP-Endpunkt:
POST /mcp(Streamable HTTP-Transport)
Umgebungsvariablen
Variable | Standard | Beschreibung |
|
| HTTP-Server-Port |
|
| Pfad zur D2-CLI-Binärdatei (wird standardmäßig über |
|
| Verzeichnis mit heruntergeladenen SVG-Symbolen für die lokale Auflösung |
Bereitstellung (Render)
Dieses Projekt enthält ein Dockerfile und einen render.yaml-Bauplan für die Bereitstellung mit einem Klick auf Render. Das Docker-Image installiert automatisch die D2-CLI-Binärdatei und lädt alle Symbole zur Build-Zeit herunter.
Pushen Sie dieses Repository zu GitHub
Erstellen Sie in Render einen neuen Blueprint und verbinden Sie Ihr Repository
Render erkennt
render.yamlautomatisch und führt die Bereitstellung durch
Oder erstellen Sie manuell einen Web Service mit:
Umgebung: Docker
Pfad für Gesundheitsprüfung:
/healthPlan: Kostenlos
Verbindung zum MCP-Server
Nach der Bereitstellung konfigurieren Sie Ihren MCP-Client für die Verbindung über Streamable HTTP:
{
"mcpServers": {
"d2": {
"url": "https://your-service.onrender.com/mcp"
}
}
}Ersetzen Sie die URL durch Ihre tatsächliche Render-Service-URL (oder http://localhost:3000/mcp für lokal).
Optionen für das Kompilier-Werkzeug
Parameter | Typ | Beschreibung | |
| string | D2-Quellcode (erforderlich) | |
|
|
| Layout-Engine (Standard: dagre) |
| boolean | Handgezeichneter Skizzenmodus | |
| integer | Design-ID (siehe | |
| integer | Design-ID für den Dunkelmodus | |
| integer | Auffüllung (Padding) in Pixeln (Standard: 100) | |
| boolean | SVG in der Viewbox zentrieren | |
| number | Skalierungsfaktor (Standard: an Bildschirm anpassen) | |
| string | Ziel-Board für Multi-Board-Diagramme | |
| integer | Animationsintervall (ms) für Multi-Board-SVGs | |
| boolean | XML-Deklaration für HTML-Einbettung weglassen |
Lizenz
MIT
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/ryanmccauley/d2-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server