TouchDesigner MCP
An MCP server for TouchDesigner: the agent creates and edits nodes, reads parameters and runs Python scripts inside a project
Medium risk
We rate an entry medium when the tool runs code, makes network calls or reads project files. Check what exactly it does before installing.
Why this level
- Runs arbitrary Python scripts in TouchDesigner
- Creates, edits and deletes nodes in your project
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add mcp/touchdesigner-mcpDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Run in a terminal
claude mcp add --transport stdio touchdesigner-mcp-server -- npx -y touchdesigner-mcp-server@2.1.0Or add to the file .mcp.json, in the project
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Add to the file ~/.cursor/mcp.json, for all projects
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key. For a single project, put the same block into .cursor/mcp.json.
The button opens the agent and offers to add the server. If nothing happens, copy the config below.
Run in a terminal
code --add-mcp '{"name":"touchdesigner-mcp-server","type":"stdio","command":"npx","args":["-y","touchdesigner-mcp-server@2.1.0"]}'Or add to the file .vscode/mcp.json, in the project
{
"servers": {
"touchdesigner-mcp-server": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the servers key.
Run in a terminal
codex mcp add touchdesigner-mcp-server -- npx -y touchdesigner-mcp-server@2.1.0Or add to the file ~/.codex/config.toml, for all projects
[mcp_servers.touchdesigner-mcp-server]
command = "npx"
args = ["-y", "touchdesigner-mcp-server@2.1.0"]If the file already exists, append the block to the end.
Add to the file ~/.gemini/settings.json, for all projects
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Add to the file ~/.config/devin/mcp_config.json, for all projects
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Legacy Cascade keeps the MCP config in ~/.codeium/windsurf/mcp_config.json.
Formerly Windsurf.
Add to the file cline_mcp_settings.json, for all projects
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key. Open the settings file in Cline: MCP Servers tab, Configure MCP Servers.
Add to the file .roo/mcp.json, in the project
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
A fork of Roo Code, same .roo folders.
Add to the file opencode.json, in the project
{
"mcp": {
"touchdesigner-mcp-server": {
"type": "local",
"command": [
"npx",
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcp key.
Add to the file ~/.config/zed/settings.json, for all projects
{
"context_servers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the context_servers key.
Add to the file .codeassistant/mcp.json, in the project
{
"mcpServers": {
"touchdesigner-mcp-server": {
"command": "npx",
"args": [
"-y",
"touchdesigner-mcp-server@2.1.0"
]
}
}
}If the file already exists, add the server inside the mcpServers key.
Import the mcp_webserver_base.tox component into the TouchDesigner project, then add the server: claude mcp add -s user touchdesigner -- npx -y touchdesigner-mcp-server@latest.
Other ways from the author
claude mcp add -s user touchdesigner -- npx -y touchdesigner-mcp-server@latestFirst import the mcp_webserver_base.tox component into the TouchDesigner project.
This is third-party code. Review the repository files before installing.
What it does
The server connects an AI agent to TouchDesigner through the WebServer DAT component and lets it control a project live. The agent creates, edits and deletes nodes, reads project structure and parameters, runs arbitrary Python scripts and calls node methods. There are tools to check errors and warnings on a node and its descendants, list and detail TouchDesigner Python classes and capture a TOP node's output as an image. Built-in prompts help search nodes, connect them and check errors. The link runs over WebSocket in real time, with no file polling. The server works with Claude Code, Claude Desktop, Cursor and Codex.
Who it is for. For visual artists and developers on TouchDesigner who want to work on a project through an agent.
Good fit when
- You want to create and edit nodes in a TouchDesigner project through an agent
- You want to run a Python script inside a project
- You want to check errors and warnings across scene nodes
Not a fit when
- You cannot allow arbitrary Python in the project
- TouchDesigner is not running and the WebServer DAT component is not connected
Example request
Create a particle node in TouchDesigner and show scene errorsLimitations
It needs a running TouchDesigner with the mcp_webserver_base.tox component imported, default port 9981. The server and component are matched by API version, and a major-version mismatch stops execution with an update prompt. The execute_python_script tool runs arbitrary Python in the project, so use it deliberately. Installation is via npx or Docker.
How to disable. Remove the touchdesigner entry from the agent's MCP configuration and remove the WebServer component from the TouchDesigner project.
MCP
- Transport
- stdio, http
- Authentication
- not required
Security check
- Runs arbitrary Python scripts in TouchDesigner
- Creates, edits and deletes nodes in your project
README in short
The README describes TouchDesigner MCP as a server that lets agents control TouchDesigner projects through the WebServer DAT component. It offers tools to create, edit and delete nodes, read parameters and structure, run Python and capture TOP output as an image, plus built-in prompts to search and connect nodes. The link runs over WebSocket in real time. It installs via npx with claude mcp add or codex mcp add, with a Docker option and a recommended plugin. Server and component versions are matched by API. MIT licensed.
FAQ
What is needed on the TouchDesigner side?
A running TouchDesigner with the mcp_webserver_base.tox component imported and the WebServer DAT enabled, default port 9981.
Why the update prompt?
The server and component have independent API versions; an outdated or too-new component makes the server warn or stop until it is updated.
Related
Skills and CLI from HeyGen: the agent writes HTML compositions and renders them into MP4 videos, captions, motion graphics and decks
Blender MCP
MCP for Blender
An MCP server and Blender addon: the agent creates and edits objects, materials and scenes, pulls assets and runs Python in Blender
Official Remotion skills for making videos in React: compositions, animation, captions, maps and rendering
Agentic video studio for Claude Code, Cursor and Codex: script, voiceover, images, stock footage, music, subtitles and render