← WebMCP Directory

Tool tree

fieldwork-beat-machine.openai.chatgpt.site

demoMedia & Personal
https://fieldwork-beat-machine.openai.chatgpt.site/
A tactile 12-voice beat machine with classic drum-machine grooves, deep synths, keyboard and touch pads, WebMCP controls, and stereo WAV export.
Explore capabilities
get_stateAnswer

Read the current beat-machine preset, tempo, transport, musical key and scale, 24-sound library, six editable instrument slots and their complete sound-design parameters, selected pad bank, all 12 playable pads, plus the 12 by 16 velocity and MIDI-note patterns.

View tool JSON
{
  "name": "get_state",
  "kind": "answer",
  "impl": "imperative",
  "description": "Read the current beat-machine preset, tempo, transport, musical key and scale, 24-sound library, six editable instrument slots and their complete sound-design parameters, selected pad bank, all 12 playable pads, plus the 12 by 16 velocity and MIDI-note patterns.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
get_projectAnswer

Read the complete portable Fieldwork project document, including its name, pattern, notes, mix, musical key, and six instrument patches. Use it for backup or as input to load_project.

View tool JSON
{
  "name": "get_project",
  "kind": "answer",
  "impl": "imperative",
  "description": "Read the complete portable Fieldwork project document, including its name, pattern, notes, mix, musical key, and six instrument patches. Use it for backup or as input to load_project.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
load_projectAction

Validate and atomically replace the current local project with a Fieldwork project document. Stops playback and recording, preserves an undo step, and autosaves locally. Invalid documents leave the current project unchanged.

View tool JSON
{
  "name": "load_project",
  "kind": "act",
  "impl": "imperative",
  "description": "Validate and atomically replace the current local project with a Fieldwork project document. Stops playback and recording, preserves an undo step, and autosaves locally. Invalid documents leave the current project unchanged.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "document": {
        "type": "object",
        "properties": {
          "format": {
            "type": "string",
            "const": "fieldwork-project"
          },
          "version": {
            "type": "integer",
            "const": 1
          },
          "project": {
            "type": "object",
            "properties": {
              "name": {
                "type": "string",
                "minLength": 1,
                "maxLength": 64
              },
              "kit": {
                "type": "string",
                "enum": [
                  "808-night",
                  "909-warehouse",
                  "linn-pop",
                  "sp-dust",
                  "mpc-swing",
                  "acid-cell",
                  "electro-break",
                  "dub-orbit",
                  "minimal-12"
                ]
              },
              "tempo": {
                "type": "integer",
                "minimum": 45,
                "maximum": 220
              },
              "swing": {
                "type": "number",
                "minimum": 0,
                "maximum": 0.45
              },
              "tone": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "space": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "master": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "humanize": {
                "type": "number",
                "minimum": 0,
                "maximum": 1
              },
              "bars": {
                "type": "integer",
                "minimum": 1,
                "maximum": 32
              },
              "keyRoot": {
                "type": "integer",
                "minimum": 0,
                "maximum": 11
              },
              "scale": {
                "type": "string",
                "enum": [
                  "minor",
                  "major",
                  "dorian",
                  "pentatonic",
                  "chromatic"
                ]
              },
              "activeSlot": {
                "type": "integer",
                "minimum": 1,
                "maximum": 6
              },
              "padBank": {
                "type": "string",
                "enum": [
                  "all",
                  "drum",
                  "low",
                  "synth"
                ]
              },
              "pattern": {
                "type": "object",
                "properties": {
                  "kick": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "snare": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "clap": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "hatClosed": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "hatOpen": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "perc": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "sub": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "bass": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "chord": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "lead": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "pluck": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  },
                  "fx": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    }
                  }
                },
                "required": [
                  "kick",
                  "snare",
                  "clap",
                  "hatClosed",
                  "hatOpen",
                  "perc",
                  "sub",
                  "bass",
                  "chord",
                  "lead",
                  "pluck",
                  "fx"
                ],
                "additionalProperties": false
              },
              "notes": {
                "type": "object",
                "properties": {
                  "kick": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "snare": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "clap": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "hatClosed": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "hatOpen": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "perc": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "sub": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "bass": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "chord": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "lead": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "pluck": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  },
                  "fx": {
                    "type": "array",
                    "minItems": 16,
                    "maxItems": 16,
                    "items": {
                      "type": [
                        "integer",
                        "null"
                      ],
                      "minimum": 0,
                      "maximum": 127
                    }
                  }
                },
                "required": [
                  "kick",
                  "snare",
                  "clap",
                  "hatClosed",
                  "hatOpen",
                  "perc",
                  "sub",
                  "bass",
                  "chord",
                  "lead",
                  "pluck",
                  "fx"
                ],
                "additionalProperties": false
              },
              "muted": {
                "type": "object",
                "properties": {
                  "kick": {
                    "type": "boolean"
                  },
                  "snare": {
                    "type": "boolean"
                  },
                  "clap": {
                    "type": "boolean"
                  },
                  "hatClosed": {
                    "type": "boolean"
                  },
                  "hatOpen": {
                    "type": "boolean"
                  },
                  "perc": {
                    "type": "boolean"
                  },
                  "sub": {
                    "type": "boolean"
                  },
                  "bass": {
                    "type": "boolean"
                  },
                  "chord": {
                    "type": "boolean"
                  },
                  "lead": {
                    "type": "boolean"
                  },
                  "pluck": {
                    "type": "boolean"
                  },
                  "fx": {
                    "type": "boolean"
                  }
                },
                "required": [],
                "additionalProperties": false
              },
              "instrumentSounds": {
                "type": "array",
                "minItems": 6,
                "maxItems": 6,
                "items": {
                  "type": "string",
                  "enum": [
                    "neon-lead",
                    "mono-arc",
                    "laser-fm",
                    "pixel-pulse",
                    "velvet-pad",
                    "prism-chord",
                    "brass-stack",
                    "horizon-strings",
                    "glass-pluck",
                    "felt-keys",
                    "crystal-bell",
                    "rubber-mallet",
                    "acid-wire",
                    "reese-engine",
                    "rubber-bass",
                    "buzz-cell",
                    "deep-sub",
                    "808-glide",
                    "hollow-sub",
                    "quake",
                    "ion-noise",
                    "radio-ghost",
                    "solar-wash",
                    "bit-spray"
                  ]
                }
              },
              "instrumentTones": {
                "type": "array",
                "minItems": 6,
                "maxItems": 6,
                "items": {
                  "type": "object",
                  "properties": {
                    "attack": {
                      "type": "number",
                      "minimum": 0.001,
                      "maximum": 2
                    },
                    "decay": {
                      "type": "number",
                      "minimum": 0.01,
                      "maximum": 3
                    },
                    "sustain": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "release": {
                      "type": "number",
                      "minimum": 0.01,
                      "maximum": 4
                    },
                    "cutoff": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "resonance": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "drive": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "motion": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "width": {
                      "type": "number",
                      "minimum": 0,
                      "maximum": 1
                    },
                    "octave": {
                      "type": "integer",
                      "minimum": -2,
                      "maximum": 2
                    },
                    "wave": {
                      "type": "string",
                      "enum": [
                        "sine",
                        "triangle",
                        "sawtooth",
                        "square"
                      ]
                    }
                  },
                  "required": [
                    "attack",
                    "decay",
                    "sustain",
                    "release",
                    "cutoff",
                    "resonance",
                    "drive",
                    "motion",
                    "width",
                    "octave",
                    "wave"
                  ],
                  "additionalProperties": false
                }
              },
              "instrumentOrder": {
                "type": "array",
                "minItems": 6,
                "maxItems": 6,
                "items": {
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 6
                },
                "uniqueItems": true
              }
            },
            "required": [
              "name",
              "kit",
              "tempo",
              "swing",
              "tone",
              "space",
              "master",
              "humanize",
              "bars",
              "keyRoot",
              "scale",
              "activeSlot",
              "padBank",
              "pattern",
              "notes",
              "muted",
              "instrumentSounds",
              "instrumentTones",
              "instrumentOrder"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "format",
          "version",
          "project"
        ],
        "additionalProperties": false
      }
    },
    "required": [
      "document"
    ],
    "additionalProperties": false
  }
}
export_projectAction

Create a portable JSON backup of the current project and optionally download it. This does not render audio; use export_track for WAV audio.

View tool JSON
{
  "name": "export_project",
  "kind": "act",
  "impl": "imperative",
  "description": "Create a portable JSON backup of the current project and optionally download it. This does not render audio; use export_track for WAV audio.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "download": {
        "type": "boolean",
        "default": true
      }
    },
    "additionalProperties": false
  }
}
undo_editAction

Undo the most recent local project edit. Returns changed=false when no undo history remains.

View tool JSON
{
  "name": "undo_edit",
  "kind": "act",
  "impl": "imperative",
  "description": "Undo the most recent local project edit. Returns changed=false when no undo history remains.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
redo_editAction

Restore the most recently undone local project edit. Returns changed=false when no redo history remains.

View tool JSON
{
  "name": "redo_edit",
  "kind": "act",
  "impl": "imperative",
  "description": "Restore the most recently undone local project edit. Returns changed=false when no redo history remains.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
set_tempoAction

Set the beat-machine tempo in BPM (45 to 220).

View tool JSON
{
  "name": "set_tempo",
  "kind": "act",
  "impl": "imperative",
  "description": "Set the beat-machine tempo in BPM (45 to 220).",
  "inputSchema": {
    "type": "object",
    "properties": {
      "bpm": {
        "type": "number",
        "minimum": 45,
        "maximum": 220
      }
    },
    "required": [
      "bpm"
    ],
    "additionalProperties": false
  }
}
set_swingAction

Set sixteenth-note swing. Use a fraction from 0 to 0.45 or a percentage from 0 to 45.

View tool JSON
{
  "name": "set_swing",
  "kind": "act",
  "impl": "imperative",
  "description": "Set sixteenth-note swing. Use a fraction from 0 to 0.45 or a percentage from 0 to 45.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "amount": {
        "type": "number",
        "minimum": 0,
        "maximum": 45
      }
    },
    "required": [
      "amount"
    ],
    "additionalProperties": false
  }
}
set_controlsAction

Adjust the beat-machine mix and timing controls: tempo, swing, tone, space, master volume, humanize, and default export bars. Omitted controls stay unchanged.

View tool JSON
{
  "name": "set_controls",
  "kind": "act",
  "impl": "imperative",
  "description": "Adjust the beat-machine mix and timing controls: tempo, swing, tone, space, master volume, humanize, and default export bars. Omitted controls stay unchanged.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "tempo": {
        "type": "number",
        "minimum": 45,
        "maximum": 220
      },
      "swing": {
        "type": "number",
        "minimum": 0,
        "maximum": 45
      },
      "tone": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "space": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "master": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "humanize": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "bars": {
        "type": "integer",
        "minimum": 1,
        "maximum": 32
      }
    },
    "additionalProperties": false
  }
}
select_kitAction

Load one of the nine instrument and groove presets: 808-night, 909-warehouse, linn-pop, sp-dust, mpc-swing, acid-cell, electro-break, dub-orbit, or minimal-12.

View tool JSON
{
  "name": "select_kit",
  "kind": "act",
  "impl": "imperative",
  "description": "Load one of the nine instrument and groove presets: 808-night, 909-warehouse, linn-pop, sp-dust, mpc-swing, acid-cell, electro-break, dub-orbit, or minimal-12.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "kit": {
        "type": "string",
        "enum": [
          "808-night",
          "909-warehouse",
          "linn-pop",
          "sp-dust",
          "mpc-swing",
          "acid-cell",
          "electro-break",
          "dub-orbit",
          "minimal-12"
        ]
      },
      "replacePattern": {
        "type": "boolean",
        "default": true
      }
    },
    "required": [
      "kit"
    ],
    "additionalProperties": false
  }
}
select_instrumentAction

Map the performance pads to all voices, a 12-pad drum bank, or one of six playable instrument slots using the selected key and scale. Slots are laid out U I O / J K L; instruments can be lead, chord, pluck, bass, sub, or tuned fx.

View tool JSON
{
  "name": "select_instrument",
  "kind": "act",
  "impl": "imperative",
  "description": "Map the performance pads to all voices, a 12-pad drum bank, or one of six playable instrument slots using the selected key and scale. Slots are laid out U I O / J K L; instruments can be lead, chord, pluck, bass, sub, or tuned fx.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "group": {
        "type": "string",
        "enum": [
          "all",
          "drum",
          "low",
          "synth"
        ]
      },
      "instrument": {
        "type": "string",
        "enum": [
          "lead",
          "chord",
          "pluck",
          "bass",
          "sub",
          "fx"
        ]
      },
      "slot": {
        "type": "integer",
        "minimum": 1,
        "maximum": 6
      }
    },
    "required": [
      "group"
    ],
    "additionalProperties": false
  }
}
configure_instrumentAction

Load one of 24 categorized sound presets into a U I O / J K L instrument slot, or target a base voice. Sounds cover neon leads, pads, brass, strings, keys, bells, acid, reese, 808 and sub basses, noise, radio, and atmospheric FX.

View tool JSON
{
  "name": "configure_instrument",
  "kind": "act",
  "impl": "imperative",
  "description": "Load one of 24 categorized sound presets into a U I O / J K L instrument slot, or target a base voice. Sounds cover neon leads, pads, brass, strings, keys, bells, acid, reese, 808 and sub basses, noise, radio, and atmospheric FX.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "slot": {
        "type": "integer",
        "minimum": 1,
        "maximum": 6
      },
      "sound": {
        "type": "string",
        "enum": [
          "neon-lead",
          "mono-arc",
          "laser-fm",
          "pixel-pulse",
          "velvet-pad",
          "prism-chord",
          "brass-stack",
          "horizon-strings",
          "glass-pluck",
          "felt-keys",
          "crystal-bell",
          "rubber-mallet",
          "acid-wire",
          "reese-engine",
          "rubber-bass",
          "buzz-cell",
          "deep-sub",
          "808-glide",
          "hollow-sub",
          "quake",
          "ion-noise",
          "radio-ghost",
          "solar-wash",
          "bit-spray"
        ]
      },
      "voice": {
        "type": "string",
        "enum": [
          "lead",
          "chord",
          "pluck",
          "bass",
          "sub",
          "fx"
        ]
      }
    },
    "required": [
      "slot"
    ],
    "anyOf": [
      {
        "required": [
          "sound"
        ]
      },
      {
        "required": [
          "voice"
        ]
      }
    ],
    "additionalProperties": false
  }
}
configure_instrumentsAction

Atomically load sounds into 1 to 6 distinct U I O / J K L instrument slots. Results preserve input order; duplicate slots or any invalid item reject the whole batch without changing the current configuration.

View tool JSON
{
  "name": "configure_instruments",
  "kind": "act",
  "impl": "imperative",
  "description": "Atomically load sounds into 1 to 6 distinct U I O / J K L instrument slots. Results preserve input order; duplicate slots or any invalid item reject the whole batch without changing the current configuration.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "configurations": {
        "type": "array",
        "minItems": 1,
        "maxItems": 6,
        "items": {
          "type": "object",
          "properties": {
            "slot": {
              "type": "integer",
              "minimum": 1,
              "maximum": 6
            },
            "sound": {
              "type": "string",
              "enum": [
                "neon-lead",
                "mono-arc",
                "laser-fm",
                "pixel-pulse",
                "velvet-pad",
                "prism-chord",
                "brass-stack",
                "horizon-strings",
                "glass-pluck",
                "felt-keys",
                "crystal-bell",
                "rubber-mallet",
                "acid-wire",
                "reese-engine",
                "rubber-bass",
                "buzz-cell",
                "deep-sub",
                "808-glide",
                "hollow-sub",
                "quake",
                "ion-noise",
                "radio-ghost",
                "solar-wash",
                "bit-spray"
              ]
            },
            "voice": {
              "type": "string",
              "enum": [
                "lead",
                "chord",
                "pluck",
                "bass",
                "sub",
                "fx"
              ]
            }
          },
          "required": [
            "slot"
          ],
          "oneOf": [
            {
              "required": [
                "sound"
              ]
            },
            {
              "required": [
                "voice"
              ]
            }
          ],
          "additionalProperties": false
        }
      }
    },
    "required": [
      "configurations"
    ],
    "additionalProperties": false
  }
}
set_instrument_paramsAction

Dial in an instrument slot with attack, decay, sustain, release, cutoff, resonance, drive, motion, stereo width, octave, and waveform. Omitted sound-design controls stay unchanged and changes apply to live playback and WAV export.

View tool JSON
{
  "name": "set_instrument_params",
  "kind": "act",
  "impl": "imperative",
  "description": "Dial in an instrument slot with attack, decay, sustain, release, cutoff, resonance, drive, motion, stereo width, octave, and waveform. Omitted sound-design controls stay unchanged and changes apply to live playback and WAV export.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "slot": {
        "type": "integer",
        "minimum": 1,
        "maximum": 6
      },
      "attack": {
        "type": "number",
        "minimum": 0.001,
        "maximum": 2
      },
      "decay": {
        "type": "number",
        "minimum": 0.01,
        "maximum": 3
      },
      "sustain": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "release": {
        "type": "number",
        "minimum": 0.01,
        "maximum": 4
      },
      "cutoff": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "resonance": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "drive": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "motion": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "width": {
        "type": "number",
        "minimum": 0,
        "maximum": 1
      },
      "octave": {
        "type": "integer",
        "minimum": -2,
        "maximum": 2
      },
      "wave": {
        "type": "string",
        "enum": [
          "sine",
          "triangle",
          "sawtooth",
          "square"
        ]
      }
    },
    "required": [
      "slot"
    ],
    "additionalProperties": false
  }
}
reset_instrumentAction

Restore a U I O / J K L instrument slot's current sound preset to its original ADSR, filter, drive, motion, width, octave, and waveform settings.

View tool JSON
{
  "name": "reset_instrument",
  "kind": "act",
  "impl": "imperative",
  "description": "Restore a U I O / J K L instrument slot's current sound preset to its original ADSR, filter, drive, motion, width, octave, and waveform settings.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "slot": {
        "type": "integer",
        "minimum": 1,
        "maximum": 6
      }
    },
    "required": [
      "slot"
    ],
    "additionalProperties": false
  }
}
randomize_instrumentAction

Create a playable sound-design variation for a U I O / J K L instrument slot. An optional seed makes the ADSR, filter, motion, waveform, and timbre result repeatable.

View tool JSON
{
  "name": "randomize_instrument",
  "kind": "act",
  "impl": "imperative",
  "description": "Create a playable sound-design variation for a U I O / J K L instrument slot. An optional seed makes the ADSR, filter, motion, waveform, and timbre result repeatable.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "slot": {
        "type": "integer",
        "minimum": 1,
        "maximum": 6
      },
      "seed": {
        "type": "integer"
      }
    },
    "required": [
      "slot"
    ],
    "additionalProperties": false
  }
}
set_keyAction

Choose the musical root and scale used by all twelve melodic pads. Root accepts note names such as C, F#, Bb, or a pitch class from 0 to 11; scales are minor, major, dorian, pentatonic, and chromatic.

View tool JSON
{
  "name": "set_key",
  "kind": "act",
  "impl": "imperative",
  "description": "Choose the musical root and scale used by all twelve melodic pads. Root accepts note names such as C, F#, Bb, or a pitch class from 0 to 11; scales are minor, major, dorian, pentatonic, and chromatic.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "root": {
        "type": [
          "string",
          "integer"
        ]
      },
      "scale": {
        "type": "string",
        "enum": [
          "minor",
          "major",
          "dorian",
          "pentatonic",
          "chromatic"
        ]
      }
    },
    "required": [
      "root"
    ],
    "additionalProperties": false
  }
}
set_stepAction

Write or clear a single sequencer step, optionally setting a MIDI note for a melodic lane. Steps are numbered 1 to 16; voices include kick, snare, clap, hatClosed, hatOpen, perc, sub, bass, chord, lead, pluck, and fx.

View tool JSON
{
  "name": "set_step",
  "kind": "act",
  "impl": "imperative",
  "description": "Write or clear a single sequencer step, optionally setting a MIDI note for a melodic lane. Steps are numbered 1 to 16; voices include kick, snare, clap, hatClosed, hatOpen, perc, sub, bass, chord, lead, pluck, and fx.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "voice": {
        "type": "string",
        "enum": [
          "kick",
          "snare",
          "clap",
          "hatClosed",
          "hatOpen",
          "perc",
          "sub",
          "bass",
          "chord",
          "lead",
          "pluck",
          "fx"
        ]
      },
      "step": {
        "type": "integer",
        "minimum": 1,
        "maximum": 16
      },
      "enabled": {
        "type": "boolean",
        "default": true
      },
      "velocity": {
        "type": "number",
        "minimum": 0,
        "maximum": 1,
        "default": 1
      },
      "note": {
        "type": "integer",
        "minimum": 0,
        "maximum": 127
      }
    },
    "required": [
      "voice",
      "step"
    ],
    "additionalProperties": false
  }
}
set_patternAction

Replace any number of voice lanes in the 16-step sequencer. Supply velocity lanes and, optionally, matching MIDI-note lanes to lay complete melodic tracks in one action; omitted lanes stay unchanged.

View tool JSON
{
  "name": "set_pattern",
  "kind": "act",
  "impl": "imperative",
  "description": "Replace any number of voice lanes in the 16-step sequencer. Supply velocity lanes and, optionally, matching MIDI-note lanes to lay complete melodic tracks in one action; omitted lanes stay unchanged.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "lanes": {
        "type": "object",
        "properties": {
          "kick": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "snare": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "clap": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "hatClosed": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "hatOpen": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "perc": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "sub": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "bass": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "chord": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "lead": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "pluck": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          },
          "fx": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": "number",
              "minimum": 0,
              "maximum": 1
            }
          }
        },
        "additionalProperties": false
      },
      "notes": {
        "type": "object",
        "properties": {
          "kick": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "snare": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "clap": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "hatClosed": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "hatOpen": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "perc": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "sub": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "bass": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "chord": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "lead": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "pluck": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          },
          "fx": {
            "type": "array",
            "maxItems": 16,
            "items": {
              "type": [
                "integer",
                "null"
              ],
              "minimum": 0,
              "maximum": 127
            }
          }
        },
        "additionalProperties": false
      }
    },
    "required": [
      "lanes"
    ],
    "additionalProperties": false
  }
}
clear_patternAction

Clear all 12 sequencer lanes, leaving a silent 16-step grid ready for an agent or performer to lay a new track.

View tool JSON
{
  "name": "clear_pattern",
  "kind": "act",
  "impl": "imperative",
  "description": "Clear all 12 sequencer lanes, leaving a silent 16-step grid ready for an agent or performer to lay a new track.",
  "inputSchema": {
    "type": "object",
    "properties": {},
    "additionalProperties": false
  }
}
set_voice_muteAction

Mute or unmute one instrument lane without deleting its sequencer steps.

View tool JSON
{
  "name": "set_voice_mute",
  "kind": "act",
  "impl": "imperative",
  "description": "Mute or unmute one instrument lane without deleting its sequencer steps.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "voice": {
        "type": "string",
        "enum": [
          "kick",
          "snare",
          "clap",
          "hatClosed",
          "hatOpen",
          "perc",
          "sub",
          "bass",
          "chord",
          "lead",
          "pluck",
          "fx"
        ]
      },
      "muted": {
        "type": "boolean"
      }
    },
    "required": [
      "voice",
      "muted"
    ],
    "additionalProperties": false
  }
}
set_recordingAction

Arm or disarm on-tempo grid recording. When armed, performance pads and trigger-pad actions can print at the playhead.

View tool JSON
{
  "name": "set_recording",
  "kind": "act",
  "impl": "imperative",
  "description": "Arm or disarm on-tempo grid recording. When armed, performance pads and trigger-pad actions can print at the playhead.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "armed": {
        "type": "boolean"
      }
    },
    "required": [
      "armed"
    ],
    "additionalProperties": false
  }
}
mutate_patternAction

Create a musical variation or fill while keeping the core kick and sub pocket intact.

View tool JSON
{
  "name": "mutate_pattern",
  "kind": "act",
  "impl": "imperative",
  "description": "Create a musical variation or fill while keeping the core kick and sub pocket intact.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "amount": {
        "type": "number",
        "minimum": 0,
        "maximum": 0.9,
        "default": 0.2
      },
      "seed": {
        "type": "integer"
      }
    },
    "additionalProperties": false
  }
}
transportAction

Start, stop, or toggle the beat-machine transport.

View tool JSON
{
  "name": "transport",
  "kind": "act",
  "impl": "imperative",
  "description": "Start, stop, or toggle the beat-machine transport.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "action": {
        "type": "string",
        "enum": [
          "play",
          "stop",
          "toggle"
        ]
      }
    },
    "required": [
      "action"
    ],
    "additionalProperties": false
  }
}
trigger_padAction

Audition a voice or one of the 12 currently mapped performance pads and optionally place it onto the current sequencer step. Melodic pads automatically print their note; an explicit MIDI note can override it.

View tool JSON
{
  "name": "trigger_pad",
  "kind": "act",
  "impl": "imperative",
  "description": "Audition a voice or one of the 12 currently mapped performance pads and optionally place it onto the current sequencer step. Melodic pads automatically print their note; an explicit MIDI note can override it.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "voice": {
        "type": "string",
        "enum": [
          "kick",
          "snare",
          "clap",
          "hatClosed",
          "hatOpen",
          "perc",
          "sub",
          "bass",
          "chord",
          "lead",
          "pluck",
          "fx"
        ]
      },
      "pad": {
        "type": [
          "integer",
          "string"
        ],
        "minimum": 1,
        "maximum": 12
      },
      "velocity": {
        "type": "number",
        "minimum": 0.15,
        "maximum": 1,
        "default": 1
      },
      "place": {
        "type": "boolean",
        "default": false
      },
      "note": {
        "type": "integer",
        "minimum": 0,
        "maximum": 127
      }
    },
    "anyOf": [
      {
        "required": [
          "voice"
        ]
      },
      {
        "required": [
          "pad"
        ]
      }
    ],
    "additionalProperties": false
  }
}
export_trackAction

Render the current beat and synth arrangement to a stereo 48 kHz WAV file, make it available for preview, and optionally download it.

View tool JSON
{
  "name": "export_track",
  "kind": "act",
  "impl": "imperative",
  "description": "Render the current beat and synth arrangement to a stereo 48 kHz WAV file, make it available for preview, and optionally download it.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "bars": {
        "type": "integer",
        "minimum": 1,
        "maximum": 32,
        "default": 4
      },
      "download": {
        "type": "boolean",
        "default": true
      }
    },
    "additionalProperties": false
  }
}