gradeNot graded
get_sequencer_stateAnswer
Returns the current BPM and every track with its 16-step pattern and lock status. Call this before making changes so you know what already exists.
View tool JSON
{
"name": "get_sequencer_state",
"kind": "answer",
"impl": "imperative",
"description": "Returns the current BPM and every track with its 16-step pattern and lock status. Call this before making changes so you know what already exists.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
}
}set_tempoAction
Set the playback tempo in beats per minute (BPM), between 40 and 220.
View tool JSON
{
"name": "set_tempo",
"kind": "act",
"impl": "imperative",
"description": "Set the playback tempo in beats per minute (BPM), between 40 and 220.",
"inputSchema": {
"type": "object",
"properties": {
"bpm": {
"type": "number",
"minimum": 40,
"maximum": 220
}
},
"required": [
"bpm"
],
"additionalProperties": false
}
}add_trackAction
Add a new 16-step track for an instrument (kick, snare, hihat, clap, bass, or synthpad). Fails if that instrument already has a track.
View tool JSON
{
"name": "add_track",
"kind": "act",
"impl": "imperative",
"description": "Add a new 16-step track for an instrument (kick, snare, hihat, clap, bass, or synthpad). Fails if that instrument already has a track.",
"inputSchema": {
"type": "object",
"properties": {
"instrument": {
"type": "string",
"enum": [
"kick",
"snare",
"hihat",
"clap",
"bass",
"synthpad"
]
}
},
"required": [
"instrument"
],
"additionalProperties": false
}
}set_stepAction
Turn one step on or off for a track. Step index is from 0 to 15. Changes are blocked if the human has locked that track.
View tool JSON
{
"name": "set_step",
"kind": "act",
"impl": "imperative",
"description": "Turn one step on or off for a track. Step index is from 0 to 15. Changes are blocked if the human has locked that track.",
"inputSchema": {
"type": "object",
"properties": {
"instrument": {
"type": "string"
},
"stepIndex": {
"type": "number",
"minimum": 0,
"maximum": 15
},
"on": {
"type": "boolean"
}
},
"required": [
"instrument",
"stepIndex",
"on"
],
"additionalProperties": false
}
}set_patternAction
Replace a track's entire 16-step pattern in a single call using an array of exactly 16 boolean values. Changes are blocked if the track is locked.
View tool JSON
{
"name": "set_pattern",
"kind": "act",
"impl": "imperative",
"description": "Replace a track's entire 16-step pattern in a single call using an array of exactly 16 boolean values. Changes are blocked if the track is locked.",
"inputSchema": {
"type": "object",
"properties": {
"instrument": {
"type": "string"
},
"pattern": {
"type": "array",
"items": {
"type": "boolean"
},
"minItems": 16,
"maxItems": 16
}
},
"required": [
"instrument",
"pattern"
],
"additionalProperties": false
}
}clear_trackAction
Clear all 16 steps on a track back to silence. Changes are blocked if the track is locked.
View tool JSON
{
"name": "clear_track",
"kind": "act",
"impl": "imperative",
"description": "Clear all 16 steps on a track back to silence. Changes are blocked if the track is locked.",
"inputSchema": {
"type": "object",
"properties": {
"instrument": {
"type": "string"
}
},
"required": [
"instrument"
],
"additionalProperties": false
}
}request_unlockAction
Ask the human to unlock a locked track. This tool does not unlock the track. Only the human can unlock it using the BeatForge interface.
View tool JSON
{
"name": "request_unlock",
"kind": "act",
"impl": "imperative",
"description": "Ask the human to unlock a locked track. This tool does not unlock the track. Only the human can unlock it using the BeatForge interface.",
"inputSchema": {
"type": "object",
"properties": {
"instrument": {
"type": "string"
}
},
"required": [
"instrument"
],
"additionalProperties": false
}
}