Skip to main content
Glama

Make a component react to audio

bind_audio_reactive

Bind audio feature channels (level, bass, mid, treble) to numeric custom parameters of a COMP, enabling music-reactive visual control. Supports auto-mapping by knob name or explicit parameter-channel bindings with scale and offset.

Instructions

Make a whole COMP react to the music in one call — the core VJ move. Point target at a COMP with numeric custom-parameter knobs and source_chop at an audio-feature CHOP (e.g. an extract_audio_features Null carrying level/bass/mid/treble), and each knob is switched to expression mode tracking an audio band. Omit mappings to auto-map knobs by name heuristic (bright/level/opacity→level, scale/size/zoom→bass, hue/color→treble, speed/rate/rot→mid; unrecognized knobs are skipped), or pass explicit param→channel bindings with per-binding scale/offset. By default appends a master 'Reactivity' float knob (0–2, default = intensity) that scales every binding so the artist can dial the whole network's reactivity from one control. Fail-forward: a missing source CHOP, an absent channel, or an already-bound parameter are warnings, not failures — only a missing/non-COMP target is fatal. Build the feature CHOP with extract_audio_features first; use bind_to_channel for finer single-parameter control.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetYesCOMP whose numeric custom parameters (knobs) should react to the music.
source_chopYesCHOP carrying audio feature channels (e.g. an extract_audio_features Null). Expected channels: level, bass, mid, treble.
intensityNoMaster reactivity amount (0=off, 1=normal, 2=strong) — scales every binding.
mappingsNoExplicit param→channel bindings. Omit to auto-map the target COMP's numeric custom parameters by name heuristics.
add_masterNoAppend a 'Reactivity' master float knob (0-2, default = intensity) on the target COMP that scales every binding.
Behavior5/5

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

Adds value beyond annotations by detailing that knobs are switched to expression mode, a master knob is appended, and fail-forward behavior (warnings for missing source/channel, fatal only for missing/non-COMP target). Annotations only indicate non-readonly, non-destructive, open-world.

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?

Single paragraph packs much information efficiently. Somewhat dense but no wasted sentences. Could be slightly structured with bullets for readability, but remains concise and 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?

Covers all essential aspects: purpose, usage, parameters, auto-mapping, master knob, failure modes, prerequisites (extract_audio_features). No output schema, but fail-forward behavior implies return. Completeness is high for a complex tool.

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?

Despite 100% schema coverage, description adds significant meaning: auto-mapping heuristic (e.g., bright->level, scale/size->bass), intensity scales all bindings, add_master appends master knob. Schema descriptions are minimal; this enriches them.

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?

Description clearly states it makes a COMP react to audio in one call, specifying the core VJ move. It distinguishes from sibling tool bind_to_channel which offers finer single-parameter control.

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?

Explicitly describes when to use (core VJ move), contrasts with bind_to_channel, and provides setup instructions (build feature CHOP with extract_audio_features first). Explains auto-mapping vs explicit mappings and failure modes.

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