mcp_opendaw_create_fugato
Generate a fugato passage with subject entries and imitation, including countersubject and episode sections, for fugue composition.
Instructions
Create a fugato — a fugal passage with subject entries and imitation.
A fugato is a fugal section (not a full fugue) that features subject entries in imitation: the subject is stated, then answered at a different pitch level, with optional countersubject and episodic material between entries. This is the building block of fugue writing — Bach, Handel, Shostakovich fugato passages.
Unlike create_voice_exchange (transforms existing notes between tracks), fugato generates the entire fugal texture from scratch:
Subject: the main theme (custom or auto-generated)
Answer: subject restated at answer_interval (real or tonal)
Countersubject: a counter-melody against the answer
Episode: connecting material between entries (sequenced motives)
Answer modes: real — exact transposition of the subject tonal — adjusted to stay within the key (5th scaled down)
Args: root: Root note name (C, C#, D, ...). scale: Scale name (major, minor, dorian, etc.). subject_notes: Custom subject as JSON array of [pitch_offset, duration_beats]. If empty, auto-generates a subject. pitch_offset is semitones from root. Example: [[0, 0.5], [2, 0.5], [5, 1.0], [4, 0.5], [2, 0.5], [0, 1.0]] bars: Total length in bars (4-16). octave: Starting MIDI octave (2-6). voices: Number of voices (2-4). answer_interval: Transposition interval for the answer in semitones. Default 7 = perfect fifth (standard fugue answer). answer_mode: Answer type (real or tonal). include_countersubject: If True, generates a countersubject. countersubject_interval: Starting interval of countersubject from answer pitch (semitones, can be negative). include_episode: If True, generates episodic material between entries. episode_bars: Length of episode sections in bars (1-4). velocity: Base velocity 0-1. unit_index: AU index. track_index: Note track index. start_beat: Starting beat position.
Returns notes created, subject preview, voice entries, and fugato structure.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bars | No | ||
| root | No | C | |
| scale | No | minor | |
| octave | No | ||
| voices | No | ||
| velocity | No | ||
| start_beat | No | ||
| unit_index | No | ||
| answer_mode | No | real | |
| track_index | No | ||
| episode_bars | No | ||
| subject_notes | No | ||
| answer_interval | No | ||
| include_episode | No | ||
| include_countersubject | No | ||
| countersubject_interval | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |