Skip to main content
Glama

upload_extend_audio

Extend uploaded audio (non-Suno tracks) with AI-generated content. Set continueAt to define where the extension starts and get a longer track.

Instructions

NEW — Extend uploaded audio (NOT a Suno track) with new AI-generated content. For Suno tracks, use extend_music instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
waitNoSet false to submit and return immediately with the task_id (async mode) — then poll with check_task and fetch with download_result. Recommended for long generations to avoid client-side watchdog timeouts.
modelNoV5
styleNoStyle tags for the extension
titleNo
promptNoLYRICS for the extended section (sung as written); omit and set instrumental=true for an instrumental extension.
filenameNo
uploadUrlYesURL of the audio file to extend
continueAtYesREQUIRED in practice: second where the extension starts (> 0 and < the upload's length). kie fails every request without it.
download_dirNoAbsolute directory to save the file(s) into (created if missing). Defaults to the server's kie/assets/raw/. Must be absolute — the MCP server's working directory is not the caller's.
instrumentalNo
max_wait_secondsNoOverride the blocking-mode polling budget in seconds (default: audio 300). Ignored when wait=false.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv5.5.0
    • changedInput schema / properties / continueAt / description
      Previous value: -"Timestamp in seconds where to start the extension"New value: +"REQUIRED in practice: second where the extension starts (> 0 and < the upload's length). kie fails every request without it."
    • changedInput schema / properties / model / enum
      Previous value: -[
      -  "V3_5",
      -  "V4",
      -  "V4_5",
      -  "V4_5PLUS",
      -  "V4_5ALL",
      -  "V5",
      -  "V5_5"
      -]New value: +[
      +  "V4",
      +  "V4_5",
      +  "V4_5PLUS",
      +  "V4_5ALL",
      +  "V5",
      +  "V5_5",
      +  "V6",
      +  "V6_MINI",
      +  "V6_WILD"
      +]
    • changedInput schema / properties / prompt / description
      Previous value: -"Description of the extension content"New value: +"LYRICS for the extended section (sung as written); omit and set instrumental=true for an instrumental extension."
    • changedInput schema / required
      Previous value: -[
      -  "uploadUrl"
      -]New value: +[
      +  "uploadUrl",
      +  "continueAt"
      +]
  2. First observedv4.7.0

TDQS

A3.8/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full behavioral burden, yet it says nothing about this being an asynchronous task submission, expected generation latency, polling/retrieval flow, or failure modes. The async/polling behavior only appears incidentally inside parameter descriptions (wait, max_wait_seconds), not in the tool description.

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

Conciseness5/5

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

Two short sentences, front-loaded with the differentiator and immediately followed by the alternative. No wasted words.

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 an 11-parameter, no-annotation, no-output-schema tool, the description covers only differentiation. Schema parameter text compensates for the async flow, but the description leaves the agent without any hint of the required-vs-optional reality of continueAt or the long-running nature of the call.

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

Parameters2/5

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

With 11 parameters and only 64% schema description coverage, several inputs (model, title, filename, instrumental) have no description anywhere. The tool description contributes no parameter meaning at all — notably it never mentions that continueAt is effectively required and must fall inside the upload's duration.

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

Purpose5/5

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

States a specific verb (extend) and resource (uploaded audio, explicitly not a Suno track), and names the sibling it is not — extend_music — so an agent can route without opening either schema.

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

Usage Guidelines5/5

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

Explicitly gives both the when (uploaded audio) and the when-not (Suno tracks) plus the alternative tool to use in that case. Routing is fully determined.

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