Skip to main content
Glama

Map live data channels onto visual params

create_data_reactive

Map live external data (weather, sensors, OSC) to COMP custom numeric parameters with configurable input-output ranges and smoothing to prevent jitter.

Instructions

Wire arbitrary external data (weather, follower count, sensor readings, OSC values) onto a COMP's custom numeric parameters — the data counterpart to bind_audio_reactive. Point target at a COMP with numeric custom-parameter knobs, source_chop at a live-data CHOP (e.g. a create_data_source Null), and provide explicit mappings (data channel → param name) each with an input range [in_min, in_max] and output range [out_min, out_max] so the data is correctly re-mapped to the parameter's visual range. Set smooth > 0 to insert a Lag CHOP (symmetric attack+release) so noisy or jittery data does not flicker the visuals. Fail-forward: a missing source CHOP or absent channel are warnings — only a missing/non-COMP target is fatal. Build the data CHOP first with create_data_source; use bind_to_channel for finer single-parameter control.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetYesCOMP whose numeric custom parameters should react to the data.
source_chopYesCHOP carrying the live data channels (e.g. a create_data_source Null). Channels can be weather values, follower counts, sensor readings, etc.
mappingsYesExplicit data→param mappings with per-mapping range remap. Data is rarely 0–1, so set in_min/in_max to the real data range for correct visual mapping.
smoothNoSymmetric smoothing in seconds (Lag CHOP) applied to all channels so noisy data does not jitter visuals. 0 = no smoothing.
Behavior5/5

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

Annotations indicate readOnlyHint=false (writes) and destructiveHint=false (non-destructive). The description adds important behavioral context: smoothing via Lag CHOP, fail-forward error handling (missing source CHOP as warning, missing target as fatal), and the relationship to bind_audio_reactive. No contradictions 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 a single focused paragraph with no redundant information. Every sentence serves a purpose: defining purpose, usage steps, parameter guidance, smoothing, error handling, prerequisites, and alternatives. It is front-loaded with the core concept and efficiently covers all necessary aspects.

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 absence of an output schema, the description adequately conveys what the tool does (creates a reactive mapping) and its effects. It references prerequisites (create_data_source) and alternatives (bind_to_channel). It covers error behavior, parameter ranges, and smoothing, making it complete for an agent to use correctly.

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

Parameters5/5

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

All 4 parameters have schema descriptions (100% coverage), but the description adds significant value: it explains the remapping purpose of in_min/in_max, the smoothing behavior of smooth, and the fail-forward aspect. It also provides example data types (weather, follower count, etc.) and clarifies that data is rarely 0-1, guiding correct usage.

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 clearly states that the tool wires external data onto a COMP's numeric custom parameters, using a specific verb 'wire' and identifies it as the data counterpart to bind_audio_reactive. It distinguishes itself from siblings like bind_to_channel (finer single-parameter control) and bind_audio_reactive (audio counterpart).

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

Usage Guidelines5/5

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

The description provides explicit usage steps: point target at a COMP with numeric knobs, source_chop at a live-data CHOP, and provide mappings with range remap. It recommends using create_data_source first and suggests bind_to_channel for finer control. It also clarifies error behavior (warnings vs fatal) and the effect of the smooth parameter.

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