Skip to main content
Glama

Connect Companion OSC surface

connect_companion_surface

Build a Companion-style OSC button surface in TouchDesigner: maps incoming button addresses to Select/Null CHOP rows, binds optional target parameters, and configures OSC feedback with a mapping table.

Instructions

Build an OSC Companion-style button surface inside TouchDesigner: an OSC In CHOP listens for button addresses, each button gets a Select CHOP and Null CHOP row, optional target parameters are expression-bound, and an OSC Out CHOP is configured for feedback. A mapping table records label/address/target/mode/feedback for later editing.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameNoName of the Companion OSC surface baseCOMP.companion_surface
buttonsNoButton mappings to create as Select CHOP -> Null CHOP rows.
listen_portNoLocal OSC port for Companion/button input.
parent_pathNoParent COMP where the companion surface baseCOMP is created./project1
feedback_hostNoRemote host that receives outgoing OSC feedback.127.0.0.1
feedback_portNoRemote OSC port that receives outgoing feedback.
create_mapping_datNoCreate/populate a tableDAT listing label, address, target, mode, and feedback.
Behavior4/5

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

Annotations only indicate readOnly=false, destructive=false, openWorld=true. The description adds behavioral context by detailing the internal structure: OSC In CHOP listens, each button gets Select/Null CHOP rows, optional target parameters are expression-bound, and an OSC Out CHOP is configured for feedback. It also discloses that a mapping table records entries for later editing, which is useful beyond the annotations.

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?

The description is one long sentence, but it is information-dense and front-loaded with the main action ('Build an OSC Companion-style button surface'). It packs multiple clauses and a mapping table mention without excessive fluff, though it is slightly verbose and could be split for readability.

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

Completeness4/5

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

For a tool with 7 parameters and no output schema, the description covers the overall build process, the CHOP structure, and the mapping table outcome, which is sufficient for an agent to understand the tool's role. It does not explain prerequisites like existing TouchDesigner connection or behavior on name conflicts, but the schema handles parameter details. Given the complexity, the description is complete enough.

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 has 100% description coverage for all 7 parameters, including nested button objects with mode, label, target, address, feedback_channel. The description itself references the target and mapping table fields (label/address/target/mode/feedback), reinforcing but not extending the schema. Per the baseline, a score of 3 is appropriate.

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

Purpose4/5

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

The description uses the verb 'Build' with a specific resource: 'OSC Companion-style button surface inside TouchDesigner'. It enumerates key components (OSC In CHOP, Select CHOP, Null CHOP, OSC Out CHOP) and a mapping table, clearly stating the tool's function. It does not explicitly differentiate from sibling tools like 'create_companion_surface' or 'create_control_surface', so it misses the top score.

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

Usage Guidelines3/5

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

The description implies usage by explaining the architecture and the mapping table for later editing, but it does not instruct when to use this tool over alternatives such as 'create_control_surface' or 'create_companion_surface'. There is no explicit exclusions or when-not-to-use guidance.

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/Pantani/tdmcp'

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