Skip to main content
Glama
AIWerk

@aiwerk/mcp-server-elevenlabs

by AIWerk

separate_song_stems

Split an audio file into separate stems and save the result as a zip. Provide a local path or base64 input to extract vocals, drums, and instruments.

Instructions

Stem Separation Spends ElevenLabs credits. Returns application/zip bytes; pass output_path to save them.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
file_pathNoThe audio file to separate into stems. Local path. Required for this call.
file_base64NoBase64 contents for "file". Use this when the server cannot read your local disk.
output_pathNoWhere to write the returned bytes. Relative paths resolve against ELEVENLABS_OUTPUT_DIR. Omit it to get the data inline as base64 (small files only).
file_filenameNoFilename to send for "file". Some endpoints infer the audio format from it.
output_formatNoOutput format of the generated audio. Formatted as codec_sample_rate_bitrate. So an mp3 with 22.05kHz sample rate at 32kbs is represented as mp3_22050_32. MP3 with 192kbps bitrate requires you to be subscribed to Creator tier or above. PCM with 44.1kHz sample rate requires you to be subscribed to Pr
sign_with_c2paNoWhether to sign the generated song with C2PA. Applicable only for mp3 files.
stem_variation_idNoThe id of the stem variation to use.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=false, openWorldHint=true, idempotentHint=false, and destructiveHint=false. The description adds two genuinely useful pieces beyond that: the operation consumes ElevenLabs credits, and the response is zip bytes. It says nothing about permissions, processing time, or how many stems are produced, so it adds moderate rather than rich context.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two compact sentences with no filler, and the credit-cost warning is front-loaded. The first clause is awkwardly phrased, which slightly hurts readability, but there is no wasted content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a credit-consuming, non-idempotent generation tool with no output schema, the description covers cost and return type but leaves notable gaps: which stems the two_stems_v1/six_stems_v1 variations yield, expected latency, and input format constraints. Annotations plus the rich schema carry much of the load, so 3 is appropriate.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so all seven parameters are documented in the schema itself, and the description only restates output_path behavior ('pass output_path to save them'). It adds no meaning beyond the schema, which sets the baseline at 3.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose3/5

Does the description clearly state what the tool does and how it differs from similar tools?

The name and the phrase 'Stem Separation' identify the resource and action, and 'Returns application/zip bytes' clarifies the output type. However, the sentence is grammatically garbled ('Stem Separation Spends ElevenLabs credits') and does not distinguish this tool from closely related siblings like start_speaker_separation or audio_isolation, so an agent cannot reliably route between them from the description alone.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no statement of when to use this tool versus alternatives such as start_speaker_separation or audio_isolation, nor any prerequisites (e.g. supported input formats). The only actionable guidance is a hint about output_path, which is invocation detail rather than usage context.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Deploy Server

Other Tools