← WebMCP Directory

Tool tree

sfxforge.vercel.app

Media & PersonalTools verified
Website
SFX Forge
Explore capabilities
    sfx_describeAction

    Describe SFX Forge: sound-effect categories, music styles, macros and remixable parts, plus a summary of the sound currently loaded in the editor. Call this first.

    View tool JSON
    {
      "name": "sfx_describe",
      "kind": "act",
      "impl": "imperative",
      "description": "Describe SFX Forge: sound-effect categories, music styles, macros and remixable parts, plus a summary of the sound currently loaded in the editor. Call this first.",
      "inputSchema": {
        "type": "object",
        "properties": {}
      },
      "page": "/"
    }
    sfx_generate_soundAction

    Generate a new sound effect in the editor from a category generator, or "random" to build one from scratch. Returns its stats.

    View tool JSON
    {
      "name": "sfx_generate_sound",
      "kind": "act",
      "impl": "imperative",
      "description": "Generate a new sound effect in the editor from a category generator, or \"random\" to build one from scratch. Returns its stats.",
      "inputSchema": {
        "type": "object",
        "required": [
          "category"
        ],
        "properties": {
          "category": {
            "type": "string",
            "enum": [
              "random",
              "coin",
              "pickup",
              "jump",
              "laser",
              "shoot",
              "explosion",
              "hit",
              "punch",
              "kick",
              "block",
              "hurt",
              "whoosh",
              "dash",
              "powerup",
              "blip",
              "select",
              "confirm",
              "cancel",
              "magic",
              "ko",
              "victory",
              "gameover"
            ],
            "description": "e.g. punch, coin, laser, explosion, ko, or random"
          },
          "wildness": {
            "type": "number",
            "minimum": 0,
            "maximum": 1,
            "description": "random only: 0 = tidy and short, 1 = layered and strange"
          },
          "seed": {
            "type": "integer",
            "description": "Same seed + category gives the same sound"
          }
        }
      },
      "page": "/"
    }
    sfx_compose_musicAction

    Compose a full arranged music track (drums, bass, chords, melody; intro → A → B → outro) in the editor. Length is rounded to whole 4-bar sections.

    View tool JSON
    {
      "name": "sfx_compose_music",
      "kind": "act",
      "impl": "imperative",
      "description": "Compose a full arranged music track (drums, bass, chords, melody; intro → A → B → outro) in the editor. Length is rounded to whole 4-bar sections.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "style": {
            "type": "string",
            "enum": [
              "random",
              "chiptune",
              "fight",
              "citypop",
              "synthwave",
              "lofi",
              "house",
              "dnb",
              "trap",
              "boss"
            ],
            "description": "\"random\" picks one and, with high wildness, can mix two styles"
          },
          "seconds": {
            "type": "number",
            "minimum": 10,
            "maximum": 60,
            "description": "Default 32"
          },
          "wildness": {
            "type": "number",
            "minimum": 0,
            "maximum": 1,
            "description": "More drum variation, generated chords, key changes, hybrids"
          },
          "bpm": {
            "type": "number",
            "minimum": 50,
            "maximum": 220
          },
          "seed": {
            "type": "integer"
          }
        }
      },
      "page": "/"
    }
    sfx_remix_musicAction

    Change the loaded music track: reroll some parts (drums, bass, chords, lead) while keeping the rest, and/or transpose or change tempo. New chords also move bass and melody notes to the new harmony.

    View tool JSON
    {
      "name": "sfx_remix_music",
      "kind": "act",
      "impl": "imperative",
      "description": "Change the loaded music track: reroll some parts (drums, bass, chords, lead) while keeping the rest, and/or transpose or change tempo. New chords also move bass and melody notes to the new harmony.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "parts": {
            "type": "array",
            "items": {
              "type": "string",
              "enum": [
                "drums",
                "bass",
                "chords",
                "lead"
              ]
            }
          },
          "transpose": {
            "type": "integer",
            "minimum": -12,
            "maximum": 12,
            "description": "Semitones"
          },
          "bpm": {
            "type": "number",
            "minimum": 50,
            "maximum": 220
          }
        }
      },
      "page": "/"
    }
    sfx_get_soundAnswer

    Read the sound loaded in the editor: stats, layers, and optionally the full sfx-forge/1 JSON (for editing or saving elsewhere).

    View tool JSON
    {
      "name": "sfx_get_sound",
      "kind": "answer",
      "impl": "imperative",
      "description": "Read the sound loaded in the editor: stats, layers, and optionally the full sfx-forge/1 JSON (for editing or saving elsewhere).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "include_json": {
            "type": "boolean",
            "description": "Include the full JSON (can be large for music)"
          }
        }
      },
      "page": "/"
    }
    sfx_load_soundAction

    Load a full sfx-forge/1 JSON sound into the editor, for example one made by the sfx MCP server.

    View tool JSON
    {
      "name": "sfx_load_sound",
      "kind": "act",
      "impl": "imperative",
      "description": "Load a full sfx-forge/1 JSON sound into the editor, for example one made by the sfx MCP server.",
      "inputSchema": {
        "type": "object",
        "required": [
          "sound"
        ],
        "properties": {
          "sound": {
            "type": "object",
            "description": "A full sfx-forge/1 sound object"
          }
        }
      },
      "page": "/"
    }
    sfx_edit_soundAction

    Edit the loaded sound. "patch" deep-merges into top-level fields (name, length, steps, swing, master). "layers" deep-merges into layers by index or name; arrays such as hits are replaced whole. Layer fields: wave, freq, freqEnd, slide, amp {a,h,d,s,r}, filter {type,cutoff,cutoffEnd,q}, vib, fm, crush, drive, gain, pan, repeat, hits [{t,note,vel,len}], mute.

    View tool JSON
    {
      "name": "sfx_edit_sound",
      "kind": "act",
      "impl": "imperative",
      "description": "Edit the loaded sound. \"patch\" deep-merges into top-level fields (name, length, steps, swing, master). \"layers\" deep-merges into layers by index or name; arrays such as hits are replaced whole. Layer fields: wave, freq, freqEnd, slide, amp {a,h,d,s,r}, filter {type,cutoff,cutoffEnd,q}, vib, fm, crush, drive, gain, pan, repeat, hits [{t,note,vel,len}], mute.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "patch": {
            "type": "object"
          },
          "layers": {
            "type": "array",
            "items": {
              "type": "object",
              "required": [
                "layer",
                "set"
              ],
              "properties": {
                "layer": {
                  "type": [
                    "integer",
                    "string"
                  ]
                },
                "set": {
                  "type": "object"
                }
              }
            }
          }
        }
      },
      "page": "/"
    }
    sfx_apply_macroAction

    Bend the whole sound with one knob: pitch (semitones, -24..24), length (time stretch 0.25..4; for music this changes tempo), punch, grit, space, distance, retro (0..1).

    View tool JSON
    {
      "name": "sfx_apply_macro",
      "kind": "act",
      "impl": "imperative",
      "description": "Bend the whole sound with one knob: pitch (semitones, -24..24), length (time stretch 0.25..4; for music this changes tempo), punch, grit, space, distance, retro (0..1).",
      "inputSchema": {
        "type": "object",
        "required": [
          "macro",
          "value"
        ],
        "properties": {
          "macro": {
            "type": "string",
            "enum": [
              "pitch",
              "length",
              "punch",
              "grit",
              "space",
              "distance",
              "retro"
            ]
          },
          "value": {
            "type": "number"
          }
        }
      },
      "page": "/"
    }
    sfx_mutateAction

    Randomly nudge pitch, timing, filters and gains of the loaded sound (music stays in tune).

    View tool JSON
    {
      "name": "sfx_mutate",
      "kind": "act",
      "impl": "imperative",
      "description": "Randomly nudge pitch, timing, filters and gains of the loaded sound (music stays in tune).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "amount": {
            "type": "number",
            "minimum": 0,
            "maximum": 1,
            "description": "Default 0.25"
          }
        }
      },
      "page": "/"
    }
    sfx_playAction

    Play the loaded sound through the speakers so the person can hear it, or stop playback. Browsers only allow sound after the person has clicked the page once.

    View tool JSON
    {
      "name": "sfx_play",
      "kind": "act",
      "impl": "imperative",
      "description": "Play the loaded sound through the speakers so the person can hear it, or stop playback. Browsers only allow sound after the person has clicked the page once.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "action": {
            "type": "string",
            "enum": [
              "play",
              "stop"
            ],
            "description": "Default play"
          },
          "loop": {
            "type": "boolean"
          }
        }
      },
      "page": "/"
    }
    sfx_historyAnswer

    List the history strip (every roll, remix and edit this session) or go back to an earlier entry by index (0 = newest).

    View tool JSON
    {
      "name": "sfx_history",
      "kind": "answer",
      "impl": "imperative",
      "description": "List the history strip (every roll, remix and edit this session) or go back to an earlier entry by index (0 = newest).",
      "inputSchema": {
        "type": "object",
        "properties": {
          "go_to": {
            "type": "integer",
            "minimum": 0,
            "description": "Omit to just list"
          }
        }
      },
      "page": "/"
    }
    sfx_exportAction

    Download the loaded sound to the person's computer as a 16-bit stereo WAV, or as sfx-forge/1 JSON.

    View tool JSON
    {
      "name": "sfx_export",
      "kind": "act",
      "impl": "imperative",
      "description": "Download the loaded sound to the person's computer as a 16-bit stereo WAV, or as sfx-forge/1 JSON.",
      "inputSchema": {
        "type": "object",
        "properties": {
          "format": {
            "type": "string",
            "enum": [
              "wav",
              "json"
            ],
            "description": "Default wav"
          }
        }
      },
      "page": "/"
    }