TouchDesigner MCP
TouchDesigner MCP
Dies ist die Implementierung eines MCP-Servers (Model Context Protocol) für TouchDesigner. Ziel ist es, KI-Agenten die Steuerung und Bedienung von TouchDesigner-Projekten zu ermöglichen.
Überblick

TouchDesigner MCP fungiert als Brücke zwischen KI-Modellen und dem TouchDesigner WebServer DAT und ermöglicht KI-Agenten:
Erstellen, Ändern und Löschen von Knoten
Knoteneigenschaften und Projektstruktur abfragen
TouchDesigner programmgesteuert über Python-Skripte steuern
Related MCP server: td-mcp
Verwendung
Erfordert die Installation von Docker oder Node.js

1. Klonen Sie das Repository:
git clone https://github.com/8beeeaaat/touchdesigner-mcp.git
cd touchdesigner-mcp2. Richten Sie die Umgebungsdatei ein und erstellen Sie:
Kopieren Sie die Vorlagendatei und passen Sie TD_WEB_SERVER_HOST und TD_WEB_SERVER_PORT nach Bedarf an, bevor Sie das Docker-Image erstellen.
cp dotenv .env
make build3. Installieren Sie den API-Server in Ihrem TouchDesigner-Projekt:
Starten Sie TouchDesigner und importieren Sie die Komponente td/mcp_webserver_base.tox direkt in das TouchDesigner-Projekt, das Sie steuern möchten. Beispiel: Platzieren Sie sie als /project1/mcp_webserver_base
Durch das Importieren des Tox wird das Skript td/import_modules.py ausgelöst, das Module wie API-Server-Controller lädt.

Sie können die Startprotokolle überprüfen, indem Sie den Textport über das TouchDesigner-Menü öffnen.

4. Starten Sie den MCP-Servercontainer
docker-compose up -d5. Konfigurieren Sie Ihren KI-Agenten für die Verwendung des Docker-Containers:
Beispiel für Claude Desktop
{
"mcpServers": {
"touchdesigner": {
"command": "docker",
"args": [
"compose",
"-f",
"/path/to/your/touchdesigner-mcp/docker-compose.yml",
"exec",
"-i",
"touchdesigner-mcp-server",
"node",
"dist/index.js",
"--stdio"
]
}
}
}Geben Sie auf Windows-Systemen den Laufwerksbuchstaben an, z. B. C: C:\\path\\to\\your\\touchdesigner-mcp\\docker-compose.yml
So verwenden Sie das vorgefertigte JS direkt von Node.js:

1. Installieren Sie das Paket
mkdir some && cd ./some # If you need a new directory
npm install touchdesigner-mcp-server2. Installieren Sie den API-Server in Ihrem TouchDesigner-Projekt:
Starten Sie TouchDesigner und importieren Sie die Komponente some/node_modules/touchdesigner-mcp-server/td/mcp_webserver_base.tox direkt unter dem TouchDesigner-Projekt, das Sie steuern möchten. Beispiel: Platzieren Sie sie als /project1/mcp_webserver_base
Durch das Importieren des Tox wird das Skript some/node_modules/touchdesigner-mcp-server/td/import_modules.py ausgelöst, das Module wie API-Server-Controller lädt.

Sie können die Startprotokolle überprüfen, indem Sie den Textport über das TouchDesigner-Menü öffnen.

3. Konfigurieren Sie Ihren KI-Agenten:
Beispiel für Claude Desktop
{
"mcpServers": {
"touchdesigner": {
"args": [
"/path/to/your/node_modules/touchdesigner-mcp-server/dist/index.js", // <-- Replace with the absolute path to node_modules/touchdesigner-mcp-server/dist/index.js
"--stdio"
],
"command": "node"
}
}
}Geben Sie auf Windows-Systemen den Laufwerksbuchstaben an, z. B. C: C:\\path\\to\\your\\node_modules\\touchdesigner-mcp-server\\dist\\index.js
3. Verbindung überprüfen
Wenn der MCP-Server erkannt wird, ist die Einrichtung abgeschlossen. Falls er nicht erkannt wird, starten Sie Ihren KI-Agenten neu. Tritt beim Start ein Fehler auf, starten Sie den Agenten erneut, nachdem Sie TouchDesigner gestartet haben. Wenn der API-Server in TouchDesigner ordnungsgemäß läuft, kann der Agent die bereitgestellten Tools zur Bedienung von TouchDesigner nutzen.

MCP-Serverfunktionen
Dieser Server ermöglicht Operationen auf TouchDesigner über das Model Context Protocol (MCP) und bietet Verweise auf verschiedene Implementierungsdokumente.
Werkzeuge
Mithilfe von Tools können KI-Agenten Aktionen im TouchDesigner ausführen.
Werkzeugname | Beschreibung |
| Erstellen Sie einen neuen Knoten. |
| Löschen Sie einen vorhandenen Knoten. |
| Rufen Sie eine Python-Methode auf einem Knoten auf. |
| Führen Sie ein beliebiges Python-Skript in TD aus. |
| Erhalten Sie Details zu einer TD Python-Klasse/einem TD Python-Modul. |
| Holen Sie sich eine Liste der TouchDesigner-Python-Klassen. |
| Informieren Sie sich über die TD-Serverumgebung. |
| Rufen Sie die Parameter eines bestimmten Knotens ab. |
| Holen Sie sich Knoten unter einem übergeordneten Pfad (optional gefiltert). |
| Aktualisieren Sie die Parameter eines bestimmten Knotens. |
Eingabeaufforderungen
Eingabeaufforderungen enthalten Anweisungen für KI-Agenten zum Ausführen bestimmter Aktionen in TouchDesigner.
Eingabeaufforderungsname | Beschreibung |
| Fuzzy-Suche nach Knoten und Abrufen von Informationen basierend auf Name, Familie und Typ. |
| Geben Sie Anweisungen zum Verbinden von Knoten innerhalb von TouchDesigner. |
| Überprüfen Sie Fehler für einen angegebenen Knoten, rekursiv für untergeordnete Knoten, falls vorhanden. |
Ressourcen
Nicht implementiert
Für Entwickler
Erstellen von Client- und API-Servercode
cp dotenv .envPassen Sie
TD_WEB_SERVER_HOSTundTD_WEB_SERVER_PORTin der.envDatei an Ihre Entwicklungsumgebung anFühren Sie
make buildodernpm run buildum den Code neu zu generieren
Wenn Sie den erstellten Code widerspiegeln müssen, starten Sie sowohl den MCP-Server als auch TouchDesigner neu.
Überprüfen des API-Servers
npm run testFühren Sie Unit-Tests für den MCP-Servercode und Integrationstests mit TouchDesigner aus. Sie können Kommunikationsprotokolle überprüfen, indem Sie den Textport über das TouchDesigner-Menü öffnen.npm run devStarten Sie @modelcontextprotocol/inspector, um verschiedene Funktionen zu debuggen.
Projektstrukturübersicht
├── src/ # MCP server source code
│ ├── api/ # OpenAPI spec for TD WebServer
│ ├── core/ # Core utilities (logger, error handling)
│ ├── features/ # MCP feature implementations
│ │ ├── prompts/ # Prompt handlers
│ │ ├── resources/ # Resource handlers
│ │ └── tools/ # Tool handlers (e.g., tdTools.ts)
│ ├── gen/ # Code generated from OpenAPI schema for MCP server
│ ├── server/ # MCP server logic (connections, main server class)
│ ├── tdClient/ # TD connection API client
│ ├── index.ts # Main entry point for Node.js server
│ └── ...
├── td/ # TouchDesigner related files
│ ├── modules/ # Python modules for TouchDesigner
│ │ ├── mcp/ # Core logic for handling MCP requests in TD
│ │ │ ├── controllers/ # API request controllers (api_controller.py, generated_handlers.py)
│ │ │ └── services/ # Business logic (api_service.py)
│ │ ├── td_server/ # Python model code generated from OpenAPI schema
│ │ └── utils/ # Shared Python utilities
│ ├── templates/ # Mustache templates for Python code generation
│ ├── genHandlers.js # Node.js script for generating generated_handlers.py
│ ├── import_modules.py # Helper script to import API server modules into TD
│ └── mcp_webserver_base.tox # Main TouchDesigner component
├── tests/ # Test code
│ ├── integration/
│ └── unit/
├── .env # Local environment variables (git ignored)
├── dotenv # Template for .env
└── orval.config.ts # Orval config (TS client generation)Workflow zur API-Codegenerierung
Dieses Projekt verwendet OpenAPI-basierte Codegenerierungstools (Orval / openapi-generator-cli):
API-Definition: Der API-Vertrag zwischen dem Node.js MCP-Server und dem Python-Server, der in TouchDesigner ausgeführt wird, ist in src/api/index.yml definiert.
Python-Servergenerierung (
npm run gen:webserver):Verwendet
openapi-generator-cliüber Docker.Liest
src/api/index.yml.Generiert ein Python-Server-Skelett (
td/modules/td_server/) basierend auf der API-Definition. Dieser Code wird in TouchDesigner über WebServer DAT ausgeführt.Erfordert, dass Docker installiert und ausgeführt wird.
Python-Handler-Generierung (
npm run gen:handlers):Verwendet ein benutzerdefiniertes Node.js-Skript (
td/genHandlers.js) und Mustache-Vorlagen (td/templates/).Liest den generierten Python-Servercode oder die OpenAPI-Spezifikation.
Generiert Handler-Implementierungen (
td/modules/mcp/controllers/generated_handlers.py), die eine Verbindung zur Geschäftslogik intd/modules/mcp/services/api_service.pyherstellen.
TypeScript-Client-Generierung (
npm run gen:mcp):Verwendet
Orval, um API-Clientcode und Zod-Schemas für die Toolvalidierung aus dem vonopenapi-generator-cligebündelten YAML-Schema zu generieren.Generiert einen typisierten TypeScript-Client (
src/tdClient/), der vom Node.js-Server verwendet wird, um Anfragen an das WebServer-DAT zu stellen.
Der Build-Prozess ( npm run build ) führt alle notwendigen Generierungsschritte ( npm run gen ) aus, gefolgt von der TypeScript-Kompilierung ( tsc ).
Beitragen
Wir freuen uns über Ihre Beiträge!
Forken Sie das Repository
Erstellen Sie einen Feature-Zweig (
git checkout -b feature/amazing-feature)Nehmen Sie Ihre Änderungen vor
Fügen Sie Tests hinzu und stellen Sie sicher, dass alles funktioniert (
npm test).Übernehmen Sie Ihre Änderungen (
git commit -m 'Add some amazing feature')Pushen Sie zu Ihrem Zweig (
git push origin feature/amazing-feature)Öffnen einer Pull-Anfrage
Bitte schließen Sie bei Implementierungsänderungen immer entsprechende Tests ein.
Lizenz
MIT
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceHigh-performance MCP server that enables AI assistants to control TouchDesigner live via WebSocket, providing 37 tools for nodes, parameters, scripting, and more.4MIT
- AlicenseAqualityDmaintenanceMCP server for controlling TouchDesigner from AI coding agents like Claude Code and Codex CLI, enabling operator manipulation, parameter control, and screenshot capture.12MIT
- AlicenseBqualityAmaintenanceAn MCP server for TouchDesigner that lets AI agents inspect, build, wire, optimize, and stabilize live TD networks with 106 tools, plus a technique memory system for reusable patterns.1007MIT
- AlicenseAqualityBmaintenanceEnables LLMs to directly control, introspect, and build TouchDesigner networks in real-time through a Model Context Protocol server.25MIT
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
A Model Context Protocol server for Wix AI tools
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to control Unreal E…
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/8beeeaaat/touchdesigner-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server