/ 디렉터리 / 플레이그라운드 / TouchDesigner MCP
● 커뮤니티 8beeeaaat 🔑 본인 키 필요

TouchDesigner MCP

제작: 8beeeaaat · 8beeeaaat/touchdesigner-mcp

AI 기반 TouchDesigner 제어 - 에이전트는 노드를 생성하고, 매개변수를 조정하고, Python을 실행하고, 로컬 WebServer DAT 브리지를 통해 오류를 읽습니다.

touchdesigner-mcp를 사용하면 에이전트가 MCP를 통해 실행 중인 TouchDesigner 프로젝트를 운영할 수 있습니다. 12개의 도구는 노드 나열/생성/삭제, 매개변수 설정, TouchDesigner에서 임의 Python 실행, 환경 검사(클래스 카탈로그, 노드 오류, 모듈 도움말) 등 필수 사항을 다룹니다. TouchDesigner 내부의 WebServer DAT(mcp_webserver_base.tox, API ≥1.3.0)는 포트 9981에서 수신 대기합니다. MCP 서버는 HTTP를 통해 서버와 통신합니다. TouchDesigner 내부에 AI 페어 프로그래머를 원하는 모션 디자이너, 라이브 비주얼 아티스트, 설치 엔지니어를 대상으로 합니다.

왜 쓰나요

핵심 기능

라이브 데모

실제 사용 모습

touchdesigner-mcp.replay ▶ 준비됨
0/0

설치

클라이언트 선택

~/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"
      }
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config 열기. 저장 후 앱 재시작.

~/.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는 Claude Desktop과 동일한 mcpServers 스키마 사용. 프로젝트 설정이 전역보다 우선.

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"
      }
    }
  }
}

Cline 사이드바의 MCP Servers 아이콘 클릭 후 "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"
      }
    }
  }
}

Claude Desktop과 같은 형식. Windsurf 재시작 후 적용.

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

Continue는 맵이 아닌 서버 오브젝트 배열 사용.

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

context_servers에 추가. 저장 시 Zed가 핫 리로드.

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

한 줄 명령. claude mcp list로 확인, claude mcp remove로 제거.

사용 사례

실전 활용법: TouchDesigner MCP

간략한 내용에서 스타터 TouchDesigner 패치를 발판으로 삼으세요.

👤 모션 디자이너 및 비주얼 엔지니어 프로토타이핑 ⏱ ~30 min intermediate

언제 쓸까: 새 패치를 시작하고 수동으로 조정하기 전에 뼈대를 제자리에 두기를 원합니다.

사전 조건
  • mcp_webserver_base.tox가 로드된 상태로 실행 중인 TouchDesigner — tox를 다운로드하고 프로젝트에 들어가서 포트를 9981로 설정하십시오.
  • API 버전 ≥ 1.3.0 — TouchDesigner 버전 확인
흐름
  1. 패치 설명
    생성적 시각적 패치 스캐폴드: 오디오 반응성 파티클(노이즈 → 인스턴싱), 후처리 블룸, 1080p 출력.✓ 복사됨
    → 에이전트는 명명된 연산자를 사용하여 일관된 노드 그래프를 생성합니다.
  2. 오류 수정
    TD 오류를 보고하고 수정하세요.✓ 복사됨
    → get_td_node_errors 사용, 매개변수 수정, 반복

결과: 처음부터 드래그하는 대신 작동하는 시작 패치를 조정하면 됩니다.

함정
  • 에이전트가 존재하지 않는 연산자를 발명합니다. — get_td_classes를 먼저 호출하고 실제 클래스 이름을 고수하십시오.
함께 쓰기: filesystem

매개변수 스윕 및 시각적 출력 비교

👤 아티스트 튜닝 룩 ⏱ ~20 min intermediate

언제 쓸까: TD UI를 클릭하지 않고 매개변수 범위를 탐색하려고 합니다.

흐름
  1. 스윕 설명
    노이즈1에서 스윕 주기=0.2,0.5,1.0,2.0 및 고조파=1,2,4. renderpick1을 통해 각각의 스냅샷을 찍습니다.✓ 복사됨
    → 스냅샷 저장을 위해 update_td_node_parameters 및execute_python_script를 사용합니다.
  2. 승자의 이름을 지정하세요
    저는 주기=1.0 고조파=2를 좋아했습니다. 프로젝트를 적용하고 저장합니다.✓ 복사됨
    → 매개변수 설정, Python exec를 통해 저장된 프로젝트

결과: 더 빠른 반복; 지루한 조합 클릭 작업이 사라졌습니다.

함정
  • TD의 메인 스레드를 차단하는 긴 Python 스크립트 — 단기 실행 호출로 분할하거나 Execute DAT 내에서 실행

상담원에게 문의하여 TouchDesigner의 Python API를 알아보세요.

👤 TouchDesigner의 Python을 처음 사용하는 디자이너 ⏱ ~10 min beginner

언제 쓸까: 스크립트 CHOP/DAT를 작성 중이며 호출할 메서드를 알아야 합니다.

흐름
  1. 수업을 요청하세요
    걷는 아이들을 위한 'Op' 클래스에는 어떤 방법이 있나요?✓ 복사됨
    → 에이전트는 get_td_class_details를 호출하고 실제 메서드를 반환합니다.
  2. 실행 가능한 예제 보기
    모든 하위 항목의 경로를 기록하는 짧은 Python 조각을 표시합니다.✓ 복사됨
    → 스니펫은 꾸며낸 메소드가 아닌 실제 API를 사용합니다.

결과: 라이브 TouchDesigner 인스턴스를 기반으로 한 정확한 Python 예제입니다.

조합

다른 MCP와 조합해 10배 효율

touchdesigner-mcp + filesystem

스냅샷/렌더링을 디스크에 저장하고 다음 차례에 참조

각 매개변수를 설정한 후 renderpick1을 통해 ~/td-snapshots/에 PNG를 저장하고 매니페스트를 다시 읽습니다.✓ 복사됨
touchdesigner-mcp + xcodebuild

macOS 키오스크용 렌더링 및 패키지

xcodebuild를 통해 출력 및 패키지를 macOS 앱 번들로 렌더링합니다.✓ 복사됨
touchdesigner-mcp + filesystem

프로젝트 상태를 git-trackable .toe 내보내기로 보관

현재 프로젝트를 .toe로 내보내고 커밋합니다.✓ 복사됨

도구

이 MCP가 노출하는 것

도구입력언제 호출비용
create_td_node parent_path, type, name? 새 연산자 추가 0
delete_td_node path 운영자 제거 0
update_td_node_parameters path, params map 노드에 하나 이상의 매개변수 설정 0
get_td_nodes filter? 필터와 일치하는 노드 열거 0
get_td_node_parameters path 현재 매개변수 값 읽기 0
get_td_node_errors (none) 현재 프로젝트에서 문제를 찾아 수정하세요. 0
execute_python_script script: str 다른 도구가 다루지 않는 모든 것을 위한 탈출구 0
exec_node_method path, method, args 노드에서 특정 메소드 호출(예: .cook()) 0
get_td_classes (none) 선택할 수 있는 수업 나열 0
get_td_class_details class_name 실제 API 표면에서 Python 제안 제공 0
get_module_help module_name 모듈 독스트링 검색 0
get_td_info (none) TD 버전 및 서버 상태 확인 0

비용 및 제한

운영 비용

API 쿼터
없음
호출당 토큰
소형: 노드 경로 + 소형 매개변수 맵
금액
무료; TouchDesigner 라이센스가 적용됩니다
많은 단일 매개변수 호출 대신 맵이 있는 update_td_node_parameters를 선호합니다.

보안

권한, 시크릿, 파급범위

자격 증명 저장: 자격 증명 없음
데이터 외부 송신: HTTP에서 127.0.0.1로:<포트>. WebServer DAT를 공용 네트워크에 노출하지 마십시오.

문제 해결

자주 발생하는 오류와 해결

ECONNREFUSED 127.0.0.1:9981

TouchDesigner가 실행되고 있지 않거나 WebServer DAT가 활성화되어 있지 않습니다. Tox를 열고 활성화되어 있는지 확인하세요.

확인: In TD console: op('mcpwebserver').par.active.eval()
API 버전이 너무 낮음

TouchDesigner를 API가 1.3.0 이상인 빌드로 업그레이드하세요.

확인: Help → About TouchDesigner
Python 실행이 자동으로 실패함

역추적을 위해 TD 텍스트 포트를 확인하십시오. 일부 작업은 뷰어에 연결되어 있을 때만 요리합니다.

확인: Alt-T opens the textport

대안

TouchDesigner MCP 다른 것과 비교

대안언제 쓰나단점/장점
unrealTouchDesigner 패치가 아닌 Unreal Engine 장면을 구동하고 있습니다.다른 런타임; 다른 DCC
unityUnity는 타겟 엔진입니다.완전히 다른 DCC
godot-mcp-pro-2Godot는 당신의 엔진입니다다른 DCC

더 보기

리소스

📖 GitHub에서 공식 README 읽기

🐙 열린 이슈 보기

🔍 400+ MCP 서버 및 Skills 전체 보기