Skip to main content
Glama

RipClip

Add to a clip

add_to_clip
Destructive

Use this when the user wants to put text, a sticker, a sound or B-roll on a clip: "add a title that says NO WAY", "a fire emoji on the punchline", "a whoosh at 4 seconds", "find me B-roll for this line". clip_id comes from list_clips; times are seconds into the clip. Text: text (each line of a multi-line style on its own line), text_style (a title, lower third or subscribe style), text_effect (neon, gradient, 3D), text_animation (how it comes in), text_loop, text_color, text_size, text_position top / middle / bottom, text_start_seconds and text_end_seconds (0 = 3 s from the start). Sticker: sticker (a name, an id or the emoji itself), sticker_at_seconds, sticker_seconds (default 2), sticker_position, sticker_size. Sound effect: sound_effect at sound_at_seconds. Names come from edit_catalog. B-roll (stock footage, Premium, in a call of its own): broll_line (words the speaker says) or broll_at_seconds, broll_search (what it shows; empty = from that line), broll_seconds 1.5-8, broll_layout top / bottom (the half it fills, the speaker on the other). Not for: the clip's own captions (style_clip, edit_clip), background music (edit_clip) or subtitles in another language (translate_captions). Saved as an undoable version; the clip's video is replaced by the new render. Costs no Horizon Units. Returns job_id: poll job_status, then preview_frame.

Input Schema

NameRequiredDescriptionDefault
textNo
clip_idYes
stickerNo
text_loopNo
text_sizeNo
broll_lineNo
text_colorNo
text_styleNo
text_effectNo
broll_layoutNotop
broll_searchNo
sound_effectNo
sticker_sizeNo
broll_secondsNo
text_positionNo
text_animationNo
sticker_secondsNo
broll_at_secondsNo
sound_at_secondsNo
sticker_positionNo
text_end_secondsNo
sticker_at_secondsNo
text_start_secondsNo

Output Schema

NameRequiredDescriptionDefault
nextYes
notesYes
job_idYes
statusYes
changedYes
clip_idYes
editor_urlYes
estimated_huNo
voiceover_job_idNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

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

Goes well beyond the annotations (destructiveHint=true, idempotentHint=false) by disclosing that the edit is saved as an undoable version, that the clip's video is replaced by a new render, and that it costs no Horizon Units. It also describes the post-call workflow (job_id, poll job_status, then preview_frame), which is the key behavioral consequence for an asynchronous mutation.

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?

Front-loads the when-to-use intent before parameter detail and excludes non-targets, so it reads in the right order. It is a dense single block, though, and the four parameter groups would scan faster as separate lines; the quoted example phrases earn their space but add length.

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

Completeness5/5

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

For a 23-parameter mutating tool with an output schema, the description covers the missing pieces: per-mode parameter meaning, side effects, cost, and the follow-up polling path. An agent has everything needed to select the tool, build arguments for the intended mode, and handle the async result.

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

Parameters5/5

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

With 23 parameters and 0% schema description coverage, the description carries the full burden and largely succeeds: it groups parameters by mode (text, sticker, sound, B-roll), gives positional enums (top/middle/bottom, top/bottom layout), concrete value examples (neon/gradient/3D, title/lower third/subscribe), and default semantics such as text_end_seconds 0 meaning 3 s and broll_seconds 1.5-8. Remaining gaps are minor (no numeric ranges for text_size/sticker_size, and sticker_seconds is described as defaulting to 2 while the schema default is null).

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 precise verb and resource set (put text, a sticker, a sound or B-roll on a clip) and grounds it in concrete user phrasings. It explicitly distinguishes this from siblings that handle captions, music, and translated subtitles, so an agent can route correctly without opening other schemas.

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?

Provides both positive triggers (quoted user intents for titles, emoji stickers, whooshes, B-roll) and an explicit 'Not for' list naming style_clip, edit_clip, and translate_captions as the correct alternatives. It also states that B-roll must be requested in a call of its own, which is a usage constraint that changes how the agent batches calls.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources