td-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| TD_HOST | No | TouchDesigner host | 127.0.0.1 |
| TD_PORT | No | WebServer DAT port | 9980 |
| TD_TIMEOUT | No | Request timeout (seconds) | 10.0 |
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| td_get_rootA | Get the actual project root path. Call this FIRST before using any other tool that requires a path. Returns the path of the top-level project COMP (e.g. "/project1" or whatever the user named it). Do not assume "/project1" — always discover the real path with this tool. |
| td_create_opA | Create a new operator in TouchDesigner. Args: parent: Parent path (e.g. "/project1") op_type: TD operator class name (e.g. "noiseCHOP", "constantTOP", "textDAT") name: Optional name for the new operator params: Optional dict of parameters to set immediately after creation nodeX: Optional X position in the network editor. Use td_find_empty_space to get a non-overlapping position. nodeY: Optional Y position in the network editor. Use td_find_empty_space to get a non-overlapping position. |
| td_delete_opA | Delete an operator. Args: path: Full path of the operator to delete (e.g. "/project1/noise1") |
| td_list_opsA | List child operators with optional filtering and pagination. Args: path: Parent path to list children of family: Filter by family (CHOP, TOP, SOP, DAT, COMP, MAT) type_filter: Filter by specific type name fields: Fields to return per op (default: name, type, family) limit: Max results (default 50) offset: Skip first N results |
| td_get_op_infoA | Get info about an operator. Returns minimal fields by default for token efficiency. Args: path: Operator path fields: Fields to return (default: name, type, family). Available: name, type, family, path, inputs, outputs, numChildren, comment, storage, tags, nodeX, nodeY |
| td_find_empty_spaceA | Find an empty (non-overlapping) position for a new operator in the network editor. Returns nodeX, nodeY coordinates that can be passed directly to td_create_op. Args: parent: Parent path to search in (e.g. "/project1") width: Estimated width of the new operator (default 200) height: Estimated height of the new operator (default 200) direction: Placement strategy — "right" (next to rightmost op), "below" (under bottommost op), or "grid" (find first free slot in grid scan) padding: Minimum gap between operators (default 50) |
| td_set_paramsA | Set multiple parameters on an operator in a single batch call. Args: path: Operator path params: Dict of parameter names to values (e.g. {"roughness": 0.5, "seed": 42}) |
| td_get_paramsA | Get parameters from an operator. Returns only non-default values by default for token efficiency. Args: path: Operator path names: Specific parameter names to retrieve (returns all values including defaults) pattern: Glob pattern to filter parameter names (e.g. "noise*") discover: If true, returns rich schema per parameter (value, default, type, min, max, page, menuNames). Use this to discover available parameter names and their types for an unfamiliar operator. page: Page number for paginated results (50 params per page) |
| td_connectC | Connect two operators. Args: from_op: Source operator path to_op: Destination operator path from_index: Output connector index on source (default 0) to_index: Input connector index on destination (default 0) |
| td_disconnectA | Disconnect an operator's connector. Args: path: Operator path connector: "input" or "output" (default "input") index: Connector index (default 0) |
| td_executeC | Execute Python code inside TouchDesigner. Args: code: Python code to execute in TD's main thread return_expression: Optional expression to evaluate and return after execution |
| td_get_screenshotA | Get a screenshot of a TOP operator as base64 image. Args: path: Path to a TOP operator width: Output width in pixels (default 640, height auto-scaled) format: Image format — "jpeg" (default, smaller) or "png" |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/tai5863/td-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server