Command line
clip list
List clips for a track
Track number (1-based: 1, 2, … or first, second, …)
clip get
Get a clip by track and scene index
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
clip create
Create a clip
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
Clip length in bars (default: 4)
clip delete
Delete a clip
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
clip fire
Fire a clip
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
clip rename
Rename a clip by track and scene index
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
New clip name
clip envelope get
Read automation envelope(s) on a session-view clip
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
--device
Device ID, 1-based position number, or name substring. Provide together with —param, or omit both for a bulk read of every envelope on the clip.
--param
Parameter index (from ‘vibrai automation params’) or display name. Provide together with —device, or omit both for a bulk read.
clip envelope write
Write an automation envelope onto a session-view clip
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
Device ID, 1-based position number, or name substring
Parameter index from ‘vibrai automation params’, or the param name (e.g., “Cutoff”)
--json-data
Automation points as JSON array (free-form). Mutually exclusive with —curve.
--file
Path to JSON file containing automation points array. Mutually exclusive with —curve.
--curve
Curve shape: LinearUp|LinearDown|ExpUp|ExpDown|Sine|Triangle|SawUp|SawDown|Hold|Wander. Mutually exclusive with —json-data/—file.
--length
Curve length in beats. Required when —curve is given.
--from
Curve start value (for Linear/Exp/Sine/Triangle/Saw/Hold).
--to
Curve end value (for Linear/Exp/Sine/Triangle/Saw).
--subdivisions
Number of teeth (for SawUp/SawDown only). Default 4.
--center
Wander center value.
--range
Wander deviation amplitude.
--smoothness
Wander knot density (0=jittery, 1=lazy drift).
--seed
Wander RNG seed. Auto-generated if omitted.
clip envelope clear
Clear automation envelope(s) on a session-view clip
Track number (1-based: 1, 2, … or first, second, …)
Scene number (1-based: 1, 2, … or first, second, …)
--device
Device ID, 1-based position number, or name substring. Provide together with —param, or omit both to clear every envelope on the clip.
--param
Parameter index or display name. Provide together with —device, or omit both to clear every envelope on the clip.
MCP tools
list_clips
List all clip slots for a track. Empty slots are included as empty entries. Returns clip metadata only — notes are stripped for performance; call get_clip for note detail.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
get_clip
Get a single clip by track and scene. Returns null if the slot is empty. Includes the clip’s notes; use list_clips for a notes-less summary across a track.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number (1-based: 1, 2, … or ‘first’, ‘second’, …)
create_clip
Create an empty MIDI clip at the given track and scene.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Clip length in bars (e.g. 4.0)
delete_clip
Delete the clip at the given track and scene.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number (1-based: 1, 2, … or ‘first’, ‘second’, …)
fire_clip
Trigger the clip at the given track and scene.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number (1-based: 1, 2, … or ‘first’, ‘second’, …)
set_clip_name
Rename the clip at the given track and scene.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number (1-based: 1, 2, … or ‘first’, ‘second’, …)
New clip name
get_clip_envelopes
Read automation envelope(s) on a session-view clip. Omit both deviceId and paramId for a bulk read of every envelope on the clip; supply BOTH to read one specific (device, param) envelope. Supplying exactly one is an error.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number of the clip carrying the envelope(s) (1-based: 1, 2, … or ‘first’, ‘second’, …)
Device ID or 1-based position number or name substring. Provide together with paramId, or omit both for a bulk read of every envelope on the clip.
Parameter index (from list_automation_params .param_id column) OR the parameter’s display name. Provide together with deviceId, or omit both for a bulk read.
write_clip_envelope
Write an automation envelope onto a session-view clip (replaces existing points). Provide EITHER points (free-form) OR curve_spec (compact shape — Sine, Wander, etc — expanded server-side). Returns the readback so you can verify what landed.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number of the clip that should carry the envelope (1-based: 1, 2, … or ‘first’, ‘second’, …)
Device ID or 1-based position number or name substring
Parameter index (from list_automation_params .param_id column) OR the parameter’s display name (.param_name column)
Automation points (time + value). Mutually exclusive with curve_spec.
Compact curve specification. Mutually exclusive with points. Shape can be LinearUp/LinearDown/ExpUp/ExpDown/Sine/Triangle/SawUp/SawDown/Hold/Wander.
clear_clip_envelopes
Clear automation envelope(s) on a session-view clip. Supply BOTH deviceId and paramId to remove one specific envelope; omit BOTH to remove every envelope on the clip. Supplying exactly one is an error.
Track number (1-based: 1, 2, … or ‘first’, ‘second’, …)
Scene number of the clip (1-based: 1, 2, … or ‘first’, ‘second’, …)
Device ID or 1-based position number or name substring. Provide together with paramId, or omit both to clear every envelope on the clip.
Parameter index or display name. Provide together with deviceId, or omit both to clear every envelope on the clip.