Skip to main content
Glama

Download a clip or finished video

download_video
Idempotent

Download a completed ClipUGC clip or finished video to a local mp4 file by providing its ID. Specify an output path to save it; missing directories are created.

Instructions

Download a completed clip (kind "clip", default; same as clipugc videos download <id>) or a completed finished video (kind "finished"; same as clipugc finished download <videoId>) to a local mp4 file. Pass an absolute output path; missing parent directories are created. Costs no credits. Fails if the video has not completed yet.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesClip or finished video id, as returned by other tools (numbers are fine as strings).
kindNo"clip" (default) for a clip id, "finished" for a finished video id (merged_video_id).
outputNoDestination file path (same as --output). Default: clipugc-video-<id>.mp4 or clipugc-finished-<id>.mp4 in the server's working directory.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed4 schema fields changedv1.4.0
    • changedInput schema / properties / id / description
      Previous value: -"Clip or ad id, as returned by other tools (numbers are fine as strings)."New value: +"Clip or finished video id, as returned by other tools (numbers are fine as strings)."
    • changedInput schema / properties / kind / description
      Previous value: -"\"clip\" (default) for a character video id, \"ad\" for a merged_video_id."New value: +"\"clip\" (default) for a clip id, \"finished\" for a finished video id (merged_video_id)."
    • changedInput schema / properties / kind / enum
      Previous value: -[
      -  "clip",
      -  "ad"
      -]New value: +[
      +  "clip",
      +  "finished",
      +  "ad"
      +]
    • changedInput schema / properties / output / description
      Previous value: -"Destination file path (same as --output). Default: clipugc-video-<id>.mp4 or clipugc-ad-<id>.mp4 in the server's working directory."New value: +"Destination file path (same as --output). Default: clipugc-video-<id>.mp4 or clipugc-finished-<id>.mp4 in the server's working directory."
  2. First observedv1.0.0

TDQS

A4/5.0
Behavior4/5

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

Annotations declare a non-read-only, idempotent, non-destructive, open-world operation; the description adds genuinely new context beyond them — file-system side effects (missing parent directories are created), the mp4 output form, zero credit cost, and the precondition that the video must have completed. It omits anything about overwrite behavior when the destination file already exists.

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?

Three tight sentences, front-loaded with the clip/finished distinction and ending on the precondition. The parenthetical CLI mappings add length for marginal benefit to an agent, but nothing is repetitive or padded.

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?

With no output schema, the description still tells the agent the result lands in a local mp4 file and defines the default filename, which covers the practical return expectation. Minor gaps remain around what is reported back on success and behavior on conflicting destinations.

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

Parameters4/5

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

Schema coverage is 100%, so baseline is 3. The description adds meaning the schema does not: the output path must be absolute, and the id is the same identifier returned by other tools. The `kind` enum semantics (clip vs finished vs ad, and which id type each expects) are also reinforced.

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?

States a specific verb and resource ("Download a completed clip ... or a completed finished video") and disambiguates the two variants via the `kind` parameter, even mapping each to its CLI command. It does not, however, distinguish itself from the sibling `get_video`, so an agent must infer that this writes a file while get_video likely returns metadata.

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

Usage Guidelines4/5

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

Gives clear context: default is `kind "clip"` for clip ids, `"finished"` for a merged_video_id, and it notes the tool fails if the video has not completed yet. No exclusions or named alternatives (e.g. use get_video first to check status) are offered, so it stops short of explicit when-not guidance.

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