extract_frames
Extract key frames from recorded video using scene detection for visual changes or fixed-rate sampling for timed intervals. Choose the mode that fits your analysis needs.
Instructions
Extract key frames or fixed-rate frames from a recorded video.
mode="scene" selects frames around visual changes and uses scene_threshold
to control sensitivity; lower thresholds produce more frames. mode="fixed_fps"
samples at fps and should be used when timing matters more than scene
changes.
max_frames limits output size. When more frames are found than allowed, the
response reports dropped_for_max. inline_images=True returns FastMCP Image
content for clients that can display frames directly.
rotate_degrees applies orientation normalization when a backend produced a
sideways recording. ffmpeg and ffprobe must be available on PATH.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| video_path | Yes | Absolute path to the recorded .mov / .mp4. | |
| output_dir | Yes | Absolute directory to write PNG frames into. | |
| mode | No | Frame selection: 'scene' (visual-change keyframes) or 'fixed_fps' (sample at fps). | scene |
| scene_threshold | No | ffmpeg scene threshold for mode='scene'. Range 0.0-1.0. Lower = more frames. Default 0.1. | |
| fps | No | Sampling rate for mode='fixed_fps'. Ignored when mode='scene'. | |
| max_frames | No | Upper bound on returned frames. Excess reported as dropped_for_max. Default 50. | |
| inline_images | No | When true (default), embed PNGs as FastMCP Image content. WARNING: 50 inline PNGs can exhaust LLM context - set false and rely on output_dir paths for long sessions. | |
| rotate_degrees | No | Apply orientation normalization (0/90/180/270). Use only when the recording came out sideways. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||