/ Verzeichnis / Playground / TouchDesigner MCP
● Community 8beeeaaat 🔑 Eigener Schlüssel nötig

TouchDesigner MCP

von 8beeeaaat · 8beeeaaat/touchdesigner-mcp

KI-native TouchDesigner-Steuerung – Agenten erstellen Knoten, optimieren Parameter, führen Python aus und lesen Fehler über eine lokale WebServer-DAT-Bridge.

Mit touchdesigner-mcp kann ein Agent ein laufendes TouchDesigner-Projekt über MCP bedienen. 12 Tools decken das Wesentliche ab: Knoten auflisten/erstellen/löschen, Parameter festlegen, beliebiges Python in TouchDesigner ausführen und die Umgebung untersuchen (Klassenkatalog, Knotenfehler, Modulhilfe). Ein Webserver-DAT in TouchDesigner (von „mcp_webserver_base.tox“, API ≥1.3.0) überwacht Port 9981; Der MCP-Server kommuniziert über HTTP mit ihm. Zielgruppe sind Motion-Designer, Live-Visual-Künstler und Installationsingenieure, die einen KI-Paarprogrammierer in TouchDesigner wünschen.

Warum nutzen

Hauptfunktionen

Live-Demo

In der Praxis

touchdesigner-mcp.replay ▶ bereit
0/0

Installieren

Wählen Sie Ihren Client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "touchdesigner-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "touchdesigner-mcp-server"
      ],
      "env": {
        "TD_WEBSERVER_HOST": "127.0.0.1",
        "TD_WEBSERVER_PORT": "9981"
      }
    }
  }
}

Öffne Claude Desktop → Settings → Developer → Edit Config. Nach dem Speichern neu starten.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "touchdesigner-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "touchdesigner-mcp-server"
      ],
      "env": {
        "TD_WEBSERVER_HOST": "127.0.0.1",
        "TD_WEBSERVER_PORT": "9981"
      }
    }
  }
}

Cursor nutzt das gleiche mcpServers-Schema wie Claude Desktop. Projektkonfiguration schlägt die globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "touchdesigner-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "touchdesigner-mcp-server"
      ],
      "env": {
        "TD_WEBSERVER_HOST": "127.0.0.1",
        "TD_WEBSERVER_PORT": "9981"
      }
    }
  }
}

Klicken Sie auf das MCP-Servers-Symbol in der Cline-Seitenleiste, dann "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "touchdesigner-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "touchdesigner-mcp-server"
      ],
      "env": {
        "TD_WEBSERVER_HOST": "127.0.0.1",
        "TD_WEBSERVER_PORT": "9981"
      }
    }
  }
}

Gleiche Struktur wie Claude Desktop. Windsurf neu starten zum Übernehmen.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "touchdesigner-mcp",
      "command": "npx",
      "args": [
        "-y",
        "touchdesigner-mcp-server"
      ]
    }
  ]
}

Continue nutzt ein Array von Serverobjekten statt einer Map.

~/.config/zed/settings.json
{
  "context_servers": {
    "touchdesigner-mcp": {
      "command": {
        "path": "npx",
        "args": [
          "-y",
          "touchdesigner-mcp-server"
        ]
      }
    }
  }
}

In context_servers hinzufügen. Zed lädt beim Speichern neu.

claude mcp add touchdesigner-mcp -- npx -y touchdesigner-mcp-server

Einzeiler. Prüfen mit claude mcp list. Entfernen mit claude mcp remove.

Anwendungsfälle

Praxisnahe Nutzung: TouchDesigner MCP

Erstellen Sie aus einem Briefing einen Einstiegs-TouchDesigner-Patch

👤 Motion-Designer und visuelle Ingenieure entwickeln Prototypen ⏱ ~30 min intermediate

Wann einsetzen: Sie beginnen mit einem neuen Patch und möchten, dass das Grundgerüst vor der manuellen Abstimmung vorhanden ist.

Voraussetzungen
  • TouchDesigner läuft mit geladenem mcp_webserver_base.tox — Laden Sie das Tox herunter, legen Sie es in Ihr Projekt ein und stellen Sie Port 9981 ein
  • API-Version ≥ 1.3.0 — Überprüfen Sie die TouchDesigner-Version
Ablauf
  1. Beschreiben Sie den Patch
    Bauen Sie einen generativen Visuals-Patch auf: audioreaktive Partikel (Rauschen → Instanziierung), Nachbearbeitungs-Bloom, 1080p-Ausgabe.✓ Kopiert
    → Der Agent erstellt ein kohärentes Knotendiagramm mit den genannten Operatoren
  2. Fehler beheben
    Melden Sie TD-Fehler und beheben Sie sie.✓ Kopiert
    → Verwendet get_td_node_errors, korrigiert Parameter und iteriert

Ergebnis: Ein funktionierender Starter-Patch, den Sie anpassen, anstatt ihn von Grund auf neu zu laden.

Fallstricke
  • Agent erfindet Operatoren, die nicht existieren — Lassen Sie es zuerst get_td_classes aufrufen und bleiben Sie bei echten Klassennamen
Kombinieren mit: filesystem

Sweep-Parameter und Vergleich der visuellen Ergebnisse

👤 Künstler tunen Looks ⏱ ~20 min intermediate

Wann einsetzen: Sie möchten einen Parameterbereich erkunden, ohne in die TD-Benutzeroberfläche zu klicken.

Ablauf
  1. Beschreiben Sie den Sweep
    Bei Rauschen1 beträgt die Sweep-Periode = 0,2, 0,5, 1,0, 2,0 und die Harmonischen = 1,2,4. Snapshot jeweils über renderpick1.✓ Kopiert
    → Verwendet update_td_node_parameters undexecute_python_script für Snapshot-Speicherungen
  2. Nennen Sie den Gewinner
    Mir gefiel Periode=1,0 Harmonische=2. Projekt anwenden und speichern.✓ Kopiert
    → Parameter gesetzt, Projekt über Python Exec gespeichert

Ergebnis: Schnellere Iteration; Die langweilige kombinatorische Klickarbeit ist weg.

Fallstricke
  • Lange Python-Skripte blockieren den Hauptthread von TD — In kurzfristige Aufrufe aufteilen oder innerhalb einer Execute-DAT ausführen

Lernen Sie die Python-API von TouchDesigner kennen, indem Sie den Agenten fragen

👤 Designer, die mit TouchDesigners Python noch nicht vertraut sind ⏱ ~10 min beginner

Wann einsetzen: Sie schreiben ein Skript CHOP/DAT und müssen wissen, welche Methode aufgerufen werden soll.

Ablauf
  1. Fragen Sie nach der Klasse
    Welche Methoden gibt es in der Klasse „Op“ für gehende Kinder?✓ Kopiert
    → Der Agent ruft get_td_class_details auf und gibt echte Methoden zurück
  2. Sehen Sie sich ein lauffähiges Beispiel an
    Zeigen Sie ein kurzes Python-Snippet an, das den Pfad jedes Nachkommens protokolliert.✓ Kopiert
    → Snippet verwendet eine echte API, keine erfundenen Methoden

Ergebnis: Genaue Python-Beispiele basierend auf der Live-TouchDesigner-Instanz.

Kombinationen

Mit anderen MCPs für 10-fache Wirkung

touchdesigner-mcp + filesystem

Speichern Sie Snapshots/Renderings auf der Festplatte und referenzieren Sie sie beim nächsten Mal

Speichern Sie nach jedem Parametersatz ein PNG über renderpick1 in ~/td-snapshots/ und lesen Sie das Manifest zurück.✓ Kopiert
touchdesigner-mcp + xcodebuild

Rendern und Paketieren für den macOS-Kiosk

Rendern Sie eine Ausgabe und ein Paket als macOS-App-Bundle über xcodebuild.✓ Kopiert
touchdesigner-mcp + filesystem

Archivprojektstatus als Git-verfolgbare .toe-Exporte

Aktuelles Projekt als .toe exportieren und festschreiben.✓ Kopiert

Werkzeuge

Was dieses MCP bereitstellt

WerkzeugEingabenWann aufrufenKosten
create_td_node parent_path, type, name? Fügen Sie einen neuen Operator hinzu 0
delete_td_node path Entfernen Sie einen Operator 0
update_td_node_parameters path, params map Legen Sie einen oder mehrere Parameter für einen Knoten fest 0
get_td_nodes filter? Zählen Sie Knoten auf, die einem Filter entsprechen 0
get_td_node_parameters path Aktuelle Parameterwerte lesen 0
get_td_node_errors (none) Finden und beheben Sie Probleme im aktuellen Projekt 0
execute_python_script script: str Notluke für alles, was die anderen Werkzeuge nicht abdecken 0
exec_node_method path, method, args Rufen Sie eine bestimmte Methode auf einem Knoten auf (z. B. .cook()) 0
get_td_classes (none) Listen Sie die verfügbaren Kurse auf, aus denen Sie auswählen können 0
get_td_class_details class_name Verankern Sie Python-Vorschläge in einer echten API-Oberfläche 0
get_module_help module_name Moduldokumentzeichenfolgen abrufen 0
get_td_info (none) Überprüfen Sie die TD-Version und den Serverstatus 0

Kosten & Limits

Was der Betrieb kostet

API-Kontingent
Keiner
Tokens pro Aufruf
Klein: Knotenpfade + kleine Parameterkarten
Kosten in €
Frei; Es gilt die TouchDesigner-Lizenz
Tipp
Bevorzugen Sie update_td_node_parameters mit einer Karte anstelle vieler Einzelparameteraufrufe.

Sicherheit

Rechte, Secrets, Reichweite

Credential-Speicherung: Keine Anmeldeinformationen
Datenabfluss: HTTP an 127.0.0.1:<Port>. Setzen Sie das Webserver-DAT nicht dem öffentlichen Netzwerk aus.

Fehlerbehebung

Häufige Fehler und Lösungen

ECONNREFUSED 127.0.0.1:9981

TouchDesigner wird nicht ausgeführt oder WebServer DAT ist nicht aktiv. Öffnen Sie den Tox und bestätigen Sie, dass er aktiv ist.

Prüfen: In TD console: op('mcpwebserver').par.active.eval()
API-Version zu niedrig

Aktualisieren Sie TouchDesigner auf einen Build, bei dem die API ≥ 1.3.0 ist.

Prüfen: Help → About TouchDesigner
Die Python-Ausführung schlägt stillschweigend fehl

Überprüfen Sie den TD-Textport auf das Traceback. Einige Operationen funktionieren nur, wenn sie mit einem Viewer verbunden sind.

Prüfen: Alt-T opens the textport

Alternativen

TouchDesigner MCP vs. andere

AlternativeWann stattdessenKompromiss
unrealSie steuern Unreal Engine-Szenen, keine TouchDesigner-PatchesUnterschiedliche Laufzeit; anderes DCC
unityUnity ist Ihre ZielmaschineVöllig anderes DCC
godot-mcp-pro-2Godot ist Ihr MotorAnderes DCC

Mehr

Ressourcen

📖 Offizielle README auf GitHub lesen

🐙 Offene Issues ansehen

🔍 Alle 400+ MCP-Server und Skills durchsuchen