SCREENCAST-MCP / TOOLS / PRODUCE
Add Callouts
callout
Annotate a video with timed boxes, text labels, and arrows. Fallback fonts used are listed in fallbackFonts; characters no font covers are reported in warnings.
producewritesdestructivesince v0.21.0
00:00PARAMETERS
| Name | Type | Description |
|---|---|---|
input required | string | Path to the source video. |
items required | object[] | Boxes, text labels, and arrows, drawn in order (later on top), in video pixels. Each shows from..to seconds (default: whole video); color is a name, #RRGGBB, or name@alpha. at least 1 items, at most 50 items |
items[box].x required | number | |
items[box].y required | number | |
items[box].width required | number | > 0 |
items[box].height required | number | > 0 |
items[box].thickness | number | Outline px (default 4). > 0 |
items[box].fill | boolean | Fill instead of outline. |
items[box].from | number | ≥ 0 |
items[box].to | number | > 0 |
items[box].color | string | |
items[text].x required | number | |
items[text].y required | number | |
items[text].text required | string | |
items[text].size | number | Font size px (default 32). > 0 |
items[text].background | boolean | Dark panel behind the text (default true). |
items[text].from | number | ≥ 0 |
items[text].to | number | > 0 |
items[text].color | string | |
items[arrow].x1 required | number | |
items[arrow].y1 required | number | |
items[arrow].x2 required | number | Head (x2,y2) is the point the arrow points at. |
items[arrow].y2 required | number | |
items[arrow].thickness | number | Shaft px (default 8). > 0 |
items[arrow].from | number | ≥ 0 |
items[arrow].to | number | > 0 |
items[arrow].color | string | |
fontFile | string | Font: a .ttf/.otf/.ttc path or a C:\Windows\Fonts file name. Default: bundled Inter, with a covering system font for scripts it lacks (CJK, emoji, Arabic, ...). |
output | string | Optional output path. Defaults under SCREENCAST_HOME/edits. |
overwrite | boolean | Allow replacing an existing file at the output path (default false). |
00:05A MINIMAL CALL
callout {
"input": "recording.mp4",
"items": [
{
"type": "box",
"x": 1,
"y": 1,
"width": 1,
"height": 1
}
]
}
The required arguments only, with placeholder values. Everything else takes its default.
00:10WHAT COMES BACK
Structured content (structuredContent), alongside a text summary:
| Field | Type | Description |
|---|---|---|
outputPath always | string | Path of the file written. |
00:15SEEN IN