Zum Inhalt springen

← Blog

Ein CAD, das eine KI bedienen kann: was MCP ist und wie Sie es mit LinceCAD nutzen

· Anleitungen

Die Programmoberfläche und die Hilfe sind auf Englisch und Spanisch verfügbar. Befehle und Optionen stehen hier so, wie sie in der englischen Version des Programms heißen.

KI-Assistenten beantworten nicht mehr nur Fragen: Sie können auch Programme bedienen, wenn das Programm ihnen einen Weg dafür bietet. Dieser Weg ist immer häufiger MCP. LinceCAD bringt einen MCP-Server mit, sodass ein Assistent eine DWG öffnen, abfragen, zeichnen, bemaßen und speichern kann, während Sie entscheiden, welche Änderungen er vornehmen darf. Dieser Artikel erklärt, was MCP ist, was der Server von LinceCAD genau erlaubt und wie eine echte Sitzung aussieht.

Was MCP ist

Das Model Context Protocol ist ein offenes Protokoll, im November 2024 von Anthropic veröffentlicht, um KI-Anwendungen mit Programmen und Daten zu verbinden. Es hat zwei Seiten:

Die Nachrichten sind JSON-RPC 2.0 und laufen über Standardein- und -ausgabe (der Client startet den Server) oder über HTTP. Das KI-Modell wählt, welches Tool mit welchen Daten aufgerufen wird; der Client führt den Aufruf aus und gibt ihm das Ergebnis zurück. Der Server muss nicht wissen, welches Modell auf der anderen Seite sitzt.

Was der MCP-Server von LinceCAD erlaubt

Der Server startet mit lince --mcp und spricht über Standardein- und -ausgabe. Bei geöffnetem LinceCAD lässt sich zusätzlich ein MCP-Server über HTTP aktivieren, nur auf 127.0.0.1. Er unterstützt die Protokollversionen 2025-06-18, 2025-03-26 und 2024-11-05 und bietet 23 Tools:

ZweckTools
Zeichnungenlist_drawings, open_drawing, new_drawing, save_drawing, drawing_summary
Abfragenquery_entities, get_entity, list_layers, list_blocks, list_block_library, get_variable, capture_view
Änderncreate_entities, modify_entity, delete_entities, manage_layer, set_variable, add_dimension, insert_block
Befehle und AutoLISPrun_command, eval_lisp
Ausgabe und Kontrolleplot_pdf, undo

Einige Details, die in der Praxis zählen:

So binden Sie ihn an

Claude Desktop, in %APPDATA%\Claude\claude_desktop_config.json:

{
  "mcpServers": {
    "lince": { "command": "C:\\Program Files\\lince\\lince.exe", "args": ["--mcp"] }
  }
}

Claude Code, ohne Fenster und in einem Projekt:

claude mcp add --scope project lince -- "C:\Program Files\lince\lince.exe" --mcp

Bei geöffnetem LinceCAD: unter OPTIONS, Registerkarte Automation, die Automatisierung erlauben und den MCP-Server über HTTP aktivieren. Das Token (das Passwort, das Clients vorlegen) steht in api.toml, unter %APPDATA%\lince in Windows oder ~/.config/lince in Linux:

claude mcp add --transport http lince http://127.0.0.1:7341/mcp --header "Authorization: Bearer <Token>"

Jeder andere MCP-Client, der einen Server über Standardein- und -ausgabe startet, wird genauso eingerichtet: Der Befehl ist lince.exe, das Argument --mcp.

Ein echtes Beispiel

Um zu sehen, was darunter passiert, haben wir den Client mit einem Python-Skript gespielt, ohne KI dazwischen: Es startet lince.exe --mcp, meldet sich an, fragt die Liste der Tools ab und macht die Aufrufe, die ein Assistent bei einer Anweisung wie „lege den Layer MUROS (Wände) in Rot an, zeichne ein Rechteck von 8 × 5 m, bemaße die Unterkante und speichere es als planta.dwg“ machen würde. Die Koordinaten sind in Millimetern, der Layer der Bemaßung heißt COTAS.

import json, subprocess

lince = subprocess.Popen([r"C:\Program Files\lince\lince.exe", "--mcp"],
                         stdin=subprocess.PIPE, stdout=subprocess.PIPE)
n = 0

def send(method, params=None, notify=False):
    global n
    msg = {"jsonrpc": "2.0", "method": method, "params": params or {}}
    if not notify:
        n += 1
        msg["id"] = n
    lince.stdin.write((json.dumps(msg) + "\n").encode())
    lince.stdin.flush()
    return None if notify else json.loads(lince.stdout.readline())["result"]

def tool(tool_name, /, **args):
    r = send("tools/call", {"name": tool_name, "arguments": args})
    return r["content"][0]["text"]

info = send("initialize", {"protocolVersion": "2025-06-18", "capabilities": {},
                           "clientInfo": {"name": "blog", "version": "1"}})
send("notifications/initialized", notify=True)
print(info["serverInfo"])
print(len(send("tools/list")["tools"]), "tools")

tool("manage_layer", action="create", name="MUROS", color=1)
print(tool("create_entities", entities=[{"type": "LWPOLYLINE", "layer": "MUROS", "closed": True,
           "vertices": [[0, 0], [8000, 0], [8000, 5000], [0, 5000]]}]))
tool("add_dimension", kind="linear", points=[[0, 0], [8000, 0]],
     textPosition=[4000, -800], layer="COTAS")
print(tool("drawing_summary"))
print(tool("save_drawing", path=r"C:\planos\planta.dwg"))
lince.stdin.close()
lince.wait()

Das ist die echte Ausgabe mit LinceCAD 0.9.8-rc3 (wir haben nur den Pfad der gespeicherten Datei durch den des Beispiels ersetzt; der Standardname der Zeichnung ist spanisch, weil das Programm auf Spanisch lief):

{'name': 'lince', 'title': 'LinceCAD', 'version': '0.9.8-rc3'}
23 tools
{"handles":["51"]}
{"document":{"id":1,"name":"Dibujo1.dwg","path":null,"modified":true,"active":true,"version":"AC1032","entities":2},"extents":[[0.0,-801.25],[8000.0,5000.0]],"units":0,"byType":{"DIMENSION":1,"LWPOLYLINE":1},"byLayer":{"COTAS":1,"MUROS":1},"layers":3,"blocks":0,"currentLayer":"COTAS"}
{"path":"C:\\planos\\planta.dwg","version":"AC1032"}

Die Zusammenfassung bestätigt, was verlangt wurde: eine Polylinie auf dem Layer MUROS, eine Bemaßung auf COTAS und insgesamt drei Layer (0 und die beiden neuen). add_dimension erzeugt die Bemaßung über DIMLINEAR, denselben Befehl, den Sie von Hand verwenden würden. In den Entwicklungstests diente Claude Code als echter Client: Es erstellte einen Kreis und eine Linie und las die Zusammenfassung der Zeichnung.

Was der Benutzer kontrolliert

Grenzen

Häufige Fragen

Muss ich programmieren können? Für MCP nicht: Sie richten den Client einmal ein und geben die Anweisungen in normaler Sprache.

Wo ist die vollständige Referenz? Im Thema Automation (API and MCP) des Handbuchs (auf Englisch).

Ist es eine Alternative zu AutoCAD LT? Das hängt von Ihrer Arbeit ab; wir gehen es in LinceCAD oder AutoCAD LT durch.

MCP-Server, lokale API und AutoLISP sind in LinceCAD enthalten, mit Dauerlizenz. Download · Preise ansehen · Automatisierung und alle weiteren Funktionen.