Skip to main content
Glama

Set up hand tracking

setup_hand_tracking

Set up real-time hand tracking from a webcam in TouchDesigner, producing a canonical CHOP with hand landmarks for gesture detection and pose skeleton creation.

Instructions

One-shot MediaPipe hand tracking from a webcam: loads the mediapipe-touchdesigner ENGINE (install with tdmcp install mediapipe-touchdesigner), starts the timeline, locates the engine's hand JSON DAT, and builds an adapter Script CHOP that converts the hand JSON into a canonical max_hands×21-landmark CHOP (channels: tx/ty/tz/confidence/handedness). Use coordinate_space='world' for gesture detection (3D, curled fingers separate in z). The output CHOP at //hand is ready for bind_to_channel or create_pose_skeleton. Shares the same engine as setup_body_tracking — both can run in the same project.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tox_pathNoPath to the MediaPipe ENGINE .tox (MediaPipe.tox). Defaults to the package staged by `tdmcp install mediapipe-touchdesigner`, falling back to ~/tdmcp-packages. The same engine is shared with setup_body_tracking.
max_handsNoMaximum number of hands tracked (1 or 2). Output CHOP allocates max_hands*21 samples.
parent_pathNoCOMP to load the engine into./project1
adapter_nameNobaseCOMP name created under parent_path to house the hand Script CHOP.mp_hand_adapter
coordinate_spaceNo'world' reads worldLandmarks (3D, meters, gesture-safe — curled fingers separate in z). 'image' reads normalised 2D landmarks, centred on the wrist. Use 'world' for gesture detection.world
Behavior4/5

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

Annotations are minimal (readOnly=false, openWorld=true, destructive=false), but the description adds substantial behavioral context: it installs/loads an engine, starts the timeline, creates a Script CHOP, and specifies the output path. This matches the annotations and gives agents a clear model of side effects without contradiction.

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

Conciseness4/5

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

Four sentences cover the full pipeline, output format, usage recommendation, and sibling relationship without fluff. It is denser than a two-sentence ideal, but every sentence earns its place and the primary action is front-loaded.

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?

For a setup tool with 5 parameters and no output schema, the description fully explains what is built, where the output lives, what channels it provides, and how it can be consumed downstream. It also covers installation and shared-engine compatibility, making it self-sufficient for an agent.

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

Parameters3/5

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

The input schema already describes all 5 parameters at 100% coverage, including defaults and coordinate_space guidance. The description reinforces key points like the output path and world-coordinate suitability but does not add significant new parameter-level detail beyond the schema.

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 description specifies a concrete pipeline: loads the MediaPipe engine, starts the timeline, locates the hand JSON DAT, and builds an adapter Script CHOP with a canonical channel layout. It also explicitly contrasts with setup_body_tracking by noting they share the same engine, distinguishing it from siblings.

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?

It gives clear usage context: one-shot webcam hand tracking setup, recommends coordinate_space='world' for gesture detection, and notes compatibility with setup_body_tracking. It does not explicitly state when to prefer alternatives like create_hand_gesture_bus or Leap Motion bridges, but the guidance is strong enough.

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