touchdesigner-mcp

Warn

Audited by Gen Agent Trust Hub on Sep 1, 2026

Risk Level: MEDIUMREMOTE_CODE_EXECUTIONCOMMAND_EXECUTIONPRIVILEGE_ESCALATIONINDIRECT_PROMPT_INJECTIONDYNAMIC_EXECUTIONEXTERNAL_DOWNLOADS
Full Analysis
  • [REMOTE_CODE_EXECUTION]: The skill provides the td_execute_python tool, which allows the agent to execute arbitrary Python code within the TouchDesigner environment. This provides full access to the application's Python API and the host filesystem as the process user.
  • [DYNAMIC_EXECUTION]: The skill makes extensive use of dynamic code generation and execution, including runtime compilation of GLSL shaders and Python callbacks defined as strings within DAT operators.
  • [COMMAND_EXECUTION]: The SKILL.md file instructs the agent to run a bash setup script (setup.sh) located in the skill's scripts directory to automate installation and configuration.
  • [PRIVILEGE_ESCALATION]: Documentation in references/external-data.md provides instructions for using sudo chmod 666 to modify file permissions on serial device ports on macOS.
  • [EXTERNAL_DOWNLOADS]: The setup.sh script is documented to download the twozero.tox binary component from 404zero.com to the local filesystem during the automated setup process.
  • [INDIRECT_PROMPT_INJECTION]: The skill possesses a broad attack surface for indirect prompt injection. It is designed to ingest data from external network sources including WebSockets, MQTT brokers, TCP/UDP streams, and MIDI/OSC controllers. This data is frequently interpolated directly into TouchDesigner expressions or Python logic without explicit sanitization or boundary markers between data and instructions.
  • Ingestion points: Multiple network and device operators such as webclientDAT, websocketDAT, mqttClientDAT, oscinDAT, and midiinCHOP in references/external-data.md and references/midi-osc.md.
  • Boundary markers: None identified; data is typically mapped directly to parameters via expressions or script callbacks.
  • Capability inventory: Full Python execution via td_execute_python, filesystem writes via MovieFileOut and TOP.save(), and network transmission via various DAT operators.
  • Sanitization: Documentation provides minimal guidance for validating external input, primarily suggesting the use of generic try/except blocks for JSON parsing.
Audit Metadata
Risk Level
MEDIUM
Analyzed
Sep 1, 2026, 05:58 AM