Bandmixr

AI mixing and mastering in the chat: check a song, mix your stems, change the mix in plain words.

我該用這個嗎

品質與安全性

A
說明品質
89%
結構描述完整度
82%
命名品質
95%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

發現項目(1)

  • LOWTool 'update_song' description lacks action verb在 update_song 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~4,249Token(工具定義)
~1.9 KB典型回應大小
顯著的注意力影響(128k 上下文的 3.32%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "bandmixr": {
      "url": "https://bandmixr.com/mcp"
    }
  }
}

遠端端點

https://bandmixr.com/mcpstreamable-http

它能做什麼

工具清單

工具(15)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢master_song(preset, genre)

Opens the Bandmixr studio in the chat to master or enhance a finished song (a stereo mix). The song is checked in the browser for loudness, peaks, stereo image and tonal balance, and a 30-second mastered preview plays next to the original. Mastering the full song needs a Bandmixr account.

輸入結構描述

{
  "type": "object",
  "properties": {
    "preset": {
      "type": "string",
      "enum": [
        "streaming",
        "optimal",
        "loud"
      ],
      "description": "Mastering style. streaming = optimized for Spotify and Apple Music; optimal = balanced (\"Standard\"); loud = maximum punch and loudness."
    },
    "genre": {
      "type": "string",
      "enum": [
        "rock_indie",
        "pop",
        "acoustic",
        "hip_hop_grime",
        "electronic",
        "reggae_dub",
        "orchestral",
        "metal",
        "jazz",
        "blues",
        "funk_soul",
        "punk",
        "other"
      ],
      "description": "Genre of the song. rock_indie = rock / indie; pop = pop; acoustic = acoustic, singer-songwriter; hip_hop_grime = hip hop, rap, trap, grime; electronic = electronic, EDM, house, techno; reggae_dub = reggae / dub; orchestral = orchestral, film score; metal = metal; jazz = jazz; blues = blues; funk_soul = funk / soul / R&B; punk = punk; other = anything else or not sure (balanced, genre-neutral)."
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢check_mix(genre)

Opens the Bandmixr Mix Analyzer in the chat. It checks a mix or master in the browser (the file is not uploaded): loudness (LUFS), true peak, clipping, stereo image and tonal balance, with a verdict for each and a 30-second mastered preview.

輸入結構描述

{
  "type": "object",
  "properties": {
    "genre": {
      "type": "string",
      "enum": [
        "rock_indie",
        "pop",
        "acoustic",
        "hip_hop_grime",
        "electronic",
        "reggae_dub",
        "orchestral",
        "metal",
        "jazz",
        "blues",
        "funk_soul",
        "punk",
        "other"
      ],
      "description": "Genre of the song. rock_indie = rock / indie; pop = pop; acoustic = acoustic, singer-songwriter; hip_hop_grime = hip hop, rap, trap, grime; electronic = electronic, EDM, house, techno; reggae_dub = reggae / dub; orchestral = orchestral, film score; metal = metal; jazz = jazz; blues = blues; funk_soul = funk / soul / R&B; punk = punk; other = anything else or not sure (balanced, genre-neutral)."
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_analyzer_session

Returns a 30-minute ticket and the address of the Bandmixr preview service, which the studio in the chat uses for the 30-second mastered preview. The studio calls this tool on its own; the assistant does not need to call it directly.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_account

Shows the connected Bandmixr account's plan and its limits (stems per song, song length, storage). Needs the person to connect their Bandmixr account.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢list_songs

Lists the person's Bandmixr songs, most recently changed first.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_song_status(songId)

One song's stems with their labels, uploads and analysis still running, whether the person has confirmed the labels, and where the mix and master stand.

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    }
  },
  "required": [
    "songId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡create_song(title, genre, preset, mix)

Creates a new song in Bandmixr for mixing stems and opens the studio with its upload box. The genre and the mastering style are the ones the person names (other and streaming when they name none). Mixing and mastering are part of it: they start by themselves once the stems are uploaded and the person has confirmed the labels in the studio.

輸入結構描述

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "The song's name, as the person calls it."
    },
    "genre": {
      "type": "string",
      "enum": [
        "rock_indie",
        "pop",
        "acoustic",
        "hip_hop_grime",
        "electronic",
        "reggae_dub",
        "orchestral",
        "metal",
        "jazz",
        "blues",
        "funk_soul",
        "punk",
        "other"
      ],
      "description": "Genre of the song. rock_indie = rock / indie; pop = pop; acoustic = acoustic, singer-songwriter; hip_hop_grime = hip hop, rap, trap, grime; electronic = electronic, EDM, house, techno; reggae_dub = reggae / dub; orchestral = orchestral, film score; metal = metal; jazz = jazz; blues = blues; funk_soul = funk / soul / R&B; punk = punk; other = anything else or not sure (balanced, genre-neutral)."
    },
    "preset": {
      "type": "string",
      "enum": [
        "streaming",
        "optimal",
        "loud"
      ],
      "description": "Mastering style. streaming = optimized for Spotify and Apple Music; optimal = balanced (\"Standard\"); loud = maximum punch and loudness."
    },
    "mix": {
      "description": "false = upload now, mix later (default true: mix once the labels are confirmed).",
      "type": "boolean"
    }
  },
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴update_song(songId, title, genre)

Changes the title or the genre of a song (not while it is being mixed).

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    },
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "description": "The song's name, as the person calls it."
    },
    "genre": {
      "type": "string",
      "enum": [
        "rock_indie",
        "pop",
        "acoustic",
        "hip_hop_grime",
        "electronic",
        "reggae_dub",
        "orchestral",
        "metal",
        "jazz",
        "blues",
        "funk_soul",
        "punk",
        "other"
      ],
      "description": "Genre of the song. rock_indie = rock / indie; pop = pop; acoustic = acoustic, singer-songwriter; hip_hop_grime = hip hop, rap, trap, grime; electronic = electronic, EDM, house, techno; reggae_dub = reggae / dub; orchestral = orchestral, film score; metal = metal; jazz = jazz; blues = blues; funk_soul = funk / soul / R&B; punk = punk; other = anything else or not sure (balanced, genre-neutral)."
    }
  },
  "required": [
    "songId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢open_song_studio(songId)

Opens the Bandmixr studio for a song in the chat. It shows what the song needs next: the upload box for stems, the label check (only the person can confirm labels there), the mix progress, or the player with the original, the mix and the master.

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    }
  },
  "required": [
    "songId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢get_song_session(songId)

Returns a 15-minute ticket for one of the person's songs, which the studio in the chat uses to upload stems, show the label check and the progress, and play the original, the mix and the master. The studio calls this tool on its own; the assistant does not need to call it directly.

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    }
  },
  "required": [
    "songId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟡prepare_full_master(title, genre)

Creates a new song named after the file the person checked in the studio and returns a short-lived ticket for uploading it, so the studio can upload and master the full song. The studio calls this tool when the person chooses to master the full song; the assistant does not need to call it directly.

輸入結構描述

{
  "type": "object",
  "properties": {
    "title": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "genre": {
      "type": "string",
      "enum": [
        "rock_indie",
        "pop",
        "acoustic",
        "hip_hop_grime",
        "electronic",
        "reggae_dub",
        "orchestral",
        "metal",
        "jazz",
        "blues",
        "funk_soul",
        "punk",
        "other"
      ],
      "description": "Genre of the song. rock_indie = rock / indie; pop = pop; acoustic = acoustic, singer-songwriter; hip_hop_grime = hip hop, rap, trap, grime; electronic = electronic, EDM, house, techno; reggae_dub = reggae / dub; orchestral = orchestral, film score; metal = metal; jazz = jazz; blues = blues; funk_soul = funk / soul / R&B; punk = punk; other = anything else or not sure (balanced, genre-neutral)."
    }
  },
  "required": [
    "title"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴set_stem_labels(songId, labels)

Sets what is on each stem from what the person says about their files (stem ids and file names come from get_song_status). It does not confirm the labels: the person still confirms them with "Labels are correct" in the studio before anything is mixed.

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    },
    "labels": {
      "minItems": 1,
      "maxItems": 64,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "stemId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64
          },
          "label": {
            "type": "string",
            "enum": [
              "kick",
              "snare",
              "hihat",
              "toms",
              "overheads",
              "room_mics",
              "drum_bus",
              "percussion",
              "bass_electric",
              "bass_acoustic",
              "bass_synth",
              "guitar_electric_clean",
              "guitar_electric_distorted",
              "guitar_acoustic",
              "guitar_nylon",
              "piano",
              "organ",
              "synth_pad",
              "synth_lead",
              "keys_other",
              "vocal_lead",
              "vocal_backing",
              "vocal_rap",
              "strings",
              "brass",
              "woodwinds",
              "instrumental",
              "ambient",
              "other"
            ],
            "description": "What is on the stem. kick = kick drum; snare = snare drum; hihat = hi-hat; toms = toms; overheads = drum overheads (cymbals and the whole kit from above); room_mics = drum room mics; drum_bus = all drums on one track (drum mix or drum loop); percussion = percussion (shaker, congas, claps, tambourine); bass_electric = electric bass guitar; bass_acoustic = upright or acoustic bass; bass_synth = synth bass or 808; guitar_electric_clean = clean electric guitar; guitar_electric_distorted = distorted or overdriven electric guitar; guitar_acoustic = acoustic guitar (steel strings); guitar_nylon = nylon-string or classical guitar; piano = piano; organ = organ; synth_pad = synth pad; synth_lead = synth lead; keys_other = other keys (Rhodes, e-piano, keyboard); vocal_lead = lead vocal (the main sung vocal); vocal_backing = backing vocals, harmonies or ad-libs; vocal_rap = rap vocal; strings = strings (violin, cello, string section); brass = brass (trumpet, trombone, horns); woodwinds = woodwinds (flute, sax, clarinet); instrumental = full instrumental or beat (everything but the vocals on one stereo track); ambient = ambience, effects, textures or noise; other = something else, or not sure."
          }
        },
        "required": [
          "stemId",
          "label"
        ]
      }
    }
  },
  "required": [
    "songId",
    "labels"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴mix_and_master(songId, preset, master)

Mixes an existing song's stems and masters the mix in one go (draft, final mix, master), for example to mix it again with another genre or mastering style; a song made with create_song is already set up for this. It waits for the uploads, the analysis and the person's "Labels are correct" in the studio, then starts by itself. The mastering style is the one the person names (streaming when they name none). The studio shows the progress and plays the result; a new mix replaces the earlier version made in the chat (downloaded versions and mixes made on the website stay).

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    },
    "preset": {
      "type": "string",
      "enum": [
        "streaming",
        "optimal",
        "loud"
      ],
      "description": "Mastering style. streaming = optimized for Spotify and Apple Music; optimal = balanced (\"Standard\"); loud = maximum punch and loudness."
    },
    "master": {
      "description": "false = mix only, without a master (default true).",
      "type": "boolean"
    }
  },
  "required": [
    "songId"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴start_mastering(songId, preset)

Masters the song's finished mix, or masters it again in another style (for example "louder": loud). The song needs a finished mix, from mix_and_master or an uploaded mix. The studio shows the progress and plays the new master, which replaces an earlier master made in the chat (downloaded ones stay).

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    },
    "preset": {
      "type": "string",
      "enum": [
        "streaming",
        "optimal",
        "loud"
      ],
      "description": "Mastering style. streaming = optimized for Spotify and Apple Music; optimal = balanced (\"Standard\"); loud = maximum punch and loudness."
    }
  },
  "required": [
    "songId",
    "preset"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴adjust_mix(songId, changes, preset)

Changes a song mixed from stems the way the person asks after listening: a stem louder or quieter, muted or back in, more or less reverb, or placed left, center or right. One call takes all the changes for a song. Bandmixr then makes the mix and the master again with the changes (about as long as the first mix); the studio shows the progress and plays the new version, which replaces the earlier version made in the chat (downloaded versions and mixes made on the website stay). Stem ids, file names and the current settings come from get_song_status.

輸入結構描述

{
  "type": "object",
  "properties": {
    "songId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 64,
      "description": "The song id from list_songs or create_song."
    },
    "changes": {
      "minItems": 1,
      "maxItems": 64,
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "stemId": {
            "type": "string",
            "minLength": 1,
            "maxLength": 64,
            "description": "The stem id from get_song_status."
          },
          "volumeDb": {
            "description": "The stem's new level against Bandmixr's own balance in dB: 0 = Bandmixr's balance, +3 = 3 dB louder, -6 = 6 dB quieter. It replaces the current value (get_song_status shows it), so \"a bit louder\" from +2 is +4. About 1 to 2 dB is \"a bit\", 3 to 4 dB \"clearly\", 6 dB \"a lot\".",
            "type": "number",
            "minimum": -24,
            "maximum": 12
          },
          "muted": {
            "description": "true = leave the stem out of the mix; false = bring it back.",
            "type": "boolean"
          },
          "reverb": {
            "type": "string",
            "enum": [
              "default",
              "none",
              "low",
              "medium",
              "high"
            ],
            "description": "How much reverb the stem gets. default = Bandmixr's own amount; none = no reverb (dry); low = less reverb than Bandmixr's amount; medium = more reverb than Bandmixr's amount; high = a lot of reverb."
          },
          "pan": {
            "type": "string",
            "enum": [
              "auto",
              "left",
              "center",
              "right"
            ],
            "description": "Where the stem sits from left to right. auto = Bandmixr places it; left = to the left; center = in the center; right = to the right."
          }
        },
        "required": [
          "stemId"
        ]
      }
    },
    "preset": {
      "description": "Mastering style for the new master; the current one if not given.",
      "type": "string",
      "enum": [
        "streaming",
        "optimal",
        "loud"
      ]
    }
  },
  "required": [
    "songId",
    "changes"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本15 個工具