Skip to main content
Glama

Instavar Video Templates and Studio

Render an Instavar video

create_video_brief
Idempotent

Create a private hosted video and start rendering after the user confirms the complete brief and plan usage. Requires account linking. Automatic supplemental footage defaults to off; set automaticBroll to auto only if the user explicitly requests it. Preserve visual exclusions in scenes[].generationContract.prohibitedChanges, separately from the visible copy. Use real source media or explicitly accepted generated visuals for demonstrations; never silently replace requested footage with text. Plan distinct shots for a story, with each generated motion shot at most 15 seconds. For silent videos set narrationMode off and supply explicit scenes; omit script and any unsupplied caption. publishTarget is an optional layout hint, not a publish action; preserve the accepted aspectRatio. Put exact spoken words in script for narration, never filmmaking directions. Supplied originals must be uploaded and bound; do not replace missing branded media with stock. This is the hosted brief contract, not VideoSpec or paired-announcement source. Preserve requestId when retrying the same request, including after a timeout; use a new UUID for changed content. Returns a queued job, not a finished video. Does not publish.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "requestId": "<requestId>",
      "confirmed": "<confirmed>",
      "title": "<title>",
      "objective": "<objective>"
    },
    "name": "create_video_brief"
  }
}

Input Schema

NameRequiredDescriptionDefault
stepsNoStructured steps for educational content (LaTeX)
titleYesShort title (max 120 chars)
scenesNoA shot-by-shot plan. Generated motion shots must be at most 450 frames (15 seconds at 30 fps). Split longer stories into distinct shots; bind supplied media by src or a matching scene asset slot.
scriptNoFinal spoken words. May be omitted only for narrationMode off with explicit scenes; never invent speech for a silent video.
captionNoOptional social caption. Omit when not supplied; no caption is invented or published.
voiceIdNoTTS narrator voice ID. Unknown IDs are rejected before rendering; when omitted, the org's saved voice preference or the system default is used and reported in the response's resolution block.
confirmedYesSet only after the user authorizes this hosted render and its plan usage.
objectiveYesContent objective (drives composition routing)
requestIdYesStable retry identity for this exact approved brief. Reuse after uncertain responses.
assetSlotsNoOptional storyboard asset slots: region-placed image/video assets or placeholders attached to the whole video or a specific scene.
directionsNoDirectionsWalkthrough 'find-us' payload: source clips (legs), decision-point cues on the realtime walk timeline, outro, and optional music. Set compositionId 'DirectionsWalkthrough' (or objective 'directions').
aspectRatioNoAspect ratio (defaults to 9:16 when omitted)
audioLayersNoOptional typed music, Foley, transition, and effect layers.
lessonTitleNoDisplay title rendered inside the video
workspaceIdNoOptional workspace override. For a new plan, omit this field so the server resolves the account default. A workspace ID returned by an account read is not a user selection. Supply this field only for a user-selected workspace or the workspace of an existing saved project. Ask only when the server requires selection; never fall back after denied access.
compositionIdNoRemotion composition ID override (advanced)
narrationModeNoDisable synthesized narration for source-audio or silent work
publishTargetNoOptional platform layout hint, not publication authorization. If omitted, the internal compatibility default is linkedin; supply aspectRatio to preserve the accepted output shape. This operation never publishes.
automaticBrollNoAutomatic supplemental footage. External API renders default to off. Use off for text/graphics-only videos or when the user has not requested footage. Use auto only when the user explicitly wants automatically selected stock or generated B-roll. This does not remove explicitly supplied assets.
publishTargetsNoAll allowed social destinations for this video
visualDirectionNoWhole-video communication, attention, visual-language, and camera direction.
targetDurationSecondsNoRequested final video duration in seconds

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed16 schema fields changed
    • addedInput schema / properties / assetSlots / description
      Added value: +"Optional storyboard asset slots: region-placed image/video assets or placeholders attached to the whole video or a specific scene."
    • addedInput schema / properties / audioLayers / description
      Added value: +"Optional typed music, Foley, transition, and effect layers."
    • addedInput schema / properties / caption / description
      Added value: +"Optional social caption. Omit when not supplied; no caption is invented or published."
    • addedInput schema / properties / compositionId / description
      Added value: +"Remotion composition ID override (advanced)"
    • addedInput schema / properties / directions / description
      Added value: +"DirectionsWalkthrough 'find-us' payload: source clips (legs), decision-point cues on the realtime walk timeline, outro, and optional music. Set compositionId 'DirectionsWalkthrough' (or objective 'directions')."
    • addedInput schema / properties / lessonTitle / description
      Added value: +"Display title rendered inside the video"
    • addedInput schema / properties / narrationMode / description
      Added value: +"Disable synthesized narration for source-audio or silent work"
    • addedInput schema / properties / objective / description
      Added value: +"Content objective (drives composition routing)"
    • addedInput schema / properties / publishTarget / description
      Added value: +"Optional platform layout hint, not publication authorization. If omitted, the internal compatibility default is linkedin; supply aspectRatio to preserve the accepted output shape. This operation never publishes."
    • addedInput schema / properties / publishTargets / description
      Added value: +"All allowed social destinations for this video"
    • addedInput schema / properties / script / description
      Added value: +"Final spoken words. May be omitted only for narrationMode off with explicit scenes; never invent speech for a silent video."
    • addedInput schema / properties / steps / description
      Added value: +"Structured steps for educational content (LaTeX)"
    • addedInput schema / properties / targetDurationSeconds / description
      Added value: +"Requested final video duration in seconds"
    • addedInput schema / properties / title / description
      Added value: +"Short title (max 120 chars)"
    • addedInput schema / properties / visualDirection / description
      Added value: +"Whole-video communication, attention, visual-language, and camera direction."
    • addedInput schema / properties / voiceId / description
      Added value: +"TTS narrator voice ID. Unknown IDs are rejected before rendering; when omitted, the org's saved voice preference or the system default is used and reported in the response's resolution block."
  2. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false, idempotentHint=true, openWorldHint=true): it states account linking is required, that the return is a queued job rather than a finished video, that it never publishes, and that retrying with the same requestId is the correct recovery after a timeout. The retry/UUID rule converts the idempotent hint into actionable behavior.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness3/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loaded with the core action, but the remainder is an undifferentiated run-on of policy rules with no grouping or bullet structure. Several sentences restate what is already in the schema (automaticBroll default, publishTarget not publishing), spending length on redundant content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 22-parameter creation tool with no output schema, it covers the essentials: the mutation is a queued render, it never publishes, retry identity, and the main content-integrity constraints. It does not mention how to follow up on the queued job (get_video_render_status), which is the one operational gap an agent would need.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds cross-field meaning the schema cannot express: requestId identity rules, that publishTarget is a layout hint rather than authorization, that narrationMode off implies explicit scenes with no script, and that visual exclusions belong in scenes[].generationContract.prohibitedChanges rather than visible copy. A few of these repeat the per-field schema text, limiting the added value.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The opening sentence names the specific action (create a private hosted video and start rendering) plus its gating condition (user confirms the brief and plan usage). It explicitly disambiguates from siblings by stating it is the hosted brief contract, not VideoSpec or the paired-announcement source, which maps onto scaffold_video_spec and prepare_announcement.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Clear context is given: requires account linking, must come after user confirmation, and it is the wrong choice for VideoSpec or paired-announcement work. Conditional guidance is offered for automaticBroll (auto only on explicit request) and requestId reuse. It never explicitly says which sibling to use instead when a user has not yet finalized a brief (e.g. propose_video_storyboard or scaffold_video_spec), so no full when/when-not mapping.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.