clipform_render_video_template
ActiveTool of io.github.Clipform/mcp-server
Render a curated video template (a pre-arranged Scene: bed + overlay + sane defaults) to MP4 or PNG from a small controls object, instead of hand-assembling Scene layers. Call clipform_list_video_templates first for available template names and their controls. Renders through the Scene composition under the hood. Choosing a render tool: for a recognisable form/quiz beat (guess-the-city, this-or-that, mystery reveal, multiple choice, photo montage...) reach for a video template first (clipform_list_video_templates + clipform_render_video_template) - it is a one-call recipe. Use clipform_generate_video for a narrated or audio-synced media montage (images/clips timed to a voice track). Use clipform_render_composition only when neither fits and you need a custom layer stack. A render for a form node is not done until it is attached to that node. Pass node_id (and form_id) so the completed render attaches itself automatically - do not poll clipform_check_render to completion or manually chain clipform_upload_media_asset + clipform_attach_node_media; fire the render and move on.
Parameters schema
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"template",
"controls"
],
"properties": {
"wait": {
"type": "boolean",
"default": true,
"description": "true (default) blocks until the render is ready and returns its URL; false returns a job ID for clipform_check_render."
},
"form_id": {
"type": "string",
"format": "uuid",
"description": "The form UUID (required when node_id is set)."
},
"node_id": {
"type": "string",
"description": "Form node to attach this render to automatically once it completes - skips the manual clipform_upload_media_asset + clipform_attach_node_media steps and republishes the form if it's currently live. Requires form_id."
},
"captions": {
"type": "array",
"items": {
"type": "object",
"required": [
"start",
"end",
"text"
],
"properties": {
"end": {
"type": "number",
"description": "Segment end time in seconds"
},
"text": {
"type": "string",
"description": "Full segment text"
},
"start": {
"type": "number",
"description": "Segment start time in seconds"
},
"words": {
"type": "array",
"items": {
"type": "object",
"required": [
"word",
"start",
"end"
],
"properties": {
"end": {
"type": "number"
},
"word": {
"type": "string"
},
"start": {
"type": "number"
}
},
"additionalProperties": false
},
"description": "Per-word timestamps within the segment"
}
},
"additionalProperties": false
},
"description": "Word-level captions from clipform_generate_tts - carried onto the attached media asset. Only used when node_id is set."
},
"controls": {
"type": "object",
"description": "Template-specific controls (see clipform_list_video_templates for the exposed control surface).",
"additionalProperties": {}
},
"template": {
"type": "string",
"description": "Video template name (see clipform_list_video_templates)."
},
"outputFormat": {
"enum": [
"mp4",
"png"
],
"type": "string",
"default": "mp4",
"description": "Output format (default: mp4)"
}
},
"additionalProperties": false
}No endpoints wrapped at confidence ≥ 0.70.
Parent server
io.github.Clipform/mcp-server
https://github.com/clipform/mcp-server
1/7 registries