Skip to main content
Glama

Make clips

make_clips

Use this when the user picks found clips to make. Cuts each one from the episode and renders it with captions burned in, in one step. Pass the numbers or refs get_episode listed (refs in brackets are fine), or any stretch of the episode as {"start_seconds", "end_seconds", "title"}. Optional style, caption_size, position, hook_title, fit and background apply to these clips. aspect is the shape: 9:16 (Shorts, Reels, TikTok), 4:5 (feeds), 1:1, 16:9 (YouTube) or source. Ask the person which shape before calling; with no aspect the clips are 9:16. Returns a job per clip; follow with get_job for the files. Do not use before get_episode reports the episode ready, and do not use to change a clip that is already made (use restyle_clip).

Input Schema

NameRequiredDescriptionDefault
fitNoHow the picture sits in the frame. "fill" (the default) crops it to fill the frame. "whole" shows the whole video, nothing cropped, with space around it; use when the user does not want a wide video cropped.
clipsYesNumbers or refs from get_episode, e.g. [2, 5] or ["a3f9"], or stretches {"start_seconds": 312, "end_seconds": 371, "title": "..."} on the episode. Up to 10.
styleNoA caption style id or name from list_styles, e.g. bold-punch.
aspectNoThe clip's shape. Ask the person first; 9:16 when left out.
positionNoWhere the captions sit. "up" and "down" move them from where they are now.
backgroundNoWhat fills the space around a whole video: "black", or "blur" for a blurred copy of the video. Only matters with fit "whole".
episode_idYesThe episode the clips were found in.
hook_titleNoThe title box at the top of the clip, on by default for new clips. false removes it, true puts the clip's title there, or give the words to show.
caption_sizeNoCaption size. "bigger" and "smaller" are relative to now.

Output Schema

NameRequiredDescriptionDefault
clipsYes
notesNo
aspectNoThe shape the clips are made in.
messageYes
episode_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / properties / aspect
      Added value: +{
      +  "description": "The clip's shape. Ask the person first; 9:16 when left out.",
      +  "enum": [
      +    "9:16",
      +    "4:5",
      +    "1:1",
      +    "16:9",
      +    "3:4",
      +    "source"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / properties / clips / description
      Previous value: -"Numbers or refs from get_episode, e.g. [2, 5] or [\"a3f9\"]. Up to 10."New value: +"Numbers or refs from get_episode, e.g. [2, 5] or [\"a3f9\"], or stretches {\"start_seconds\": 312, \"end_seconds\": 371, \"title\": \"...\"} on the episode. Up to 10."
    • addedInput schema / properties / clips / items / oneOf
      Added value: +[
      +  {
      +    "type": [
      +      "integer",
      +      "string"
      +    ]
      +  },
      +  {
      +    "properties": {
      +      "end_seconds": {
      +        "type": "number"
      +      },
      +      "start_seconds": {
      +        "type": "number"
      +      },
      +      "title": {
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "start_seconds",
      +      "end_seconds"
      +    ],
      +    "type": "object"
      +  }
      +]
    • removedInput schema / properties / clips / items / type
      Removed value: -[
      -  "integer",
      -  "string"
      -]
    • addedOutput schema / properties / aspect
      Added value: +{
      +  "description": "The shape the clips are made in.",
      +  "type": "string"
      +}
  2. First observed

TDQS

A4.7/5.0
Behavior4/5

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

With annotations already declaring non-read-only and non-destructive, the description adds real context: captions are burned in, cutting and rendering happen in one step, a job is returned per clip and must be followed up with get_job. It omits anything about render time, cost, or whether partial failures leave clips behind, which keeps it short of a 5.

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-loaded with the action and one-step behavior, then parameter guidance, then guardrails. It is on the long side and repeats the aspect/default point already in the schema, but every sentence carries operational information rather than filler.

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?

Covers the full call-and-follow-up loop for a job-returning render tool (get_job), states the readiness precondition, names the escape hatch for edits, and answers the aspect question an agent would otherwise have to ask twice. With an output schema present, no return-value explanation is needed.

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?

Schema coverage is 100%, but the description still adds value the schema cannot: aspects are mapped to real destinations (9:16 for Shorts/Reels/TikTok, 4:5 for feeds, 16:9 for YouTube), the 9:16 default is restated, and the optional style/caption_size/position/hook_title/fit/background group is framed as applying to these clips. It also clarifies that bracket refs from get_episode are acceptable input.

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?

Names a specific verb and resource ('Cuts each one from the episode and renders it with captions burned in, in one step') and clearly scopes it as the creation step distinct from restyle_clip and get_episode. An agent can tell exactly what this produces without opening the 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?

States the trigger ('use this when the user picks found clips to make'), the prerequisite ('do not use before get_episode reports the episode ready'), and the explicit alternative for later changes ('use restyle_clip'). It also adds a procedural rule the agent would otherwise miss: ask the person which aspect ratio before calling.

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