Skip to main content
Glama

Add or mix video audio

video_add_audio
Destructive

Add, replace, or mix an audio track into an existing video to score or re-voice it, then render a new output file while keeping the source media unchanged.

Instructions

Add, replace, or mix an audio track into an existing video and render a new output file. Returns JSON {success, output_path}. Use to score or re-voice a video; source video and audio are read only. Pass video_path as the source video and audio_path as the audio file; set mix to combine or false to replace.

Input Schema

NameRequiredDescriptionDefault
mixNoTrue mixes the new audio with existing video audio; false replaces the original audio track.
volumeNoAudio gain from 0.0 to 2.0, where 1.0 preserves original loudness.
fade_inNoNon-negative fade-in duration in seconds applied to the inserted audio.
fade_outNoNon-negative fade-out duration in seconds applied near the inserted audio end.
overwriteNoExplicitly allow replacing existing media. Existing non-media files are protected.
audio_pathYesAbsolute path to an existing local audio file such as MP3, WAV, M4A, or AAC.
start_timeNoOptional start offset in seconds where the inserted audio begins.
video_pathYesAbsolute path to an existing local video file. The input file is read only.
output_pathNoDestination video path. Auto-generated when omitted; an existing supplied path may be overwritten.
duration_policyNoHow to reconcile audio and video length: keep_video (default, preserves the full video/outro), pad_audio, loop_audio, trim_audio, or shortest (may trim the outro).keep_video

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.16.4
    • addedInput schema / properties / overwrite
      Added value: +{
      +  "default": false,
      +  "description": "Explicitly allow replacing existing media. Existing non-media files are protected.",
      +  "title": "Overwrite",
      +  "type": "boolean"
      +}
  2. Changed2 schema fields changedv1.16.0
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / properties / duration_policy
      Added value: +{
      +  "default": "keep_video",
      +  "description": "How to reconcile audio and video length: keep_video (default, preserves the full video/outro), pad_audio, loop_audio, trim_audio, or shortest (may trim the outro).",
      +  "title": "Duration Policy",
      +  "type": "string"
      +}
  3. Changed8 schema fields changedv1.5.1
    • addedInput schema / properties / audio_path / description
      Added value: +"Absolute path to an existing local audio file such as MP3, WAV, M4A, or AAC."
    • addedInput schema / properties / fade_in / description
      Added value: +"Non-negative fade-in duration in seconds applied to the inserted audio."
    • addedInput schema / properties / fade_out / description
      Added value: +"Non-negative fade-out duration in seconds applied near the inserted audio end."
    • addedInput schema / properties / mix / description
      Added value: +"True mixes the new audio with existing video audio; false replaces the original audio track."
    • addedInput schema / properties / output_path / description
      Added value: +"Destination video path. Auto-generated when omitted; an existing supplied path may be overwritten."
    • addedInput schema / properties / start_time / description
      Added value: +"Optional start offset in seconds where the inserted audio begins."
    • addedInput schema / properties / video_path / description
      Added value: +"Absolute path to an existing local video file. The input file is read only."
    • addedInput schema / properties / volume / description
      Added value: +"Audio gain from 0.0 to 2.0, where 1.0 preserves original loudness."
  4. First observedv0.2.0

TDQS

A3.7/5.0
Behavior4/5

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

With destructiveHint=true and readOnlyHint=false already declared, the description adds real value by stating the source video and audio are read only and that a new file is rendered. It does not cover the overwrite permission or what happens to the existing output file, but the safety story is largely consistent and supplemented.

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?

Four tight sentences, front-loaded with the action and output behavior, and every sentence carries information. The "Returns JSON {success, output_path}" clause is mildly redundant given an output schema exists, which keeps it off a 5.

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

Completeness4/5

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

For a 10-parameter mutation with full schema coverage and an output schema, the description supplies the essential orientation: what is read, what is written, and the two key path parameters. The only notable omission is sibling disambiguation among the several audio-track tools.

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 ten parameters are already documented, and the description's mapping of video_path/audio_path and mix to replace-vs-combine mostly restates the schema. Baseline 3 is appropriate; it adds no syntax, units, or edge cases beyond what the schema already provides.

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

Purpose4/5

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

The description uses a specific verb set (add, replace, mix) on a concrete resource (audio track in an existing video) and states that it renders a new output file, so the agent knows exactly what happens. It falls short of a 5 because it never distinguishes itself from a very close sibling, video_mix_audio, which an agent could easily confuse it with.

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

Usage Guidelines3/5

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

"Use to score or re-voice a video" gives a genuine usage context and the mix flag adds a mode choice, so usage is implied clearly. But there are no exclusions and no routing to alternatives such as video_mix_audio, video_add_generated_audio, video_duck_audio, or video_audio_bed, which is a meaningful gap given how many audio-overlay siblings exist.

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