Tool tree
gradeNot graded
get_capabilitiesAnswer
Read Inkframe capabilities and the safe, same-origin workspace routes.
View tool JSON
{
"name": "get_capabilities",
"kind": "answer",
"impl": "imperative",
"description": "Read Inkframe capabilities and the safe, same-origin workspace routes.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}list_templatesAnswer
List and filter Inkframe templates, including aspect, duration, and editable layer metadata.
View tool JSON
{
"name": "list_templates",
"kind": "answer",
"impl": "imperative",
"description": "List and filter Inkframe templates, including aspect, duration, and editable layer metadata.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"maxLength": 80
},
"kind": {
"type": "string",
"enum": [
"all",
"editor"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20
}
},
"additionalProperties": false
},
"page": "/editor"
}navigate_workspaceAction
Navigate to a known Inkframe workspace route. Explicit confirmation is required because navigation can discard unsaved work.
View tool JSON
{
"name": "navigate_workspace",
"kind": "act",
"impl": "imperative",
"description": "Navigate to a known Inkframe workspace route. Explicit confirmation is required because navigation can discard unsaved work.",
"inputSchema": {
"type": "object",
"properties": {
"route": {
"type": "string",
"enum": [
"home",
"editor",
"templates"
]
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"route",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}open_templateAction
Open a validated template. After navigation, continue the requested workflow with the editor_* tools registered by the destination page. Explicit confirmation is required because navigation can discard unsaved work.
View tool JSON
{
"name": "open_template",
"kind": "act",
"impl": "imperative",
"description": "Open a validated template. After navigation, continue the requested workflow with the editor_* tools registered by the destination page. Explicit confirmation is required because navigation can discard unsaved work.",
"inputSchema": {
"type": "object",
"properties": {
"templateId": {
"type": "string",
"minLength": 1
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"templateId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_inspect_video_momentsAction
Sample six video frames. Visually choose preferredStartSeconds for beat montage; metrics are not semantic judgments and sampling may miss action peaks.
View tool JSON
{
"name": "editor_inspect_video_moments",
"kind": "act",
"impl": "imperative",
"description": "Sample six video frames. Visually choose preferredStartSeconds for beat montage; metrics are not semantic judgments and sampling may miss action peaks.",
"inputSchema": {
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"assetId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_plan_beat_montageAction
Preview beat-aligned trims, not rendered video. First inspect each video's frames to choose order/start times. Videos cycle in supplied order. Applying replaces clips/audio/transitions/captions; text retention is optional. Review returned plan and warnings first.
View tool JSON
{
"name": "editor_plan_beat_montage",
"kind": "act",
"impl": "imperative",
"description": "Preview beat-aligned trims, not rendered video. First inspect each video's frames to choose order/start times. Videos cycle in supplied order. Applying replaces clips/audio/transitions/captions; text retention is optional. Review returned plan and warnings first.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"videos": {
"minItems": 1,
"maxItems": 30,
"type": "array",
"items": {
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"preferredStartSeconds": {
"type": "number",
"minimum": 0,
"maximum": 86400
}
},
"required": [
"assetId"
],
"additionalProperties": false
}
},
"audioAssetId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"durationSeconds": {
"type": "number",
"minimum": 1,
"maximum": 60
},
"musicStartSeconds": {
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 86400
},
"minShotSeconds": {
"default": 1.5,
"type": "number",
"minimum": 0.5,
"maximum": 10
},
"maxShotSeconds": {
"default": 4,
"type": "number",
"minimum": 0.5,
"maximum": 20
},
"preserveText": {
"default": true,
"type": "boolean"
}
},
"required": [
"aspect",
"videos",
"audioAssetId",
"durationSeconds",
"musicStartSeconds",
"minShotSeconds",
"maxShotSeconds",
"preserveText"
],
"additionalProperties": false
},
"page": "/editor"
}editor_apply_beat_montageAction
Apply the exact reviewed beat montage in one undoable, retry-safe command. Requires its planId and revision. Replaces the selected aspect master. Play the timeline to review the result; undo to restore the previous edit.
View tool JSON
{
"name": "editor_apply_beat_montage",
"kind": "act",
"impl": "imperative",
"description": "Apply the exact reviewed beat montage in one undoable, retry-safe command. Requires its planId and revision. Replaces the selected aspect master. Play the timeline to review the result; undo to restore the previous edit.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"planId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"planId",
"expectedRevision",
"operationId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_prepare_transcriptionAction
Download trimmed WAV for desktop Whisper; returns a ticket. Does not run native software. Normal-speed master video only. Follow returned handoff instructions.
View tool JSON
{
"name": "editor_prepare_transcription",
"kind": "act",
"impl": "imperative",
"description": "Download trimmed WAV for desktop Whisper; returns a ticket. Does not run native software. Normal-speed master video only. Follow returned handoff instructions.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"clipId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_preview_transcriptAction
Preview untrusted Whisper JSON segments {start,end,text}, in trimmed-WAV seconds, using a handoff ticket. Returns cues and previewId; no edits.
View tool JSON
{
"name": "editor_preview_transcript",
"kind": "act",
"impl": "imperative",
"description": "Preview untrusted Whisper JSON segments {start,end,text}, in trimmed-WAV seconds, using a handoff ticket. Returns cues and previewId; no edits.",
"inputSchema": {
"type": "object",
"properties": {
"ticketId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"content": {
"type": "string",
"minLength": 1,
"maxLength": 200000
}
},
"required": [
"ticketId",
"content"
],
"additionalProperties": false
},
"page": "/editor"
}editor_apply_transcriptAction
Apply reviewed previewId to a new caption lane; preserves captions. Confirmed, revision-checked, undoable and retry-safe by operationId.
View tool JSON
{
"name": "editor_apply_transcript",
"kind": "act",
"impl": "imperative",
"description": "Apply reviewed previewId to a new caption lane; preserves captions. Confirmed, revision-checked, undoable and retry-safe by operationId.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"ticketId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"previewId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"ticketId",
"previewId",
"expectedRevision",
"operationId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_track_objectAction
Analyze a top-left normalized source box using local pixel matching. Returns clip-local centers and confidence, without editing. Low confidence stops tracking; this is not semantic segmentation. Inspect the path, correct it, then attach to an image graphic.
View tool JSON
{
"name": "editor_track_object",
"kind": "act",
"impl": "imperative",
"description": "Analyze a top-left normalized source box using local pixel matching. Returns clip-local centers and confidence, without editing. Low confidence stops tracking; this is not semantic segmentation. Inspect the path, correct it, then attach to an image graphic.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"box": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"width": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"height": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
}
},
"required": [
"x",
"y",
"width",
"height"
],
"additionalProperties": false
}
},
"required": [
"aspect",
"clipId",
"box"
],
"additionalProperties": false
},
"page": "/editor"
}editor_correct_object_trackAction
Correct a clip-local tracking point with a source-normalized center. Does not edit the timeline or certify recovery of a lost track.
View tool JSON
{
"name": "editor_correct_object_track",
"kind": "act",
"impl": "imperative",
"description": "Correct a clip-local tracking point with a source-normalized center. Does not edit the timeline or certify recovery of a lost track.",
"inputSchema": {
"type": "object",
"properties": {
"trackingId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"trackingId",
"frame",
"x",
"y"
],
"additionalProperties": false
},
"page": "/editor"
}editor_attach_object_trackAction
Apply a reviewed complete track to an existing image graphic as x/y keyframes in one undo step. Replaces that graphic's position animation; other channels are preserved. Lost tracks cannot be applied.
View tool JSON
{
"name": "editor_attach_object_track",
"kind": "act",
"impl": "imperative",
"description": "Apply a reviewed complete track to an existing image graphic as x/y keyframes in one undo step. Replaces that graphic's position animation; other channels are preserved. Lost tracks cannot be applied.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"trackingId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"targetClipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"trackingId",
"targetClipId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_set_selective_gradeAction
Replace up to eight independent feathered ellipse/rectangle regions on a clip. Center and size are source-normalized; inverted masks grade outside. Uses SDR pixels and the same preview/export renderer. Empty regions clears local grading; global settings stay unchanged.
View tool JSON
{
"name": "editor_set_selective_grade",
"kind": "act",
"impl": "imperative",
"description": "Replace up to eight independent feathered ellipse/rectangle regions on a clip. Center and size are source-normalized; inverted masks grade outside. Uses SDR pixels and the same preview/export renderer. Empty regions clears local grading; global settings stay unchanged.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"regions": {
"maxItems": 8,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"shape": {
"type": "string",
"enum": [
"ellipse",
"rectangle"
]
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"width": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"height": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"feather": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"inverted": {
"type": "boolean"
},
"exposure": {
"type": "number",
"minimum": -2,
"maximum": 2
},
"temperature": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"tint": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"saturation": {
"type": "number",
"minimum": 0,
"maximum": 2
}
},
"required": [
"id",
"shape",
"x",
"y",
"width",
"height",
"feather",
"exposure",
"temperature",
"tint",
"saturation"
],
"additionalProperties": false
}
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"clipId",
"regions",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_set_clip_keyframesAction
Replace clip-local animation channels. Frame controls include the exclusive end boundary; interpolation is linear or hold.
View tool JSON
{
"name": "editor_set_clip_keyframes",
"kind": "act",
"impl": "imperative",
"description": "Replace clip-local animation channels. Frame controls include the exclusive end boundary; interpolation is linear or hold.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"keyframes": {
"type": "object",
"properties": {
"x": {
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"value": {
"type": "number"
},
"interpolation": {
"type": "string",
"enum": [
"linear",
"hold"
]
}
},
"required": [
"id",
"frame",
"value",
"interpolation"
],
"additionalProperties": false
}
},
"y": {
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"value": {
"type": "number"
},
"interpolation": {
"type": "string",
"enum": [
"linear",
"hold"
]
}
},
"required": [
"id",
"frame",
"value",
"interpolation"
],
"additionalProperties": false
}
},
"scale": {
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"value": {
"type": "number"
},
"interpolation": {
"type": "string",
"enum": [
"linear",
"hold"
]
}
},
"required": [
"id",
"frame",
"value",
"interpolation"
],
"additionalProperties": false
}
},
"rotation": {
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"value": {
"type": "number"
},
"interpolation": {
"type": "string",
"enum": [
"linear",
"hold"
]
}
},
"required": [
"id",
"frame",
"value",
"interpolation"
],
"additionalProperties": false
}
},
"opacity": {
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"value": {
"type": "number"
},
"interpolation": {
"type": "string",
"enum": [
"linear",
"hold"
]
}
},
"required": [
"id",
"frame",
"value",
"interpolation"
],
"additionalProperties": false
}
}
},
"additionalProperties": false
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"clipId",
"keyframes"
],
"additionalProperties": false
},
"page": "/editor"
}editor_upsert_caption_cuesAction
Atomically add or update caption cues by ID on existing caption lanes. Same-lane overlap is invalid.
View tool JSON
{
"name": "editor_upsert_caption_cues",
"kind": "act",
"impl": "imperative",
"description": "Atomically add or update caption cues by ID on existing caption lanes. Same-lane overlap is invalid.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"cues": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 4000
}
},
"required": [
"id",
"trackId",
"startFrame",
"endFrame",
"text"
],
"additionalProperties": false
}
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"cues"
],
"additionalProperties": false
},
"page": "/editor"
}editor_import_captionsAction
Import plain SRT/WebVTT atomically. Starts round down and ends round up to frames; unsupported styling and collisions are errors.
View tool JSON
{
"name": "editor_import_captions",
"kind": "act",
"impl": "imperative",
"description": "Import plain SRT/WebVTT atomically. Starts round down and ends round up to frames; unsupported styling and collisions are errors.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"format": {
"type": "string",
"enum": [
"srt",
"vtt"
]
},
"content": {
"type": "string",
"minLength": 1,
"maxLength": 200000
},
"mode": {
"default": "append",
"type": "string",
"enum": [
"append",
"replace"
]
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"trackId",
"format",
"content",
"mode"
],
"additionalProperties": false
},
"page": "/editor"
}editor_plan_audio_balanceAction
Read-only preview of interval-based music ducking under selected narration. Returns a validated rule, gain envelope, warnings, and revision. This does not analyze speech or measure loudness. Review the plan before applying the same inputs with its revision.
View tool JSON
{
"name": "editor_plan_audio_balance",
"kind": "act",
"impl": "imperative",
"description": "Read-only preview of interval-based music ducking under selected narration. Returns a validated rule, gain envelope, warnings, and revision. This does not analyze speech or measure loudness. Review the plan before applying the same inputs with its revision.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"music": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"audio",
"video"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"kind",
"id"
],
"additionalProperties": false
},
"narration": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"audio",
"video"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"kind",
"id"
],
"additionalProperties": false
}
},
"strength": {
"type": "string",
"enum": [
"gentle",
"balanced",
"strong"
]
},
"ruleId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"aspect",
"music",
"narration",
"strength",
"ruleId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_apply_audio_balanceAction
Apply a reviewed interval-based balance plan with confirmed:true and its expectedRevision. Revalidates the same music, narration, strength, and new ruleId inputs; creates one ducking rule in one undo step. Existing rule IDs are rejected. Retry with the same operationId; undo with editor_undo or remove with editor_remove_audio_ducking.
View tool JSON
{
"name": "editor_apply_audio_balance",
"kind": "act",
"impl": "imperative",
"description": "Apply a reviewed interval-based balance plan with confirmed:true and its expectedRevision. Revalidates the same music, narration, strength, and new ruleId inputs; creates one ducking rule in one undo step. Existing rule IDs are rejected. Retry with the same operationId; undo with editor_undo or remove with editor_remove_audio_ducking.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"music": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"audio",
"video"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"kind",
"id"
],
"additionalProperties": false
},
"narration": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"audio",
"video"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"kind",
"id"
],
"additionalProperties": false
}
},
"strength": {
"type": "string",
"enum": [
"gentle",
"balanced",
"strong"
]
},
"ruleId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"music",
"narration",
"strength",
"ruleId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_set_audio_duckingAction
Duck a target by a negative dB attenuation during selected narration intervals. Rules combine using strongest attenuation.
View tool JSON
{
"name": "editor_set_audio_ducking",
"kind": "act",
"impl": "imperative",
"description": "Duck a target by a negative dB attenuation during selected narration intervals. Rules combine using strongest attenuation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"rule": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"target": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"audio",
"video"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"kind",
"id"
],
"additionalProperties": false
},
"triggers": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"kind": {
"type": "string",
"enum": [
"audio",
"video"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"kind",
"id"
],
"additionalProperties": false
}
},
"attenuationDb": {
"type": "number",
"minimum": -60,
"maximum": 0
},
"attackFrames": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"releaseFrames": {
"type": "integer",
"minimum": 0,
"maximum": 1800
}
},
"required": [
"id",
"target",
"triggers",
"attenuationDb",
"attackFrames",
"releaseFrames"
],
"additionalProperties": false
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"rule"
],
"additionalProperties": false
},
"page": "/editor"
}editor_remove_audio_duckingAction
Remove a ducking rule with explicit confirmation.
View tool JSON
{
"name": "editor_remove_audio_ducking",
"kind": "act",
"impl": "imperative",
"description": "Remove a ducking rule with explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"ruleId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"ruleId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_freeze_clip_rangeAction
Replace a timeline interval inside a video clip with a held source timestamp in microseconds. Duration stays fixed and held audio is muted.
View tool JSON
{
"name": "editor_freeze_clip_range",
"kind": "act",
"impl": "imperative",
"description": "Replace a timeline interval inside a video clip with a held source timestamp in microseconds. Duration stays fixed and held audio is muted.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"sourceTimeUs": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"clipId",
"startFrame",
"endFrame",
"sourceTimeUs"
],
"additionalProperties": false
},
"page": "/editor"
}editor_set_clip_speed_rampAction
Replace positive speed controls; source time integrates the speed curve. Timeline duration is preserved and embedded audio is muted.
View tool JSON
{
"name": "editor_set_clip_speed_ramp",
"kind": "act",
"impl": "imperative",
"description": "Replace positive speed controls; source time integrates the speed curve. Timeline duration is preserved and embedded audio is muted.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"points": {
"minItems": 1,
"maxItems": 1000,
"type": "array",
"items": {
"type": "object",
"properties": {
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"speed": {
"type": "number",
"exclusiveMinimum": 0
},
"interpolation": {
"type": "string",
"enum": [
"linear",
"hold"
]
}
},
"required": [
"frame",
"speed",
"interpolation"
],
"additionalProperties": false
}
},
"audioPolicy": {
"type": "string",
"const": "mute"
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"clipId",
"points",
"audioPolicy"
],
"additionalProperties": false
},
"page": "/editor"
}editor_add_trackAction
Create a named lane. Requires an explicit aspect, current revision, and retry-safe operation ID.
View tool JSON
{
"name": "editor_add_track",
"kind": "act",
"impl": "imperative",
"description": "Create a named lane. Requires an explicit aspect, current revision, and retry-safe operation ID.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"kind": {
"type": "string",
"enum": [
"video",
"text",
"audio",
"caption"
]
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"id",
"kind",
"name"
],
"additionalProperties": false
},
"page": "/editor"
}editor_reorder_tracksAction
Set lane order using every track ID exactly once. Earlier video lanes render above later video lanes.
View tool JSON
{
"name": "editor_reorder_tracks",
"kind": "act",
"impl": "imperative",
"description": "Set lane order using every track ID exactly once. Earlier video lanes render above later video lanes.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"trackIds": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"trackIds"
],
"additionalProperties": false
},
"page": "/editor"
}editor_place_clipAction
Place a clip at an absolute frame on a video lane without ripple or source trim changes.
View tool JSON
{
"name": "editor_place_clip",
"kind": "act",
"impl": "imperative",
"description": "Place a clip at an absolute frame on a video lane without ripple or source trim changes.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"clipId",
"trackId",
"startFrame"
],
"additionalProperties": false
},
"page": "/editor"
}editor_set_clip_transformAction
Set static transform: x/y in normalized canvas coordinates, raw source scale, rotation in radians, normalized anchor; opacity is 0–1.
View tool JSON
{
"name": "editor_set_clip_transform",
"kind": "act",
"impl": "imperative",
"description": "Set static transform: x/y in normalized canvas coordinates, raw source scale, rotation in radians, normalized anchor; opacity is 0–1.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"transform": {
"type": "object",
"properties": {
"x": {
"type": "number"
},
"y": {
"type": "number"
},
"scale": {
"type": "number",
"exclusiveMinimum": 0
},
"rotation": {
"type": "number"
},
"anchor": {
"type": "object",
"properties": {
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"x",
"y"
],
"additionalProperties": false
}
},
"required": [
"x",
"y",
"scale",
"rotation",
"anchor"
],
"additionalProperties": false
},
"opacity": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"aspect",
"expectedRevision",
"operationId",
"clipId",
"transform"
],
"additionalProperties": false
},
"page": "/editor"
}editor_get_capabilitiesAnswer
Discover the recommended Inkframe agent workflows, tool groups, safeguards, and timeline limits. Start here instead of scanning every atomic tool.
View tool JSON
{
"name": "editor_get_capabilities",
"kind": "answer",
"impl": "imperative",
"description": "Discover the recommended Inkframe agent workflows, tool groups, safeguards, and timeline limits. Start here instead of scanning every atomic tool.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_get_state_summaryAnswer
Get a compact summary of the current editor canvas and timeline.
View tool JSON
{
"name": "editor_get_state_summary",
"kind": "answer",
"impl": "imperative",
"description": "Get a compact summary of the current editor canvas and timeline.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_get_projectAnswer
Inspect bounded, sanitized project timelines. Follow nextOffset to read every item; maxItems may shrink to fit the response. Keep aspect and revision fixed across pages.
View tool JSON
{
"name": "editor_get_project",
"kind": "answer",
"impl": "imperative",
"description": "Inspect bounded, sanitized project timelines. Follow nextOffset to read every item; maxItems may shrink to fit the response. Keep aspect and revision fixed across pages.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"maxItems": {
"type": "integer",
"minimum": 1,
"maximum": 25
},
"offset": {
"default": 0,
"type": "integer",
"minimum": 0,
"maximum": 100000
}
},
"required": [
"offset"
],
"additionalProperties": false
},
"page": "/editor"
}editor_validate_projectAction
Check export readiness, missing media, unsafe text, timeline gaps, overflow risk, and transition integrity.
View tool JSON
{
"name": "editor_validate_project",
"kind": "act",
"impl": "imperative",
"description": "Check export readiness, missing media, unsafe text, timeline gaps, overflow risk, and transition integrity.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_get_render_diagnosticsAnswer
Inspect Elah adapter diagnostics and browser encoding capability alongside project validation.
View tool JSON
{
"name": "editor_get_render_diagnostics",
"kind": "answer",
"impl": "imperative",
"description": "Inspect Elah adapter diagnostics and browser encoding capability alongside project validation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_color_inspectAction
Sample browser-readable source frames for exposure, white-balance, saturation, palette, and lighting drift. Falls back deterministically to clip filter metadata when source pixels are unavailable.
View tool JSON
{
"name": "editor_color_inspect",
"kind": "act",
"impl": "imperative",
"description": "Sample browser-readable source frames for exposure, white-balance, saturation, palette, and lighting drift. Falls back deterministically to clip filter metadata when source pixels are unavailable.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipIds": {
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_color_proposeAction
Propose per-shot videoFilter candidates. A single-video candidate requires three independent review agents: colorist, technical reviewer, visual critic. Delegate all three, preview with includeImages:true, submit their feedback via editor_color_submit_review, and revise until all judge improvement. If delegation is unavailable, leave unapproved. Never simulate independent reviewers.
View tool JSON
{
"name": "editor_color_propose",
"kind": "act",
"impl": "imperative",
"description": "Propose per-shot videoFilter candidates. A single-video candidate requires three independent review agents: colorist, technical reviewer, visual critic. Delegate all three, preview with includeImages:true, submit their feedback via editor_color_submit_review, and revise until all judge improvement. If delegation is unavailable, leave unapproved. Never simulate independent reviewers.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipIds": {
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"findingIds": {
"maxItems": 400,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 160
}
},
"creativeIntent": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"strength": {
"type": "number",
"minimum": 0,
"maximum": 2
},
"candidates": {
"minItems": 1,
"maxItems": 12,
"type": "array",
"items": {
"type": "object",
"properties": {
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"rationale": {
"type": "string",
"minLength": 1,
"maxLength": 1000
},
"videoFilter": {
"type": "object",
"properties": {
"preset": {
"type": "string",
"enum": [
"none",
"cinematic",
"warm",
"cool",
"vintage",
"mono",
"custom"
]
},
"brightness": {
"type": "number",
"minimum": 0.5,
"maximum": 1.5
},
"contrast": {
"type": "number",
"minimum": 0.5,
"maximum": 1.5
},
"saturation": {
"type": "number",
"minimum": 0,
"maximum": 2
},
"sepia": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"grayscale": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"hueRotate": {
"type": "number",
"minimum": -30,
"maximum": 30
},
"selectiveRegions": {
"maxItems": 8,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"shape": {
"type": "string",
"enum": [
"ellipse",
"rectangle"
]
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"width": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"height": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"feather": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"inverted": {
"type": "boolean"
},
"exposure": {
"type": "number",
"minimum": -2,
"maximum": 2
},
"temperature": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"tint": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"saturation": {
"type": "number",
"minimum": 0,
"maximum": 2
}
},
"required": [
"id",
"shape",
"x",
"y",
"width",
"height",
"feather",
"exposure",
"temperature",
"tint",
"saturation"
],
"additionalProperties": false
}
},
"exposure": {
"type": "number",
"minimum": -2,
"maximum": 2
},
"temperature": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"tint": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"shadows": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"highlights": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"toneCurve": {
"type": "string",
"enum": [
"linear",
"filmic"
]
}
},
"required": [
"preset",
"brightness",
"contrast",
"saturation",
"sepia",
"grayscale",
"hueRotate"
],
"additionalProperties": false
}
},
"required": [
"clipId",
"rationale",
"videoFilter"
],
"additionalProperties": false
}
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_color_previewAction
Preview up to four candidates per image batch using includeImages:true. Returns paired before/after source-only frames rendered with native grading, not the whole composition. Metadata-only previews cannot authorize approval. Classify every evidenced candidate as improves, neutral, or worse.
View tool JSON
{
"name": "editor_color_preview",
"kind": "act",
"impl": "imperative",
"description": "Preview up to four candidates per image batch using includeImages:true. Returns paired before/after source-only frames rendered with native grading, not the whole composition. Metadata-only previews cannot authorize approval. Classify every evidenced candidate as improves, neutral, or worse.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"targetIds": {
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"changeIds": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 160
}
},
"includeImages": {
"default": false,
"type": "boolean"
}
},
"required": [
"proposalId",
"includeImages"
],
"additionalProperties": false
},
"page": "/editor"
}editor_color_submit_reviewSensitive Action
Record one delegated colorist, technical, or critic review of an exact single-video image preview. Supply the actual independent agent ID and its feedback. Three distinct agents must judge improves before approval. A revised candidate needs fresh images and reviews.
View tool JSON
{
"name": "editor_color_submit_review",
"kind": "transact",
"impl": "imperative",
"description": "Record one delegated colorist, technical, or critic review of an exact single-video image preview. Supply the actual independent agent ID and its feedback. Three distinct agents must judge improves before approval. A revised candidate needs fresh images and reviews.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"previewId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"persona": {
"type": "string",
"enum": [
"colorist",
"technical",
"critic"
]
},
"reviewerId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"verdict": {
"type": "string",
"enum": [
"improves",
"revise",
"reject"
]
},
"findings": {
"type": "string",
"minLength": 20,
"maxLength": 2000
},
"requestedChanges": {
"type": "string",
"minLength": 1,
"maxLength": 2000
}
},
"required": [
"proposalId",
"previewId",
"persona",
"reviewerId",
"verdict",
"findings",
"requestedChanges"
],
"additionalProperties": false
},
"page": "/editor"
}editor_color_approveAction
Record a visual decision for every candidate in an exact preview. Only candidates judged improves receive one-use, revision-bound approval; neutral and worse candidates cannot be applied.
View tool JSON
{
"name": "editor_color_approve",
"kind": "act",
"impl": "imperative",
"description": "Record a visual decision for every candidate in an exact preview. Only candidates judged improves receive one-use, revision-bound approval; neutral and worse candidates cannot be applied.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"previewId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"decisions": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "object",
"properties": {
"changeId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"decision": {
"type": "string",
"enum": [
"improves",
"neutral",
"worse"
]
},
"reason": {
"type": "string",
"minLength": 1,
"maxLength": 500
}
},
"required": [
"changeId",
"decision"
],
"additionalProperties": false
}
},
"changeIds": {
"minItems": 1,
"maxItems": 100,
"type": "array",
"items": {
"type": "string",
"minLength": 1,
"maxLength": 160
}
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"proposalId",
"previewId",
"decisions",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_color_applyAction
Atomically apply only exact, previewed, revision-bound color changes explicitly judged improves and authorized by a one-use approval.
View tool JSON
{
"name": "editor_color_apply",
"kind": "act",
"impl": "imperative",
"description": "Atomically apply only exact, previewed, revision-bound color changes explicitly judged improves and authorized by a one-use approval.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"approvalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"proposalId",
"approvalId",
"expectedRevision",
"operationId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_color_undoAction
Atomically restore the filters captured by a color operation. Only the latest unchanged color operation can be undone.
View tool JSON
{
"name": "editor_color_undo",
"kind": "act",
"impl": "imperative",
"description": "Atomically restore the filters captured by a color operation. Only the latest unchanged color operation can be undone.",
"inputSchema": {
"type": "object",
"properties": {
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"undoOperationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"expectedRevision": {
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"operationId",
"undoOperationId",
"expectedRevision"
],
"additionalProperties": false
},
"page": "/editor"
}editor_color_statusAnswer
Check whether color proposals, previews, approvals, and operations remain valid at the current project revision.
View tool JSON
{
"name": "editor_color_status",
"kind": "answer",
"impl": "imperative",
"description": "Check whether color proposals, previews, approvals, and operations remain valid at the current project revision.",
"inputSchema": {
"type": "object",
"properties": {
"proposalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"previewId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"approvalId": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"operationId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_capture_frameAction
Seek the active Elah preview, report active timeline items, and optionally return a reduced JPEG data URL without changing project state.
View tool JSON
{
"name": "editor_capture_frame",
"kind": "act",
"impl": "imperative",
"description": "Seek the active Elah preview, report active timeline items, and optionally return a reduced JPEG data URL without changing project state.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"frame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"includeImage": {
"default": false,
"type": "boolean"
}
},
"required": [
"frame",
"includeImage"
],
"additionalProperties": false
},
"page": "/editor"
}editor_capture_contact_sheetSensitive Action
Capture representative active-canvas frames, inspect timeline contents and contrast, and publish a visible in-editor contact sheet for human review.
View tool JSON
{
"name": "editor_capture_contact_sheet",
"kind": "transact",
"impl": "imperative",
"description": "Capture representative active-canvas frames, inspect timeline contents and contrast, and publish a visible in-editor contact sheet for human review.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"frames": {
"minItems": 2,
"maxItems": 8,
"type": "array",
"items": {
"type": "integer",
"minimum": 0,
"maximum": 1800
}
},
"includeImages": {
"default": false,
"type": "boolean"
}
},
"required": [
"includeImages"
],
"additionalProperties": false
},
"page": "/editor"
}editor_get_export_statusAnswer
Read browser render progress, recovery guidance, and metadata for the latest exported MP4.
View tool JSON
{
"name": "editor_get_export_status",
"kind": "answer",
"impl": "imperative",
"description": "Read browser render progress, recovery guidance, and metadata for the latest exported MP4.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_get_export_artifactAnswer
Return the retained page-scoped MP4 Blob URL, integrity metadata, and browser playback verification for the latest completed export.
View tool JSON
{
"name": "editor_get_export_artifact",
"kind": "answer",
"impl": "imperative",
"description": "Return the retained page-scoped MP4 Blob URL, integrity metadata, and browser playback verification for the latest completed export.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_list_style_presetsAction
List text styles with native Elah preview and export parity.
View tool JSON
{
"name": "editor_list_style_presets",
"kind": "act",
"impl": "imperative",
"description": "List text styles with native Elah preview and export parity.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_list_assetsAnswer
List safe asset metadata without exposing File objects, object URLs, data URLs, or secrets.
View tool JSON
{
"name": "editor_list_assets",
"kind": "answer",
"impl": "imperative",
"description": "List safe asset metadata without exposing File objects, object URLs, data URLs, or secrets.",
"inputSchema": {
"type": "object",
"properties": {
"maxItems": {
"type": "integer",
"minimum": 1,
"maximum": 100
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_get_attribution_reportAction
Create a copyable provenance and attribution report for media used by the active or specified timeline.
View tool JSON
{
"name": "editor_get_attribution_report",
"kind": "act",
"impl": "imperative",
"description": "Create a copyable provenance and attribution report for media used by the active or specified timeline.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"includeUnused": {
"default": false,
"type": "boolean"
}
},
"required": [
"includeUnused"
],
"additionalProperties": false
},
"page": "/editor"
}editor_search_stock_videosAnswer
Search sanitized Pexels video metadata for the requested canvas.
View tool JSON
{
"name": "editor_search_stock_videos",
"kind": "answer",
"impl": "imperative",
"description": "Search sanitized Pexels video metadata for the requested canvas.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"required": [
"query"
],
"additionalProperties": false
},
"page": "/editor"
}editor_import_stock_videoAction
Download a selected Pexels video into the browser and append it to both canvas timelines.
View tool JSON
{
"name": "editor_import_stock_video",
"kind": "act",
"impl": "imperative",
"description": "Download a selected Pexels video into the browser and append it to both canvas timelines.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"videoId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"required": [
"query",
"videoId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_search_stock_photosAnswer
Search sanitized Pexels photo metadata for the requested canvas.
View tool JSON
{
"name": "editor_search_stock_photos",
"kind": "answer",
"impl": "imperative",
"description": "Search sanitized Pexels photo metadata for the requested canvas.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"required": [
"query"
],
"additionalProperties": false
},
"page": "/editor"
}editor_import_stock_photoAction
Download a selected Pexels photo into the browser and append it to both canvas timelines.
View tool JSON
{
"name": "editor_import_stock_photo",
"kind": "act",
"impl": "imperative",
"description": "Download a selected Pexels photo into the browser and append it to both canvas timelines.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"photoId": {
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"required": [
"query",
"photoId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_search_licensed_musicAction
Search downloadable CC0/CC BY/CC BY-SA music from Freesound with source and license metadata.
View tool JSON
{
"name": "editor_search_licensed_music",
"kind": "act",
"impl": "imperative",
"description": "Search downloadable CC0/CC BY/CC BY-SA music from Freesound with source and license metadata.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
}
},
"required": [
"query"
],
"additionalProperties": false
},
"page": "/editor"
}editor_import_licensed_musicAction
Import a selected Freesound track into this browser and retain its source, creator, and license. Requires confirmation.
View tool JSON
{
"name": "editor_import_licensed_music",
"kind": "act",
"impl": "imperative",
"description": "Import a selected Freesound track into this browser and retain its source, creator, and license. Requires confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
},
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"audioId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"confirmed",
"query",
"audioId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_search_licensed_sfxAction
Search CC0/CC BY/CC BY-SA professional sound effects from Freesound with attribution metadata.
View tool JSON
{
"name": "editor_search_licensed_sfx",
"kind": "act",
"impl": "imperative",
"description": "Search CC0/CC BY/CC BY-SA professional sound effects from Freesound with attribution metadata.",
"inputSchema": {
"type": "object",
"properties": {
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
}
},
"required": [
"query"
],
"additionalProperties": false
},
"page": "/editor"
}editor_import_licensed_sfxAction
Import a selected Freesound effect into this browser and retain its source, creator, and license. Requires confirmation.
View tool JSON
{
"name": "editor_import_licensed_sfx",
"kind": "act",
"impl": "imperative",
"description": "Import a selected Freesound effect into this browser and retain its source, creator, and license. Requires confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
},
"query": {
"type": "string",
"minLength": 2,
"maxLength": 120
},
"audioId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 1
}
},
"required": [
"confirmed",
"query",
"audioId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_import_audio_urlAction
Download a confirmed HTTPS audio source into the browser and add it to the active timeline.
View tool JSON
{
"name": "editor_import_audio_url",
"kind": "act",
"impl": "imperative",
"description": "Download a confirmed HTTPS audio source into the browser and add it to the active timeline.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
},
"url": {
"type": "string",
"format": "uri"
},
"name": {
"type": "string",
"minLength": 1,
"maxLength": 160
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"trimStartFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"sourceUrl": {
"type": "string",
"format": "uri"
},
"creatorName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"creatorUrl": {
"type": "string",
"format": "uri"
},
"provider": {
"type": "string",
"enum": [
"mixkit",
"freesound"
]
},
"licenseName": {
"type": "string",
"minLength": 1,
"maxLength": 120
},
"licenseUrl": {
"type": "string",
"format": "uri"
},
"attributionRequired": {
"type": "boolean"
}
},
"required": [
"confirmed",
"url"
],
"additionalProperties": false
},
"page": "/editor"
}editor_request_media_pickerAction
Open Inkframe's native media picker so the user can choose local video, image, or audio files.
View tool JSON
{
"name": "editor_request_media_picker",
"kind": "act",
"impl": "imperative",
"description": "Open Inkframe's native media picker so the user can choose local video, image, or audio files.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_plan_storyboardAction
Validate and preview a multi-scene storyboard without changing the editor. Returns the approval token required by editor_compose_storyboard.
View tool JSON
{
"name": "editor_plan_storyboard",
"kind": "act",
"impl": "imperative",
"description": "Validate and preview a multi-scene storyboard without changing the editor. Returns the approval token required by editor_compose_storyboard.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"scenes": {
"minItems": 1,
"maxItems": 12,
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"maxLength": 400
},
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"durationSeconds": {
"default": 3,
"type": "number",
"minimum": 0.5,
"maximum": 20
},
"x": {
"default": 50,
"type": "number",
"minimum": 6,
"maximum": 94
},
"y": {
"default": 50,
"type": "number",
"minimum": 8,
"maximum": 90
},
"fontSize": {
"default": 64,
"type": "integer",
"minimum": 24,
"maximum": 180
},
"color": {
"default": "#f2ede3",
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"fontFamily": {
"default": "sans",
"type": "string",
"enum": [
"sans",
"modern",
"serif",
"cursive",
"mono",
"display",
"editorial",
"rounded"
]
},
"fontWeight": {
"default": 700,
"type": "integer",
"minimum": 100,
"maximum": 900
},
"textAlign": {
"default": "center",
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"animationIn": {
"default": "rise",
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"animationOut": {
"default": "fade",
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"animationDurationSeconds": {
"default": 0.4,
"type": "number",
"minimum": 0.05,
"maximum": 2
}
},
"required": [
"text",
"durationSeconds",
"x",
"y",
"fontSize",
"color",
"fontFamily",
"fontWeight",
"textAlign",
"animationIn",
"animationOut",
"animationDurationSeconds"
],
"additionalProperties": false
}
},
"transition": {
"default": {
"kind": "fade",
"direction": "left",
"easing": "ease-out",
"durationSeconds": 0.4
},
"type": "object",
"properties": {
"kind": {
"default": "fade",
"type": "string",
"enum": [
"fade",
"slide",
"wipe"
]
},
"direction": {
"default": "left",
"type": "string",
"enum": [
"left",
"right",
"up",
"down"
]
},
"easing": {
"default": "ease-out",
"type": "string",
"enum": [
"linear",
"ease-in",
"ease-out"
]
},
"durationSeconds": {
"default": 0.4,
"type": "number",
"minimum": 0,
"maximum": 2
}
},
"required": [
"kind",
"direction",
"easing",
"durationSeconds"
],
"additionalProperties": false
},
"preserveAudio": {
"default": true,
"type": "boolean"
},
"variantName": {
"type": "string",
"minLength": 1,
"maxLength": 80
}
},
"required": [
"scenes",
"transition",
"preserveAudio"
],
"additionalProperties": false
},
"page": "/editor"
}editor_auto_fix_projectAction
Apply conservative export-readiness fixes and optionally correct failed text contrast at one captured frame. Requires explicit confirmation and reports every change.
View tool JSON
{
"name": "editor_auto_fix_project",
"kind": "act",
"impl": "imperative",
"description": "Apply conservative export-readiness fixes and optionally correct failed text contrast at one captured frame. Requires explicit confirmation and reports every change.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"contrastFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_compose_storyboardAction
Replace the visual timeline with the exact storyboard returned by editor_plan_storyboard. Requires its approval token and explicit human confirmation.
View tool JSON
{
"name": "editor_compose_storyboard",
"kind": "act",
"impl": "imperative",
"description": "Replace the visual timeline with the exact storyboard returned by editor_plan_storyboard. Requires its approval token and explicit human confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"scenes": {
"minItems": 1,
"maxItems": 12,
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1,
"maxLength": 400
},
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"durationSeconds": {
"default": 3,
"type": "number",
"minimum": 0.5,
"maximum": 20
},
"x": {
"default": 50,
"type": "number",
"minimum": 6,
"maximum": 94
},
"y": {
"default": 50,
"type": "number",
"minimum": 8,
"maximum": 90
},
"fontSize": {
"default": 64,
"type": "integer",
"minimum": 24,
"maximum": 180
},
"color": {
"default": "#f2ede3",
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"fontFamily": {
"default": "sans",
"type": "string",
"enum": [
"sans",
"modern",
"serif",
"cursive",
"mono",
"display",
"editorial",
"rounded"
]
},
"fontWeight": {
"default": 700,
"type": "integer",
"minimum": 100,
"maximum": 900
},
"textAlign": {
"default": "center",
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"animationIn": {
"default": "rise",
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"animationOut": {
"default": "fade",
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"animationDurationSeconds": {
"default": 0.4,
"type": "number",
"minimum": 0.05,
"maximum": 2
}
},
"required": [
"text",
"durationSeconds",
"x",
"y",
"fontSize",
"color",
"fontFamily",
"fontWeight",
"textAlign",
"animationIn",
"animationOut",
"animationDurationSeconds"
],
"additionalProperties": false
}
},
"transition": {
"default": {
"kind": "fade",
"direction": "left",
"easing": "ease-out",
"durationSeconds": 0.4
},
"type": "object",
"properties": {
"kind": {
"default": "fade",
"type": "string",
"enum": [
"fade",
"slide",
"wipe"
]
},
"direction": {
"default": "left",
"type": "string",
"enum": [
"left",
"right",
"up",
"down"
]
},
"easing": {
"default": "ease-out",
"type": "string",
"enum": [
"linear",
"ease-in",
"ease-out"
]
},
"durationSeconds": {
"default": 0.4,
"type": "number",
"minimum": 0,
"maximum": 2
}
},
"required": [
"kind",
"direction",
"easing",
"durationSeconds"
],
"additionalProperties": false
},
"preserveAudio": {
"default": true,
"type": "boolean"
},
"variantName": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"approvalToken": {
"type": "string",
"minLength": 8,
"maxLength": 80
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"scenes",
"transition",
"preserveAudio",
"approvalToken",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_list_variantsAction
List isolated timeline drafts without changing the active edit.
View tool JSON
{
"name": "editor_list_variants",
"kind": "act",
"impl": "imperative",
"description": "List isolated timeline drafts without changing the active edit.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_create_variantAction
Create an isolated snapshot of the current or specified canvas for safe creative comparison.
View tool JSON
{
"name": "editor_create_variant",
"kind": "act",
"impl": "imperative",
"description": "Create an isolated snapshot of the current or specified canvas for safe creative comparison.",
"inputSchema": {
"type": "object",
"properties": {
"name": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"required": [
"name"
],
"additionalProperties": false
},
"page": "/editor"
}editor_apply_variantAction
Replace the matching canvas timeline with an isolated variant. Requires explicit confirmation.
View tool JSON
{
"name": "editor_apply_variant",
"kind": "act",
"impl": "imperative",
"description": "Replace the matching canvas timeline with an isolated variant. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"variantId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"variantId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_delete_variantSensitive Action
Delete an isolated variant without changing the active edit. Requires explicit confirmation.
View tool JSON
{
"name": "editor_delete_variant",
"kind": "transact",
"impl": "imperative",
"description": "Delete an isolated variant without changing the active edit. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"variantId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"variantId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_switch_canvasAction
Switch the active canvas aspect ratio.
View tool JSON
{
"name": "editor_switch_canvas",
"kind": "act",
"impl": "imperative",
"description": "Switch the active canvas aspect ratio.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
}
},
"required": [
"aspect"
],
"additionalProperties": false
},
"page": "/editor"
}editor_select_timeline_itemAction
Select an existing clip, text overlay, or audio track in the editor timeline.
View tool JSON
{
"name": "editor_select_timeline_item",
"kind": "act",
"impl": "imperative",
"description": "Select an existing clip, text overlay, or audio track in the editor timeline.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"itemType": {
"type": "string",
"enum": [
"clip",
"textOverlay",
"audioTrack"
]
},
"itemId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"itemType",
"itemId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_add_text_overlayAction
Add a text overlay to the current or specified canvas.
View tool JSON
{
"name": "editor_add_text_overlay",
"kind": "act",
"impl": "imperative",
"description": "Add a text overlay to the current or specified canvas.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"fontSize": {
"type": "number",
"minimum": 1,
"maximum": 500
},
"color": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"fontFamily": {
"type": "string",
"enum": [
"sans",
"modern",
"serif",
"cursive",
"mono",
"display",
"editorial",
"rounded"
]
},
"fontWeight": {
"type": "integer",
"minimum": 100,
"maximum": 900
},
"fontStyle": {
"type": "string",
"enum": [
"normal",
"italic"
]
},
"textAlign": {
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"stylePreset": {
"type": "string",
"const": "classic"
},
"contrast": {
"type": "string",
"const": "outline"
},
"animation": {
"type": "object",
"properties": {
"in": {
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"out": {
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"durationFrames": {
"type": "integer",
"minimum": 1,
"maximum": 1800
}
},
"required": [
"durationFrames"
],
"additionalProperties": false
}
},
"additionalProperties": false
},
"page": "/editor"
}editor_update_text_overlayAction
Update fields on an existing text overlay.
View tool JSON
{
"name": "editor_update_text_overlay",
"kind": "act",
"impl": "imperative",
"description": "Update fields on an existing text overlay.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"overlayId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"text": {
"type": "string",
"minLength": 1,
"maxLength": 2000
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"fontSize": {
"type": "number",
"minimum": 1,
"maximum": 500
},
"color": {
"type": "string",
"pattern": "^#[0-9a-fA-F]{6}$"
},
"fontFamily": {
"type": "string",
"enum": [
"sans",
"modern",
"serif",
"cursive",
"mono",
"display",
"editorial",
"rounded"
]
},
"fontWeight": {
"type": "integer",
"minimum": 100,
"maximum": 900
},
"fontStyle": {
"type": "string",
"enum": [
"normal",
"italic"
]
},
"textAlign": {
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"stylePreset": {
"type": "string",
"const": "classic"
},
"contrast": {
"type": "string",
"const": "outline"
},
"animation": {
"type": "object",
"properties": {
"in": {
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"out": {
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"durationFrames": {
"type": "integer",
"minimum": 1,
"maximum": 1800
}
},
"required": [
"durationFrames"
],
"additionalProperties": false
}
},
"required": [
"overlayId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_remove_text_overlayAction
Remove a text overlay. Requires explicit confirmation.
View tool JSON
{
"name": "editor_remove_text_overlay",
"kind": "act",
"impl": "imperative",
"description": "Remove a text overlay. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"overlayId": {
"type": "string",
"minLength": 1
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"overlayId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_update_clipAction
Update timing, trim, volume, or export-safe video color grade fields on an existing media clip.
View tool JSON
{
"name": "editor_update_clip",
"kind": "act",
"impl": "imperative",
"description": "Update timing, trim, volume, or export-safe video color grade fields on an existing media clip.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"trimStartFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"trimEndFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"videoFilter": {
"type": "object",
"properties": {
"preset": {
"type": "string",
"enum": [
"none",
"cinematic",
"warm",
"cool",
"vintage",
"mono",
"custom"
]
},
"brightness": {
"type": "number",
"minimum": 0.5,
"maximum": 1.5
},
"contrast": {
"type": "number",
"minimum": 0.5,
"maximum": 1.5
},
"saturation": {
"type": "number",
"minimum": 0,
"maximum": 2
},
"sepia": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"grayscale": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"hueRotate": {
"type": "number",
"minimum": -30,
"maximum": 30
},
"selectiveRegions": {
"maxItems": 8,
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"shape": {
"type": "string",
"enum": [
"ellipse",
"rectangle"
]
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"width": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"height": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 1
},
"feather": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"inverted": {
"type": "boolean"
},
"exposure": {
"type": "number",
"minimum": -2,
"maximum": 2
},
"temperature": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"tint": {
"type": "number",
"minimum": -1,
"maximum": 1
},
"saturation": {
"type": "number",
"minimum": 0,
"maximum": 2
}
},
"required": [
"id",
"shape",
"x",
"y",
"width",
"height",
"feather",
"exposure",
"temperature",
"tint",
"saturation"
],
"additionalProperties": false
}
}
},
"required": [
"preset",
"brightness",
"contrast",
"saturation",
"sepia",
"grayscale",
"hueRotate"
],
"additionalProperties": false
}
},
"required": [
"clipId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_remove_clipAction
Remove a clip and its connected transitions. Requires explicit confirmation.
View tool JSON
{
"name": "editor_remove_clip",
"kind": "act",
"impl": "imperative",
"description": "Remove a clip and its connected transitions. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"clipId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_move_clipAction
Move an existing clip one position earlier or later in the timeline.
View tool JSON
{
"name": "editor_move_clip",
"kind": "act",
"impl": "imperative",
"description": "Move an existing clip one position earlier or later in the timeline.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"offset": {
"anyOf": [
{
"type": "number",
"const": -1
},
{
"type": "number",
"const": 1
}
]
}
},
"required": [
"clipId",
"offset"
],
"additionalProperties": false
},
"page": "/editor"
}editor_split_clipAction
Split a visual clip at an exact timeline frame.
View tool JSON
{
"name": "editor_split_clip",
"kind": "act",
"impl": "imperative",
"description": "Split a visual clip at an exact timeline frame.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"splitFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
}
},
"required": [
"clipId",
"splitFrame"
],
"additionalProperties": false
},
"page": "/editor"
}editor_duplicate_clipAction
Duplicate a visual clip directly after the original.
View tool JSON
{
"name": "editor_duplicate_clip",
"kind": "act",
"impl": "imperative",
"description": "Duplicate a visual clip directly after the original.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"clipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
}
},
"required": [
"clipId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_set_transitionAction
Set a fade, slide, or wipe transition between adjacent clips.
View tool JSON
{
"name": "editor_set_transition",
"kind": "act",
"impl": "imperative",
"description": "Set a fade, slide, or wipe transition between adjacent clips.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"fromClipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"toClipId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"durationInFrames": {
"type": "integer",
"minimum": 1,
"maximum": 1800
},
"kind": {
"default": "fade",
"type": "string",
"enum": [
"fade",
"slide",
"wipe"
]
},
"direction": {
"type": "string",
"enum": [
"left",
"right",
"up",
"down"
]
},
"easing": {
"default": "linear",
"type": "string",
"enum": [
"linear",
"ease-in",
"ease-out"
]
}
},
"required": [
"fromClipId",
"toClipId",
"durationInFrames",
"kind",
"easing"
],
"additionalProperties": false
},
"page": "/editor"
}editor_remove_transitionAction
Remove a transition. Requires explicit confirmation.
View tool JSON
{
"name": "editor_remove_transition",
"kind": "act",
"impl": "imperative",
"description": "Remove a transition. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"fromClipId": {
"type": "string",
"minLength": 1
},
"toClipId": {
"type": "string",
"minLength": 1
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"fromClipId",
"toClipId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_update_audio_trackAction
Update timing, trim, or volume fields on an existing audio track.
View tool JSON
{
"name": "editor_update_audio_track",
"kind": "act",
"impl": "imperative",
"description": "Update timing, trim, or volume fields on an existing audio track.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"startFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"endFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"trimStartFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"trimEndFrame": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"volume": {
"type": "number",
"minimum": 0,
"maximum": 1
},
"fadeInFrames": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"fadeOutFrames": {
"type": "integer",
"minimum": 0,
"maximum": 1800
},
"muted": {
"type": "boolean"
}
},
"required": [
"trackId"
],
"additionalProperties": false
},
"page": "/editor"
}editor_remove_audio_trackAction
Remove an audio track. Requires explicit confirmation.
View tool JSON
{
"name": "editor_remove_audio_track",
"kind": "act",
"impl": "imperative",
"description": "Remove an audio track. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"aspect": {
"type": "string",
"enum": [
"reel_9_16",
"widescreen_16_9"
]
},
"trackId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"trackId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_apply_ai_editor_actionsAction
Apply validated structured AI editor actions. Requires explicit confirmation.
View tool JSON
{
"name": "editor_apply_ai_editor_actions",
"kind": "act",
"impl": "imperative",
"description": "Apply validated structured AI editor actions. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
},
"actions": {
"type": "object",
"properties": {
"targetAspect": {
"type": "string",
"enum": [
"active",
"reel_9_16",
"widescreen_16_9"
]
},
"scenes": {
"minItems": 1,
"type": "array",
"items": {
"type": "object",
"properties": {
"text": {
"type": "string",
"minLength": 1
},
"durationSeconds": {
"type": "number",
"exclusiveMinimum": 0,
"maximum": 30
},
"x": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"y": {
"type": "number",
"minimum": 0,
"maximum": 100
},
"fontSize": {
"type": "integer",
"minimum": 12,
"maximum": 200
},
"color": {
"type": "string",
"minLength": 1
},
"fontFamily": {
"type": "string",
"enum": [
"sans",
"modern",
"serif",
"mono",
"display",
"editorial",
"rounded"
]
},
"fontWeight": {
"type": "integer",
"minimum": 100,
"maximum": 900
},
"fontStyle": {
"type": "string",
"enum": [
"normal",
"italic"
]
},
"textAlign": {
"type": "string",
"enum": [
"left",
"center",
"right"
]
},
"animation": {
"type": "object",
"properties": {
"in": {
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"out": {
"type": "string",
"enum": [
"fade",
"rise",
"slide-left",
"punch",
"typewriter",
"word-reveal"
]
},
"durationSeconds": {
"type": "number",
"minimum": 0.05,
"maximum": 2
}
},
"additionalProperties": false
},
"stylePreset": {
"type": "string",
"const": "classic"
}
},
"required": [
"text"
],
"additionalProperties": false
}
},
"transitionSeconds": {
"type": "number",
"minimum": 0,
"maximum": 2
},
"assetNameHint": {
"type": "string",
"minLength": 1
}
},
"required": [
"scenes"
],
"additionalProperties": false
}
},
"required": [
"confirmed",
"actions"
],
"additionalProperties": false
},
"page": "/editor"
}editor_export_fcpxmlAction
Download the active timeline as Final Cut Pro XML 1.9 for Final Cut Pro or DaVinci Resolve. Returns compatibility diagnostics and requires explicit confirmation because it creates an external artifact.
View tool JSON
{
"name": "editor_export_fcpxml",
"kind": "act",
"impl": "imperative",
"description": "Download the active timeline as Final Cut Pro XML 1.9 for Final Cut Pro or DaVinci Resolve. Returns compatibility diagnostics and requires explicit confirmation because it creates an external artifact.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_export_edlAction
Download the active timeline as a CMX 3600 edit decision list. Returns compatibility diagnostics and requires explicit confirmation because it creates an external artifact.
View tool JSON
{
"name": "editor_export_edl",
"kind": "act",
"impl": "imperative",
"description": "Download the active timeline as a CMX 3600 edit decision list. Returns compatibility diagnostics and requires explicit confirmation because it creates an external artifact.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_export_fcpxml_bundleAction
Download a ZIP containing the active FCPXML timeline, stored source media, relinking manifest, and import instructions. Requires explicit confirmation because it creates an external artifact.
View tool JSON
{
"name": "editor_export_fcpxml_bundle",
"kind": "act",
"impl": "imperative",
"description": "Download a ZIP containing the active FCPXML timeline, stored source media, relinking manifest, and import instructions. Requires explicit confirmation because it creates an external artifact.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_request_exportAction
Validate the active project and request a local browser MP4 download. Requires explicit confirmation because it creates an external artifact.
View tool JSON
{
"name": "editor_request_export",
"kind": "act",
"impl": "imperative",
"description": "Validate the active project and request a local browser MP4 download. Requires explicit confirmation because it creates an external artifact.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_cancel_exportSensitive Action
Cancel the active browser export. Requires explicit confirmation.
View tool JSON
{
"name": "editor_cancel_export",
"kind": "transact",
"impl": "imperative",
"description": "Cancel the active browser export. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_remove_assetAction
Remove an asset and its timeline references through the host editor. Requires explicit confirmation.
View tool JSON
{
"name": "editor_remove_asset",
"kind": "act",
"impl": "imperative",
"description": "Remove an asset and its timeline references through the host editor. Requires explicit confirmation.",
"inputSchema": {
"type": "object",
"properties": {
"assetId": {
"type": "string",
"minLength": 1,
"maxLength": 128
},
"confirmed": {
"type": "boolean",
"const": true
}
},
"required": [
"assetId",
"confirmed"
],
"additionalProperties": false
},
"page": "/editor"
}editor_undoAction
Undo the latest editor mutation.
View tool JSON
{
"name": "editor_undo",
"kind": "act",
"impl": "imperative",
"description": "Undo the latest editor mutation.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}editor_redoAction
Redo the latest undone editor mutation.
View tool JSON
{
"name": "editor_redo",
"kind": "act",
"impl": "imperative",
"description": "Redo the latest undone editor mutation.",
"inputSchema": {
"type": "object",
"properties": {},
"additionalProperties": false
},
"page": "/editor"
}