Sandbox
@Pantani/tdmcp

MCP server for TouchDesigner visual networks

tdmcp gives AI assistants tools to build TouchDesigner networks instead of just describing them. The server supplies TouchDesigner operator knowledge, and a bridge inside TouchDesigner actually creates, connects, verifies, and previews nodes. It supports creative-coding workflows like audio-reactive visuals, particles, feedback, GLSL, MIDI, OSC, and DMX. The repo also ships recipe files and docs for common visual builds and setup.

39 stars8 forksTypeScriptUpdated 1mo ago
Who it's for

Builders who want an AI assistant to create and debug TouchDesigner visuals inside a live project.

What it delivers

You can describe a visual and get a working TouchDesigner node network with preview and error checks.

What it does

TouchDesigner MCP tools

Exposes hundreds of tools for node creation, inspection, layout, and control inside TouchDesigner.

Bridge inside TouchDesigner

Runs a local bridge that lets the server create, connect, inspect, and preview real nodes in `/project1`.

Create → verify → preview loop

Checks generated networks for errors and shows a preview so the assistant can fix its own work.

Live control support

Includes tools for control panels, parameter animation, and external I/O such as OSC, MIDI, and DMX.

Recipe gallery

Ships many JSON recipes for audio-reactive, particle, feedback, shader, 3D, and generative visual setups.

Docs and install paths

Provides a docs site, Claude Desktop `.mcpb` install, and source setup for Claude Code, Codex, and Cursor.

How to get it

  1. 1Three pieces talk to each other on your computer
    You + your AI            tdmcp server               TouchDesigner
      (Claude / Cursor)   ─▶   (a small program)    ─▶   (the bridge inside TD)
       "make a feedback                                      builds real nodes
        tunnel from noise"                                   in /project1
  2. 2Easiest — let your AI install it. Using Claude Code, Codex, or Cursor? Paste this one…
    Install and connect tdmcp for me using the official install guide:
    https://pantani.github.io/tdmcp/guide/install
    Do every step yourself; only stop when you need me to do the TouchDesigner bridge step.
  3. 3Claude Code / Codex / Cursor — build from source.
    git clone https://github.com/Pantani/tdmcp.git
    cd tdmcp
    npm run setup   # installs, builds, and prints the exact line to connect your client

README

MindDesigner (tdmcp) — TouchDesigner MCP server

CI Docs npm version Node.js MCP server License: MIT tdmcp MCP server

tdmcp is a Model Context Protocol (MCP) server for TouchDesigner — build TouchDesigner from plain language. You describe a visual to an AI assistant (Claude, Claude Code, Cursor, Codex); the AI builds the actual network of nodes inside your project, checks it for errors, and shows you a preview.

"Create a feedback tunnel from noise with blur and displace, then add bloom and output it to a window."

…and the nodes appear, wired up, in your /project1.

It works because it pairs two things every other tool was missing:

  • Real knowledge — an embedded reference of 629 operators, 68 Python classes, workflow patterns, GLSL techniques and tutorials, so the AI uses real TouchDesigner operators instead of guessing.
  • Real execution — a small bridge running inside TouchDesigner that actually creates, connects, inspects and previews nodes — with a create → verify → preview loop so the AI can see and fix its own work. Every generated network is auto-arranged into a readable left→right layout.

📖 Documentation

Full guides and reference live on the docs site → https://pantani.github.io/tdmcp/

For artists / musiciansFor developers
What is tdmcp?Architecture
Install (no terminal)Tools reference
Your first visualEnvironment variables
Shader ParkCLI & local copilot
Prompt cookbookBridge & REST API
Recipe galleryRoadmap
TroubleshootingDeployment

🇧🇷 Portuguese documentation: https://pantani.github.io/tdmcp/pt/

How it works

Three pieces talk to each other on your computer:

   You + your AI            tdmcp server               TouchDesigner
  (Claude / Cursor)   ─▶   (a small program)    ─▶   (the bridge inside TD)
   "make a feedback                                      builds real nodes
    tunnel from noise"                                   in /project1
  1. Your AI assistant — where you type what you want.
  2. The tdmcp server — a small Node program that gives the AI a set of TouchDesigner "tools" and the operator knowledge base. You install it once.
  3. The bridge — a tiny piece that runs inside TouchDesigner so the server can actually drive it. You switch it on once per machine.

What you'll need

  • TouchDesigner — the free non-commercial edition is fine.
  • An MCP-capable AI assistant: Claude Desktop (easiest), Claude Code, Codex, or Cursor.

Node.js is only needed for the build-from-source path (Node 20+). The one-click Claude Desktop extension needs nothing extra — the server is bundled inside the .mcpb extension file.

Get started

You set up two sides: your AI (so it gets the tdmcp tools) and TouchDesigner (so the AI can drive it).

🤖 Easiest — let your AI install it. Using Claude Code, Codex, or Cursor? Paste this one message in:

Install and connect tdmcp for me using the official install guide:
https://pantani.github.io/tdmcp/guide/install
Do every step yourself; only stop when you need me to do the TouchDesigner bridge step.

It clones, builds and wires everything up; the only manual step is pasting one line into TouchDesigner (Step 2 below).

🟢 Claude Desktop — one-click .mcpb (no terminal, no Node). Download tdmcp.mcpb, then in Claude Desktop open Settings → Extensions and install it (drag it in or Install from file). Leave host/port at 127.0.0.1 / 9980. Full walkthrough: the install guide.

🛠️ Claude Code / Codex / Cursor — build from source.

git clone https://github.com/Pantani/tdmcp.git
cd tdmcp
npm run setup   # installs, builds, and prints the exact line to connect your client

Turn on the bridge inside TouchDesigner (everyone)

Easiest — no Textport. Download tdmcp_bridge_package.tox from the latest release, drag it into your /project1 network, and click Install on the component. The package self-bootstraps and starts the bridge on port 9980. ✅

Prefer a one-line Textport command?

Open the Textport (Dialogs → Textport and DATs), paste this one line and press Enter:

import urllib.request; exec(urllib.request.urlopen("https://github.com/Pantani/tdmcp/raw/v0.13.2/td/bootstrap.py").read().decode())

You should see [tdmcp] bridge running on port 9980 (/project1/tdmcp_bridge).

Either way it's safe and reversible — it adds one tidy component; remove it later with from mcp import install; install.uninstall(). Other install methods (module path, terminal, Palette package) are in the bridge docs.

Make something

With TouchDesigner open and your AI connected, ask in plain language:

"Create an audio-reactive particle galaxy and show me a preview."

The AI builds the network, checks it for errors, and returns a thumbnail. Iterate: "make it warmer," "add a feedback trail," "output it fullscreen." More ideas in the prompt cookbook.

Not connecting? The two most common fixes: make sure the bridge is on (curl http://127.0.0.1:9980/api/info returns JSON), and restart your AI client after adding the server. Full troubleshooting.

What you can do

508 tools across three layers, plus foundation primitives, CLI automation, library/packaging, AI session memory and Obsidian vault integrations — from one-line artist generators (create_feedback_network, create_audio_reactive, create_particle_system, create_generative_art, …) to building blocks (create_control_panel, animate_parameter, create_external_io for OSC/MIDI/DMX/NDI, …) down to atomic node CRUD and inspection. Many systems arrive already playable, with a control panel you can tweak, preset, or map to a controller. See the full, always-current tools reference and the recipe gallery.

Optional: Creative RAG

A local, opt-in creative repertoire of open-licensed artworks/artists/techniques the AI can search for inspiration. Off by default. Repertoire, not policy — no bridge, DMX or Python exec. Enable with TDMCP_RAG_ENABLED=1 plus a local Ollama install, then tdmcp creative-rag {sync|index|search}. Full guide: docs/CREATIVE_RAG.md.

Security

The bridge runs arbitrary Python inside your TD process and listens on port 9980 on all interfaces — treat it like an open door to that machine. Run it only on a trusted network, and for untrusted networks turn on bridge auth (TDMCP_BRIDGE_TOKEN) and/or disable the exec endpoints (TDMCP_BRIDGE_ALLOW_EXEC=0). Details: Security.

Links & community

Contributing & development

Build with npm install && npm run build; run npm test, npm run typecheck, npm run lint. Work on the docs with npm run docs:dev (the tools reference is generated by scripts/gen-tool-docs.ts). See CONTRIBUTING.md, CHANGELOG.md, and the roadmap.

License

MIT — see LICENSE.

Files in the repo

Repository payload49 top-level entries
  • _workspace
  • .agents
  • .claude
  • .claude-plugin
  • .codex
  • .github
  • docs
  • mcpb
  • recipes
  • scripts
  • skills
  • src
  • td
  • tests
  • training
  • .dependency-cruiser.cjs
  • .dockerignore
  • .env.example
  • .gitignore
  • .npmignore
  • .safeskillignore
  • AGENTS.md
  • biome.json
  • CHANGELOG.md
  • CLAUDE.md
  • complexipy-cognitive-baseline.json
  • CONTRIBUTING.md
  • docker-compose.yml
  • Dockerfile
  • eslint-cognitive-baseline.json
  • eslint.config.js
  • glama.json
  • LICENSE
  • llms-install.md
  • Makefile
  • mcp.json
  • package-lock.json
  • package.json
  • pnpm-workspace.yaml
  • pyproject.toml
  • README.md
  • safeskill.manifest.json
  • server.json
  • setup.sh
  • smithery.yaml
  • tdmcp-install-prompt.md
  • tsconfig.json
  • tsup.config.ts
  • vitest.config.ts

Discussion (0)

Ask about usage, or say what you built with it

Sign in to join the discussion.

No comments yet. Be the first to say what this is good for.

More connectors

Real-time global intelligence dashboard. AI-powered news aggregation, geopolitical monitoring, and infrastructure tracking in a unified situational awareness interface

86k

High-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.

43k

Universal provider proxy for OpenAI Codex & Claude Code — use any LLM (Claude, Gemini, Grok, DeepSeek, Ollama…) with Codex CLI, App, SDK, and Claude Code

14k
okf-memory/
okf-agent-memory

Git-native persistent memory for AI coding agents. Implements Google OKF v0.2 with sub-300µs in-memory BM25 search, embedded MCP server, and progressive disclosure. Slashes token bloat by 80% with zero external databases or dependencies. Built in pure Go.

547
tirth8205/
code-review-graph

Local-first code intelligence graph for MCP and CLI. Builds a persistent map of your codebase so AI coding tools read only what matters, with benchmarked context reductions on reviews and large-repo workflows.

31k
2akouwu/
reverify

Stop your AI from making things up — it proposes, deterministic tools decide, every claim checked against ground truth with evidence. Grounded facts and context survive resets. Reverse engineering is the proving ground. MCP server + CLI.

1.1k