Skip to main content
Glama

Create envelope follower

create_envelope_follower

Create a reactive envelope follower from a CHOP channel, providing gate or ducking sidechain effects with adjustable attack, release, and threshold for dynamic audio control.

Instructions

EXPERIMENTAL — Build a reactive signal-shaping chain (attack/release envelope + threshold gate or sidechain ducking) from a CHOP channel, for 'pump the whole layer on every kick' or similar sidechain effects. Creates a container with: a Select CHOP isolating the source channel by absolute path (no cross-container wire), a Lag CHOP shaping the attack/release envelope, a Logic+Math CHOP threshold gate (gate mode: silence the output below threshold) or an inverted Math CHOP (duck mode: output dips to 0 on a hit, rises on silence — classic sidechain pumping), and a Null CHOP as the stable output handle. Optionally binds the shaped output to target parameters by expression. The gate threshold uses a Logic CHOP whose par names (convert/boundmin/boundmax) match detect_onsets — but these are UNVERIFIED across TD builds; gate reads near 0 at the 0.2 default with most sources — tune threshold live. Use bind_to_channel with attack/release for a simpler Lag-only envelope without a gate.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
parent_pathNoWhere to build the follower chain (a COMP path, e.g. '/project1')./project1
nameNoBase name for the container COMP that holds the chain.envelope_follower
source_chopYesPath of the CHOP carrying the trigger channel (e.g. '/project1/audio/features' or an onset Null).
channelYesChannel name to follow from source_chop (e.g. 'bass', 'kick', 'level'). The Select CHOP isolates it by name.
attackNoEnvelope rise time in seconds — how quickly the output climbs after a hit (fast = punchy, e.g. 0.001–0.05).
releaseNoEnvelope fall time in seconds — how slowly the output decays after the signal drops (slow = smooth tail, e.g. 0.1–0.8).
thresholdNoGate threshold [0–1]. Below this level the output is silenced (gate) or held at 1 (duck). Start low (0.05–0.2) and raise if false triggers occur. NOTE: gate thresholding uses a Logic CHOP whose par names may vary by TD build — EXPERIMENTAL.
modeNogate: pass the shaped envelope only while it is above threshold — silences the output when the signal is quiet. duck: sidechain/ducking — the output dips toward 0 on every hit and returns to 1 on silence (inverted gate, classic pumping compressor feel).gate
targetsNoOptional list of 'nodePath.parName' targets to bind to the shaped envelope output by expression. Omit to just build the chain (the Null CHOP output can be bound later with bind_to_channel).
Behavior5/5

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

The description fully discloses the tool's behavior: it creates a container with specific CHOPs (Select, Lag, Logic+Math or inverted Math, Null), explains gate vs duck modes, and notes the threshold logic is experimental. Since annotations provide only high-level hints (readOnlyHint=false, destructiveHint=false, openWorldHint=true), the description carries the full burden and does so thoroughly, with no contradictions.

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 information-dense and well-structured, starting with a clear purpose, then detailing the chain and parameters, followed by warnings and alternatives. It is somewhat long but every sentence earns its place. Minor redundancy could be trimmed, but overall it's effective.

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 tool's complexity (9 parameters, no output schema, experimental status), the description is highly complete. It covers what the tool creates, how it works, parameter tuning, mode differences, and alternative tools. No critical information is missing for correct usage.

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?

All 9 parameters are documented in the input schema (100% coverage). The description adds value by explaining the role of each parameter in the signal chain, providing tuning guidance (e.g., attack/release times, threshold start low), and clarifying the gate/duck difference. This goes beyond the schema's field descriptions, though some redundancy exists.

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 identifies the tool as building a reactive signal-shaping chain (attack/release envelope + gate/duck) from a CHOP channel for sidechain effects like 'pump the whole layer on every kick'. The verb 'create' and resource 'envelope follower' are specific, and the use case is well-defined, distinguishing it from sibling tools like bind_audio_reactive or create_audio_reactive.

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 explicitly states when to use this tool ('for sidechain effects' and 'pump the whole layer on every kick') and provides an alternative: 'Use bind_to_channel with attack/release for a simpler Lag-only envelope without a gate.' It also warns about the experimental nature and unverified parameter names, setting correct expectations.

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