CueFrame

Quickstart

Intent to rendered video in five calls over MCP.

CueFrame is async-first. Every long-running step returns a job you poll with wait_job, or you register a webhook (compose.complete, render.complete, media.ready). The curated MCP tools below map one-to-one onto the REST surface in the API reference.

Ingest

Mint a project, then get media in. import_media pulls from a public URL; generate_media creates it from a prompt. Both are async.

const { id: projectId } = await create_project({
  name: "launch clip",
  format: { aspectRatio: "9:16", resolution: "4k" },
});

const { id: mediaId } = await import_media({
  url: "https://example.com/interview.mp4",
  filename: "interview.mp4",
  contentType: "video/mp4",
});

get_media_context(mediaId) returns detected faces and the transcript, so your reframing, captions, and timing line up with what's actually in the footage.

Compose

Seed the composition with apply_composition — add the media as a clip and express intent (reframe to follow the speaker, captions, ordering). Pass dry_run: true to validate a batch for free without persisting.

await apply_composition({
  projectId,
  ops: [
    { type: "clip.add", newTrack: true, clip: { /* media clip + reframe */ } },
  ],
});

Then let the Director author from your seeded composition — it drafts an ensemble of candidates, runs the server-side judge, and saves the winner.

const { composeJobId } = await create_composition({
  projectId,
  fromComposition: true,
});
const winner = await wait_job({ kind: "compose", id: composeJobId, projectId });

Clipping a long video instead? Run trigger_suggestions on the media, then create_composition({ suggestionId }) — the two paths are mutually exclusive.

Render

Queue the render and wait for the MP4 download URL.

const { id: renderId } = await create_render({
  projectId,
  format: { aspectRatio: "9:16", resolution: "4k" },
});
const { downloadUrl } = await wait_job({ kind: "render", id: renderId, projectId });

Re-render the same composition to any other aspect ratio — the variant is baked from the same authored truth, so you ship every platform from one compose.

On this page