mcp_opendaw_repeat_phrase
Repeat a melodic phrase with transposition to create musical sequences. Each repetition shifts pitch by a chosen interval, producing ascending or descending melodic chains.
Instructions
Repeat a melodic phrase N times with transposition — melodic sequence.
A sequence is one of the most powerful development techniques in Western music: repeat a melodic idea at different pitch levels. Each repetition is transposed by a fixed interval, creating a chain of related but evolving phrases.
Unlike repeat_notes (which repeats individual notes), create_sequence copies an entire phrase — all notes in the source region — and places each copy after the previous one, transposed and optionally with velocity and timing transformations.
Diatonic transposition moves through the scale (preserving scale membership), while chromatic transposition shifts by exact semitones. Sequences can ascend or descend, accelerating or decelerating.
Bach fugues, jazz ii-V-I chains, pop chorus lifts, film score ostinato builds, and minimalistic pattern music all use sequences.
Args: unit_index: Audio unit index track_index: Note track index with source phrase region_index: Region index (-1 = first region) repetitions: Number of sequence copies (2-16, default 4). Each copy is placed after the previous one in time. transpose_semitones: Transposition interval per repetition (1-12, default 2 = step). Positive = ascending, negative = descending. Used as scale steps in diatonic mode, exact semitones in chromatic mode. transpose_mode: Transposition method — "diatonic": move through scale (preserves scale membership) "chromatic": shift by exact semitones (may leave scale) scale: Scale for diatonic transposition ("major", "minor", "dorian", "phrygian", "lydian", "mixolydian", "locrian", "harmonic_minor", "melodic_minor", "pentatonic", "blues", "chromatic") root: Root note for scale velocity_pattern: Velocity transformation across repetitions — "constant": same velocity as source "crescendo": linear ramp from velocity_start to velocity_end "decrescendo": linear ramp from velocity_end to velocity_start "fade_out": each repetition softer than previous "build": exponential increase, climax at last repetition velocity_start: Starting velocity (0-1, default 0.8) velocity_end: Ending velocity (0-1, default 0.8) time_stretch: Duration multiplier per repetition (0.5-2.0, default 1.0 = same duration). 0.5 = accelerating, 2.0 = slowing down. Creates rhythmic sequences. cross_track: If >= 0, place sequences on this track index instead of source track (preserves original phrase).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| root | No | C | |
| scale | No | major | |
| unit_index | Yes | ||
| cross_track | No | ||
| repetitions | No | ||
| track_index | Yes | ||
| region_index | No | ||
| time_stretch | No | ||
| velocity_end | No | ||
| transpose_mode | No | diatonic | |
| velocity_start | No | ||
| velocity_pattern | No | constant | |
| transpose_semitones | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |