Skip to main content
Glama

Manage a temporary artist workspace

manage_artist_workspace

Open, inspect, restore, or cancel a bounded TouchDesigner editor workspace with safe main-thread UI access and compare-and-swap restoration.

Instructions

Open, inspect, restore, or cancel one bounded TouchDesigner editor workspace using an existing Network Editor plus one right-hand TOP Viewer or Panel split. The bridge schedules every UI access on the TD main thread, keeps only JSON job state, uses compare-and-swap restoration, and fails closed in Perform/headless/conflicted states. It never opens arbitrary UI, creates project operators, adds graph undo, or falls back to raw Python; the authenticated structured routes work with ALLOW_EXEC=0.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
split_ratioNoShare of the existing Network Editor after the right-hand split.
viewer_modeNoUse a bounded TOP Viewer or Panel pane; arbitrary pane types are not accepted.
viewer_pathNoExact TOP output or panel-capable COMP to show.
network_pathNoExplicit COMP to show in the existing Network Editor.
workspace_idNo
lease_secondsNoBounded lease before compare-and-swap cleanup is attempted.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionYes
reasonYes
statusYes
cleanupYes
targetsYes
baselineYes
warningsYes
workspaceYes
created_atYes
expires_atYes
owned_paneYes
undo_labelYes
source_paneYes
deduplicatedYes
workspace_idYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations only indicate not read-only and open world; the description adds rich behavioral detail beyond that: 'schedules every UI access on the TD main thread, keeps only JSON job state, uses compare-and-swap restoration, and fails closed in Perform/headless/conflicted states.' It also states 'authenticated structured routes work with ALLOW_EXEC=0,' disclosing a key execution restriction. No contradiction with annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is three sentences, front-loaded with the core purpose, followed by implementation details and boundaries. Every sentence earns its place with no filler, making it dense but efficiently structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the complexity (7 params, 4 actions, output schema present), the description covers critical context: safety model (fails closed), threading (main thread), state persistence (JSON only), restoration mechanism (compare-and-swap), and execution restrictions (ALLOW_EXEC=0). It does not need to describe return values because an output schema exists.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 71%, so the schema already explains most parameters. The description adds semantic context by clarifying the 'right-hand' split (viewer_mode) and 'bounded'/'temporary' nature (lease_seconds). It does not duplicate all schema details but enhances understanding of the action enum and the workspace lifecycle.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The first sentence precisely states the tool's function: 'Open, inspect, restore, or cancel one bounded TouchDesigner editor workspace using an existing Network Editor plus one right-hand TOP Viewer or Panel split.' It names the specific resource (workspace) and actions (open/inspect/restore/cancel), and differentiates from siblings by defining its bounded scope and constraints (e.g., 'never opens arbitrary UI, creates project operators, adds graph undo').

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description clearly implies usage for creating/managing a temporary, safe workspace and provides strong exclusions: 'It never opens arbitrary UI, creates project operators, adds graph undo, or falls back to raw Python.' It also notes when it fails closed (Perform/headless/conflicted states), giving practical context, but it does not explicitly name alternative tools or provide an explicit 'use this when' statement.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/lucasmaher-hash/touch-designer-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server