Skip to main content
Glama

fablecut_frame

LOOK at the footage — returns an actual image, not just numbers. REQUIRES A VISION-CAPABLE MODEL: if you cannot read images, pass text:true instead (or skip this tool and use fablecut_analyze_reference). Three modes.

Instructions

LOOK at the footage — returns an actual image, not just numbers. REQUIRES A VISION-CAPABLE MODEL: if you cannot read images, pass text:true instead (or skip this tool and use fablecut_analyze_reference). Three modes. (1) One frame of a source clip: pass path (an absolute file path, or a '/media/…' src — read where it lies, never copied) and t in seconds. (2) A contact sheet: pass frames (2–60) for one grid image with that many moments spread across the clip (from/to to survey part of it) — the cheap way to see what a whole clip holds. (3) With no path, time renders the COMPOSED TIMELINE at that moment through the editor's own compositor, graded and multi-track, exactly as export would. Use it before choosing a clip's in point, or to pick footage matching a blueprint's shots[] energy — seeing beats guessing. Needs ffmpeg on PATH (timeline mode runs in the open editor tab, else a headless browser).

Input Schema

NameRequiredDescriptionDefault
tNoSeconds into the source clip (default 0). Ignored when `frames` is passed.
toNoContact sheet: end of the range (default: the clip's duration)
colsNoContact-sheet columns (omit for the squarest layout — 6 frames give 3×2, 12 give 4×3)
fromNoContact sheet: start of the range to survey (default 0)
pathNoSource clip to look at: an absolute file path or a '/media/…' src. Read in place — nothing is copied into media/. Omit to render the timeline instead.
textNoReturn TEXT measurements instead of the image, for a client or model that cannot see one: brightness and luma levels, dominant named colours with their share, texture (detail within the frame, 0–100), and for a contact sheet a per-cell line with change-since-the-previous-cell. Measurements, NOT a caption — they say what the picture is made of, never what is in it. Use when you have no vision.
timeNoTIMELINE seconds to render, when `path` is omitted (default: the editor's playhead)
whereNoTimeline mode only: auto (default): an open editor tab, else headless · tab · headless
widthNoPixel width of the returned image (default 768 for one frame, 320 per cell for a sheet)
framesNoContact-sheet mode: number of moments to sample across the clip, 2–60 (default 12)
timeoutNoTimeline mode: seconds to wait for the render (default 60)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv1.14.0

TDQS

A4.8/5.0
Behavior5/5

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

With no annotations, the description carries the entire burden and does so: it discloses the vision-capability requirement, that `path` is read in place and never copied, that ffmpeg must be on PATH, and that timeline mode runs in the open editor tab or falls back to a headless browser. These are non-obvious operational constraints an agent would otherwise discover only by failure.

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?

The critical fact (image output, vision requirement) is front-loaded before the modal breakdown, and the three modes are cleanly numbered. It is long for a single paragraph and the trailing ffmpeg/browser note is slightly buried, but nearly every clause carries distinct information.

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?

An 11-parameter tool with no output schema and no annotations is covered well: mode disambiguation, defaults, ranges, dependencies on a vision model and ffmpeg, and the fallback sibling are all addressed. Since the tool returns an image rather than structured data, no output-schema explanation is needed.

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 the baseline is 3, but the description adds genuine meaning beyond the schema by explaining the mode-selection logic: `path` present means source frame, `frames` present means contact sheet, neither means timeline via `time`. It also clarifies the default image widths and the 2–60 frame range, though per-parameter detail largely duplicates the schema.

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?

"LOOK at the footage — returns an actual image, not just numbers" names a specific verb and output, and the three modes are enumerated explicitly (single frame, contact sheet, composed timeline). It differentiates itself from fablecut_analyze_reference by calling out that sibling as the non-vision fallback, so an agent can choose between them 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?

It states exactly when to use it ("before choosing a clip's `in` point, or to pick footage matching a blueprint's shots[] energy") and gives explicit alternatives and exclusions: pass `text:true` if not vision-capable, or skip this tool and use fablecut_analyze_reference. That is when/when-not/alternative coverage in full.

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