mcp_opendaw_analyze_harmonic_rhythm
Analyze harmonic rhythm from MIDI notes to determine chord change positions, durations, rate, and density, classifying sections as stable or active for arrangement insights.
Instructions
Analyze harmonic rhythm — how fast chords change and where.
Identifies chords from MIDI notes (same logic as identify_chords), then analyses the rhythm of chord changes:
Chord change positions: exact beat where each new chord starts
Chord durations: how long each chord lasts (in beats and bars)
Harmonic rhythm rate: fast (<2 bars), medium (2-4 bars), slow (>4 bars)
Harmonic density: chords per bar
Chord sequence: ordered list of chords with durations
Stable sections: where harmony stays the same for 4+ bars
Active sections: where chords change every bar or faster
Total harmonic events: number of distinct chord changes
This complements identify_chords (which lists chords) by focusing on the temporal pattern of harmony — essential for understanding arrangement, predicting where tension builds, and planning variations.
Use with:
analyze_song_structure (structure + harmonic rhythm = full form picture)
reharmonize_progression (know what to reharmonize and where)
create_arrangement_variation (match or contrast harmonic rhythm)
unit_index: AU index. track_index: Note track index. region_index: Region index (-1 = first, -2 = all regions on track). group_tolerance: Beats of tolerance for grouping notes (default 0.25). min_notes: Minimum notes for chord identification (default 3).
Returns harmonic rhythm analysis with chord timeline and section classification.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| min_notes | No | ||
| unit_index | Yes | ||
| track_index | Yes | ||
| region_index | No | ||
| group_tolerance | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |