Zum Inhalt springen

API und MCP

letdraws REST API und MCP-Server ermöglichen externen Tools und KI-Clients (Claude, Cursor) die Arbeit mit Ihren Diagrammen: auflisten, lesen, erstellen, aktualisieren, ein Diagramm aus Code generieren, zurück in Code umwandeln, teilen und aus einem Prompt generieren.

Die API und MCP stehen Pro- und Enterprise-Nutzern zur Verfügung. Bei selbst gehosteten Installationen kann jedes angemeldete Mitglied sie nutzen. Kostenlose Nutzer und Gäste können keine Tokens erstellen.

  1. Melden Sie sich bei LetDraw mit einem Pro-/Enterprise-Konto an.
  2. Gehen Sie zu Settings -> Developer.
  3. Erstellen Sie ein Token: Geben Sie ihm einen Namen, wählen Sie die Scopes (siehe unten) und beschränken Sie es optional auf einen einzelnen Workspace.
  4. Das generierte ld_live_...-Token wird nur einmal angezeigt. Bewahren Sie es an einem sicheren Ort auf. Falls es geleakt wird, widerrufen Sie es auf derselben Seite.
ScopeBerechtigung
diagrams:readWorkspaces, Ordner und Diagramme lesen
diagrams:writeDiagramme erstellen, aktualisieren, löschen und teilen
exportEin Diagramm in Mermaid-/D2-Code exportieren
ai:generateEin Diagramm aus einem Prompt generieren (KI)

Senden Sie das Token als Bearer-Wert im Authorization-Header bei jeder Anfrage:

Authorization: Bearer ld_live_...

Es wird kein zusätzlicher apikey-Header benötigt.

Basis-URL: https://api.letdraw.com/api-v1

Alle Antworten sind JSON. Fehler werden mit einem Standardtext zurückgegeben: { "error": { "code", "message" } }.

MethodePfadBeschreibungScope
GET/API-Infos (Scopes, Endpunkte)any
GET/workspacesIhre Workspaces (mit Rolle)read
GET/folders?workspace=<id>Ordner in einem Workspaceread
GET/documents?workspace=<id>Diagramme in einem Workspace (paginiert)read
GET/documents?folder=<id>Diagramme in einem Ordner (paginiert)read
POST/documentsEin Diagramm erstellenwrite
GET/documents/:idDiagramm + Szene (Elemente)read
PATCH/documents/:idName und/oder Elemente aktualisierenwrite
DELETE/documents/:idEin Diagramm löschenwrite
POST/documents/from-codeEin Diagramm aus Code generierenwrite
POST/documents/generateEin Diagramm aus einem Prompt generieren (KI)ai:generate
GET/documents/:id/export?format=mermaid|d2Ein Diagramm in Code exportierenexport
POST/documents/:id/shareEinen öffentlichen schreibgeschützten Link erstellenwrite
DELETE/documents/:id/shareDen öffentlichen Link entfernenwrite

List-Endpunkte akzeptieren ?limit= (1-100, Standard 50) und ?cursor=. Die Antwort gibt einen nextCursor zurück; übergeben Sie ihn als cursor, um die nächste Seite zu erhalten.

120 Anfragen pro Minute pro Token. Bei Überschreitung wird 429 rate_limited zurückgegeben.

Terminal-Fenster
# List workspaces
curl -H "Authorization: Bearer ld_live_..." \
https://api.letdraw.com/api-v1/workspaces
# Generate a diagram from a docker-compose
curl -X POST -H "Authorization: Bearer ld_live_..." -H "Content-Type: application/json" \
-d '{"workspaceId":"<id>","code":"services:\n web:\n image: nginx\n depends_on: [db]\n db:\n image: postgres\n"}' \
https://api.letdraw.com/api-v1/documents/from-code
# Export a diagram to Mermaid
curl -H "Authorization: Bearer ld_live_..." \
"https://api.letdraw.com/api-v1/documents/<id>/export?format=mermaid"

Model-Context-Protocol-(MCP-)Clients (Claude, Cursor) können sich mit LetDraw verbinden und über Tools mit Ihren Diagrammen arbeiten.

  • URL: https://api.letdraw.com/mcp
  • Transport: Streamable HTTP (stateless JSON-RPC 2.0)
  • Auth: Authorization: Bearer ld_live_...
ToolBeschreibung
list_workspacesZugängliche Workspaces
list_diagramsDiagramme in einem Workspace/Ordner
get_diagramDiagramm + Szene
create_diagramEin Diagramm aus einem Elemente-Array erstellen (letdraw- oder Excalidraw-Format, automatisch erkannt)
update_diagramName/Elemente aktualisieren
delete_diagramEin Diagramm löschen
diagram_from_codecompose, kubernetes, dot, plantuml, terraform, helm, sql -> Diagramm
export_to_codeDiagramm -> Mermaid/D2
share_diagramEinen öffentlichen Link erstellen
unshare_diagramDen öffentlichen Link entfernen
generate_from_promptDiagramm aus natürlicher Sprache (KI)

Sie können auf der Seite Settings -> Developer vorgefertigte Konfigurationsblöcke mit Ihrem eigenen Token kopieren. Ersetzen Sie ld_live_... unten durch Ihr eigenes Token.

~/.cursor/mcp.json (global) oder .cursor/mcp.json im Projektstammverzeichnis:

{
"mcpServers": {
"letdraw": {
"url": "https://api.letdraw.com/mcp",
"headers": { "Authorization": "Bearer ld_live_..." }
}
}
}

Claude Desktop verbindet sich über die mcp-remote-Bridge mit dem entfernten HTTP-Server (Node.js erforderlich). Konfigurationsdatei:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
{
"mcpServers": {
"letdraw": {
"command": "npx",
"args": [
"-y", "mcp-remote",
"https://api.letdraw.com/mcp",
"--header", "Authorization:Bearer ld_live_..."
]
}
}
}

Starten Sie den Client nach dem Speichern neu. Beispiel-Prompts:

  • “Liste meine letdraw-Workspaces auf.”
  • “Wandle diese docker-compose in ein Diagramm in LetDraw um: …”
  • “Exportiere Diagramm als Mermaid.”
  • “Generiere ein Diagramm für einen OAuth-Login-Ablauf.”
  • “Zeichne diese Cloud-Architektur in letdraw: …” (freie Komposition)

Der KI sagen, sie soll “es in LetDraw zeichnen”

Abschnitt betitelt „Der KI sagen, sie soll “es in LetDraw zeichnen”“

create_diagram und update_diagram akzeptieren das Elemente-Array in zwei Formaten: letdraws eigenem Element-Schema oder dem Excalidraw-Format. Das Format wird automatisch erkannt, und Excalidraw-Elemente werden serverseitig in letdraw-Elemente umgewandelt (einschließlich farbiger verschachtelter Container, an Formen gebundener Beschriftungen, Pfeile mit Bindungen, Text und Frames).

Was das bedeutet: Wenn Sie ChatGPT, Gemini oder Claude auffordern, “diese Architektur in LetDraw zu zeichnen”, erzeugt das Modell das Excalidraw-JSON, das es aus seinen Trainingsdaten bereits sehr gut kennt, und sendet es über MCP; LetDraw zeichnet das exakte Äquivalent. Welche Layout-Qualität das Modell auch liefert, genau das erhalten Sie in LetDraw.

Sie können ein öffentlich geteiltes Diagramm als SVG an Stellen wie einer README oder Notion einbetten. Holen Sie sich zuerst ein Share-Token mit share_diagram (oder REST .../share), dann:

https://api.letdraw.com/render-svg?token=<share-token>

Dieser Endpunkt gibt image/svg+xml zurück und benötigt kein API-Token (es werden nur geteilte Diagramme gerendert), sodass Sie ihn direkt in <img src="..."> verwenden können.