Generate Arpeggio MIDI
Tool name: generate-arpeggio-midi
Renders a chord as a sixteenth-note arpeggio MIDI file (SMF1, 480 PPQ, 4/4) using the chosen pattern.
Annotations
Section titled “Annotations”| Hint | Value |
|---|---|
| readOnlyHint | ✓ |
| idempotentHint | ✓ |
| destructiveHint | — |
| openWorldHint | — |
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "chord": { "type": "string", "minLength": 1, "description": "Chord symbol (e.g. \"Cmaj7\", \"F#m7b5\")." }, "tempo": { "type": "integer", "minimum": 20, "maximum": 300, "description": "Tempo in BPM." }, "pattern": { "type": "string", "enum": [ "up", "down", "alternating", "random" ], "description": "Arpeggio direction. \"random\" is seeded by the input so it is reproducible." }, "bars": { "type": "integer", "minimum": 1, "maximum": 32, "description": "Number of 4/4 bars (16 sixteenth notes per bar)." } }, "required": [ "chord", "tempo", "pattern", "bars" ], "additionalProperties": false}Output
Section titled “Output”Returned as structuredContent. The text rendering is a short human-readable summary.
{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "properties": { "midiBase64": { "type": "string", "description": "Base64-encoded Standard MIDI File bytes." }, "format": { "type": "string", "const": "smf1", "description": "SMF format type 1." }, "ppq": { "type": "number", "const": 480, "description": "Pulses per quarter note." }, "durationMs": { "type": "integer", "minimum": 0, "maximum": 9007199254740991, "description": "Total duration in milliseconds." }, "trackCount": { "type": "integer", "exclusiveMinimum": 0, "maximum": 9007199254740991, "description": "Number of MIDI tracks." } }, "required": [ "midiBase64", "format", "ppq", "durationMs", "trackCount" ], "additionalProperties": false}