mcp_opendaw_explode_chords
Split chord tracks into separate voice parts by distributing each chord's notes across tracks, converting progressions into individual instrumental lines.
Instructions
Explode chords into separate voice tracks.
Takes a chord track and splits each chord into individual voices, distributing them to separate tracks. The lowest note of each chord goes to voice 1 (bass), the next to voice 2, etc. This is the fundamental orchestration technique — converting a chord progression into individual instrumental parts.
Typical use: piano chord track → bass + cello + viola + violin. Or: synth chords → sub bass + pad + lead + pluck.
Args: unit_index: Source AU index with chord track track_index: Source note track index with chords region_index: Source region index (-1 = first region) num_voices: Number of voices to split into (2-8, default 4). Chords with fewer notes than num_voices get rests in higher voices. Chords with more notes than num_voices get extra notes merged into the highest voice. direction: Voice assignment order — "down": lowest note → voice 1 (bass), ascending voices "up": highest note → voice 1 (top), descending voices "outward": middle notes → outer voices, edge notes → inner target_units: Comma-separated AU indices for destination tracks. If empty, creates new AUs automatically. If provided, must have at least num_voices entries (e.g. "0,1,2,3"). velocity_balance: How to distribute velocity across voices — "natural": lower voices slightly louder (bass prominence) "equal": all voices same velocity "top_heavy": upper voices louder (melody prominence) "fade": velocity decreases from voice 1 to voice N
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| direction | No | down | |
| num_voices | No | ||
| unit_index | Yes | ||
| track_index | Yes | ||
| region_index | No | ||
| target_units | No | ||
| velocity_balance | No | natural |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |