Simplify Roll
simplify_rollRewrite a cymbal roll as one long tremolo note per bar, tied across barlines, to cut notation clutter while preserving the same sound.
Instructions
Rewrite a cymbal roll (a run of repeated or tied cymbal notes, e.g. a crash swell) as one long note per bar, tied across barlines, with a tremolo: the same sound with far fewer symbols. The roll starts on start_beat of start_measure (default beat 1; earlier notes in that bar stay as written) and ends at the end of end_measure, or after end_beat in it. Lengths that no single note value can hold are written as tied notes. Notes of the first chord that are not part of the roll (e.g. a kick) move to voice 2 with their own length. Refuses (changing nothing) if other notes or rests sit inside the roll or it doesn't start and end where notes do. Edits the score file and reloads it (undo with restore_backup).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"staff": "<staff>",
"start_measure": "<start_measure>",
"end_measure": "<end_measure>"
},
"name": "simplify_roll"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| drums | No | Drums that roll, e.g. ["crash"] or ["ride"] | |
| staff | Yes | Staff index (0-based) | |
| pitches | No | MIDI pitches that roll, instead of drums | |
| slashes | No | Tremolo slashes (3 = a roll) | |
| end_beat | No | Last beat of the roll in end_measure, inclusive (a beat is the time signature's denominator, e.g. an eighth in 12/8, so the first two dotted quarters are end_beat=6). Defaults to the end of the bar. | |
| score_path | No | Path of the score file. Defaults to the file of the score open in MuseScore. | |
| start_beat | No | Beat of start_measure where the roll starts (1-based, same beat unit as end_beat, so 7 is the 7th eighth in 12/8; fractions allowed). Defaults to 1. | |
| end_measure | Yes | Bar the roll ends in | |
| start_measure | Yes | Bar the roll starts in |