← WebMCP Directory

Tool tree

mcp-mpc.stuartmemo.chatgpt.site

Media & PersonalTools verified
Website
MCP MPC — a local-first, 16-bit web sampler with pads, chopping, sequencing and MIDI.
Explore capabilities
    mcpmpc_get_stateAnswer

    Read the current MCP-MPC pads, sample assignments, normalized trims, loaded-sample start/end times and durations, pitches, per-pad levels, master output volume, sequence, tempo, swing, and transport state. Pad and step numbers are 1-based.

    View tool JSON
    {
      "name": "mcpmpc_get_state",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the current MCP-MPC pads, sample assignments, normalized trims, loaded-sample start/end times and durations, pitches, per-pad levels, master output volume, sequence, tempo, swing, and transport state. Pad and step numbers are 1-based.",
      "inputSchema": {
        "type": "object",
        "properties": {},
        "additionalProperties": false
      }
    }
    mcpmpc_select_kitAction

    Replace all 16 pad assignments with one MCP-MPC factory kit while preserving the current sequence, tempo, swing, and transport state.

    View tool JSON
    {
      "name": "mcpmpc_select_kit",
      "kind": "act",
      "impl": "imperative",
      "description": "Replace all 16 pad assignments with one MCP-MPC factory kit while preserving the current sequence, tempo, swing, and transport state.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "kit": {
            "type": "string",
            "enum": [
              "fischer-808",
              "uzu",
              "big-rusty",
              "swirly"
            ],
            "description": "Factory kit identifier. Fischer 808 is classic analog; Uzu is modern electronic; Big Rusty is a roomy acoustic kit; Swirly is a brushed hand-percussion palette."
          }
        },
        "required": [
          "kit"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_load_sampleAction

    Fetch a directly accessible audio URL and load it onto one pad. The URL must be HTTPS or same-origin HTTP, a blob URL, or an audio data URL; cross-origin servers must allow CORS.

    View tool JSON
    {
      "name": "mcpmpc_load_sample",
      "kind": "act",
      "impl": "imperative",
      "description": "Fetch a directly accessible audio URL and load it onto one pad. The URL must be HTTPS or same-origin HTTP, a blob URL, or an audio data URL; cross-origin servers must allow CORS.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "pad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          },
          "url": {
            "type": "string",
            "minLength": 1,
            "description": "Direct URL of an audio file, not a webpage."
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 24
          },
          "shortName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 6
          }
        },
        "required": [
          "pad",
          "url"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_assign_padAction

    Copy a sample assignment, including its current pitch, level, and trim, from one pad to another pad.

    View tool JSON
    {
      "name": "mcpmpc_assign_pad",
      "kind": "act",
      "impl": "imperative",
      "description": "Copy a sample assignment, including its current pitch, level, and trim, from one pad to another pad.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sourcePad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          },
          "targetPad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          }
        },
        "required": [
          "sourcePad",
          "targetPad"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_configure_padAction

    Change one pad's pitch, volume, normalized sample trim, or display names. Pitch is measured in semitones, volume is a percentage, and trim positions are normalized from 0 to 1. For start/end times in seconds, use mcpmpc_set_sample_range.

    View tool JSON
    {
      "name": "mcpmpc_configure_pad",
      "kind": "act",
      "impl": "imperative",
      "description": "Change one pad's pitch, volume, normalized sample trim, or display names. Pitch is measured in semitones, volume is a percentage, and trim positions are normalized from 0 to 1. For start/end times in seconds, use mcpmpc_set_sample_range.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "pad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          },
          "pitch": {
            "type": "number",
            "minimum": -24,
            "maximum": 24
          },
          "volume": {
            "type": "number",
            "minimum": 0,
            "maximum": 100,
            "description": "Level for only this pad, as a percentage."
          },
          "sliceStart": {
            "type": "number",
            "minimum": 0,
            "maximum": 0.999
          },
          "sliceEnd": {
            "type": "number",
            "minimum": 0.001,
            "maximum": 1
          },
          "name": {
            "type": "string",
            "minLength": 1,
            "maxLength": 24
          },
          "shortName": {
            "type": "string",
            "minLength": 1,
            "maxLength": 6
          }
        },
        "required": [
          "pad"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_set_sample_rangeAction

    Set the playable start and/or end time, in seconds, for the sample assigned to one pad. Omit either boundary to keep its current value. Use mcpmpc_get_state to inspect the sample duration and current startSeconds/endSeconds.

    View tool JSON
    {
      "name": "mcpmpc_set_sample_range",
      "kind": "act",
      "impl": "imperative",
      "description": "Set the playable start and/or end time, in seconds, for the sample assigned to one pad. Omit either boundary to keep its current value. Use mcpmpc_get_state to inspect the sample duration and current startSeconds/endSeconds.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "pad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          },
          "startSeconds": {
            "type": "number",
            "minimum": 0,
            "description": "Playable start time measured from the beginning of the source sample."
          },
          "endSeconds": {
            "type": "number",
            "exclusiveMinimum": 0,
            "description": "Playable end time measured from the beginning of the source sample."
          }
        },
        "required": [
          "pad"
        ],
        "anyOf": [
          {
            "required": [
              "startSeconds"
            ]
          },
          {
            "required": [
              "endSeconds"
            ]
          }
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_chop_sampleAction

    Split a source pad sample evenly into 2, 4, 8, or 16 chops and assign them to consecutive pads. The destination range cannot run past pad 16.

    View tool JSON
    {
      "name": "mcpmpc_chop_sample",
      "kind": "act",
      "impl": "imperative",
      "description": "Split a source pad sample evenly into 2, 4, 8, or 16 chops and assign them to consecutive pads. The destination range cannot run past pad 16.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "sourcePad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          },
          "count": {
            "type": "integer",
            "enum": [
              2,
              4,
              8,
              16
            ]
          },
          "startPad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16,
            "description": "First destination pad. Defaults to sourcePad."
          },
          "sliceStart": {
            "type": "number",
            "minimum": 0,
            "maximum": 0.999
          },
          "sliceEnd": {
            "type": "number",
            "minimum": 0.001,
            "maximum": 1
          }
        },
        "required": [
          "sourcePad",
          "count"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_create_sequenceAction

    Create or merge a one-bar, 16-step drum sequence. Supply tracks with 1-based pad and step numbers, plus optional tempo, swing, and play state.

    View tool JSON
    {
      "name": "mcpmpc_create_sequence",
      "kind": "act",
      "impl": "imperative",
      "description": "Create or merge a one-bar, 16-step drum sequence. Supply tracks with 1-based pad and step numbers, plus optional tempo, swing, and play state.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "tracks": {
            "type": "array",
            "minItems": 1,
            "maxItems": 16,
            "items": {
              "type": "object",
              "properties": {
                "pad": {
                  "type": "integer",
                  "minimum": 1,
                  "maximum": 16
                },
                "steps": {
                  "type": "array",
                  "maxItems": 16,
                  "uniqueItems": true,
                  "items": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 16
                  }
                }
              },
              "required": [
                "pad",
                "steps"
              ],
              "additionalProperties": false
            }
          },
          "mode": {
            "type": "string",
            "enum": [
              "replace",
              "merge"
            ],
            "default": "replace"
          },
          "bpm": {
            "type": "number",
            "minimum": 40,
            "maximum": 220
          },
          "swing": {
            "type": "number",
            "minimum": 0,
            "maximum": 60
          },
          "play": {
            "type": "boolean"
          }
        },
        "required": [
          "tracks"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_play_padAction

    Trigger one MCP-MPC pad now at an optional velocity from 0.04 to 1.

    View tool JSON
    {
      "name": "mcpmpc_play_pad",
      "kind": "act",
      "impl": "imperative",
      "description": "Trigger one MCP-MPC pad now at an optional velocity from 0.04 to 1.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "pad": {
            "type": "integer",
            "minimum": 1,
            "maximum": 16
          },
          "velocity": {
            "type": "number",
            "minimum": 0.04,
            "maximum": 1,
            "default": 0.94
          }
        },
        "required": [
          "pad"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_set_volumeAction

    Set the master output level shared by every pad and sample. To change one pad only, use mcpmpc_configure_pad with its volume field. Use 0 to mute or 100 for full level.

    View tool JSON
    {
      "name": "mcpmpc_set_volume",
      "kind": "act",
      "impl": "imperative",
      "description": "Set the master output level shared by every pad and sample. To change one pad only, use mcpmpc_configure_pad with its volume field. Use 0 to mute or 100 for full level.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "volume": {
            "type": "number",
            "minimum": 0,
            "maximum": 100,
            "description": "Master output level as a percentage."
          }
        },
        "required": [
          "volume"
        ],
        "additionalProperties": false
      }
    }
    mcpmpc_set_transportAction

    Start or stop the current sequence and optionally set its tempo and swing.

    View tool JSON
    {
      "name": "mcpmpc_set_transport",
      "kind": "act",
      "impl": "imperative",
      "description": "Start or stop the current sequence and optionally set its tempo and swing.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "playing": {
            "type": "boolean"
          },
          "bpm": {
            "type": "number",
            "minimum": 40,
            "maximum": 220
          },
          "swing": {
            "type": "number",
            "minimum": 0,
            "maximum": 60
          }
        },
        "additionalProperties": false
      }
    }