bots.st/cueframe
CueFrame
Reframe footage, add captions, render video
2784 ms
answered our call
- State
- Answered
- Protocol
- MCP 2025-06-18
- Tools listed
- 107
- Answered
- 3 of the last 3 calls
How to reach it
- MCP, HTTP
https://api.cueframe.ai/v1/mcp
What it can do
| Tool | What it says it does |
|---|---|
acquire_registry_item | Explicitly acquire a selected external candidate through the pinned maintained installer in disposable staging. Pass body:{snapshot,name,expectedManifestSha256,variables,commandId}; native author sessions supply their replay-stable top-level commandId automatically through the existing adapter… |
apply_composition | Atomically apply an array of CompositionOps to a project composition. All ops succeed or none do (transactional). Call describe_composition_ops without type for the compact operation list, then with a type for its exact JSON Schema. For negotiated component execution, read get_composition with… |
apply_template | Insert a resolved builtin component package into an existing project. Pass template as the selected builtin id and body with projectId, the resolved documentSha256, insert:{startTime,idPrefix}, parameter values and explicit media bindings. Read get_composition first and retain expectedRevision… |
cancel_compose | Cancel an in-flight compose job (stop a runaway/mis-priced ensemble). Needs projectId + composeJobId (from compose). The director cancel is confirmed before the row flips; any linked charge is released. No-op-reject (422) if already terminal. |
cancel_export | Cancel an in-flight NLE export (fcpxml/premiere). Needs projectId + exportId (from the export enqueue). No-op-reject (422) if already terminal. |
cancel_job | Cancel a running async job (verify / preview / brand-kit-extract) returned by an enqueue call — abort a mis-priced job instead of waiting out its TTL. For box-backed jobs the warm box is reaped best-effort; cancel never meters. No-op-reject (422) if already terminal. |
cancel_render | Cancel an in-flight render (stop a runaway/queued job). Needs projectId + renderId (from create_render). No-op if already terminal. |
compare_frames | Compare a certified reference frame with an existing full-resolution PNG preview. Returns unaligned side-by-side and overlay images with exact source identities. Read editorial_run_source for the reference identity and preview_frame then wait_job for the candidate artifact. This call never… |
compose | Start an async Director compose job: it authors an ensemble of full composition candidates, verifies each, and saves the winner to the project. Body must set EXACTLY ONE source (mutually exclusive): `briefId` — author FROM a persisted Brief (the PLANNED path: create_brief first; every Brief field… |
consult | Ask the Director for editing advice on the project's CURRENT composition — it NEVER writes your composition (you stay the decider). Async: returns a consultJobId; then wait_job(kind="consult", id=consultJobId, projectId=...) surfaces the advisory envelope (assessment / proposals / principles /… |
create_brand_kit | Create or UPSERT a brand kit (re-POSTing the same kitId updates it in place — this is also the brand-kit UPDATE path). Sets fonts/colors/logo. This is brand step 0 of the workflow: author the kit, then bind it to a PROJECT so colors/fonts/motion theme the output AUTOMATICALLY — pass its kitId as… |
create_brief | Persist the video's INTENT as a Brief — the Director's rich input contract (spec: the storyboard skill's output lands here). Fields: goal (required), audience, platform, format, durationSec, tone, cta, locale (output language — all on-screen copy + captions), hook, caption, beats[] (each with an… |
create_checkout | Top up the CURRENT org's credit wallet. Body { plan: "credit_pack_10"|"credit_pack_30"|"credit_pack_100" } → returns { url }: a hosted Stripe checkout page to open in a browser and confirm payment. There are no subscription tiers — a pack is a one-off top-up, and it is also the only thing that… |
create_component | Create and store a custom component for the tenant: a native scene that arranges its declared images and videos as tiles in 3D space. Returns the ComponentResponse (id + metadata) you can then reference from a composition. No project arg — components are tenant-scoped. SOURCE CONTRACT (version 4… |
create_project | Create a new project — the unit you compose and render into. compose / apply_composition / create_render / the preview family all require a projectId; this mints one. Pass name (required) plus optionally a format (aspectRatio/fps/resolution) and brandKitId. brandKitId binds a brand kit to the… |
create_render | Queue an MP4 render of a project's composition (in a compose session, the session's scratch). Returns { id (renderId), status, warnings? } — `warnings[]` carries non-fatal advisories (omitted when none). The render themes from the project's brand kit (bind one via create_project / update_project… |
create_template_package_upload | Reserve a LOCAL portable CueFrame template package ZIP for import into the organization library. Supply idempotencyKey, archiveSha256 (exact lowercase SHA256) and archiveBytes (1..128MiB). Returns uploadId and a short-lived single PUT uploadUrl. PUT the exact raw archive bytes with Content-Type… |
create_upload | Ingest a LOCAL file — bytes you hold, when there is no public URL to hand import_media (prefer import_media whenever the bytes already sit at an https URL). TWO steps: (1) this tool reserves a media item and returns { id, uploadUrl, expiresAt } — a short-lived PUT URL. PUT the raw file bytes to… |
create_webhook | Register a webhook so long-running jobs notify you instead of blocking on wait_job — the right pattern for fan-out/async agents. Pass url + events — ONE terminal event per job kind with status INSIDE the payload (render.completed, compose.completed, media.completed, suggest.completed) plus… |
delete_brief | Delete a brief. Compose jobs already run from it are unaffected (they snapshot). |
delete_composition | Delete a composition (and its version history) from a project. REFUSES the ACTIVE composition (409) — make another one active first, or delete the project. Use list_compositions to see which is active. |
delete_critic | Delete a registered critic by its criticId. It stops running in the Director gates and score_composition immediately. |
delete_media | Permanently delete a media item from your library (cleanup). Irreversible. Compositions referencing it will fail to render — only delete media no composition still needs. |
delete_project | Permanently delete a project you created (cleanup). Removes its composition and render history. Irreversible — only call on a project you own and no longer need. |
delete_webhook | Delete a webhook subscription (stop receiving its deliveries). Irreversible — the signing secret is invalidated. |
derive_composition | Derive a reframed SIBLING composition for a different aspect ratio (the agent-native Auto-Reframe / Magic-Resize). Pass projectId + body { fromCompositionId, targetFormat: { aspectRatio, fps?, resolution? } }. CueFrame copies the source composition's authored intent and content-aware-reframes… |
describe_composition_ops | Discover the exact CompositionOp vocabulary accepted by apply_composition. Omit type for a compact list of operation names and descriptions; pass type for only that operation's JSON Schema. Read this before authoring edits or captions. |
describe_tool_input | Return the exact JSON Schema for a body field the tool list abbreviates. An abbreviated field names this tool in its description. Pass that tool and field. |
download_media | Get a presigned download URL for a media item's stored SOURCE file — the bytes CueFrame composes from (the raw upload, or its conformed transcode). This is how you copy media OUT of a library: fetch the URL directly (no auth header) and PUT the bytes elsewhere with create_upload, or hand it to… |
editorial_apply | Commit an integrated editorial edit to the saved project composition with both runExpectedRevision and guarded composition fields. Preserve the observed concurrency basis and the composition journal identity: nested composition.commandId must equal composition.clientId + ":" +… |
editorial_create_brief | Persist an authored brief for the selected project. The projectId belongs in body.brief; use the returned briefId to start an editorial run. |
editorial_create_run | Start an editorial run from a persisted brief and explicitly selected certified source ranges. Read editorial_run_source for each project media source first; use its exact identity, revision, frame count and fps ratio. Never invent a source pin or infer inspection from an index. |
editorial_findings_append | Persist one evidence-backed observation. A nothing_useful outcome may cover only what the cited evidence actually inspected; sparse stills do not certify an unsampled interval. |
editorial_findings_list | Read durable observations, including useful, nothing-useful and uncertain outcomes, in bounded pages. Pass nextCursor as cursor until done; retain evidence IDs, supersession and uncertainty when recovering decisions. |
editorial_get_run | Read a persisted editorial run, including its revision, state, inputs, outline, selected finding IDs, omitted reasons and unresolved integration gaps. Read findings and evidence separately for complete coverage. |
editorial_inspect_audio | Deliver a bounded 16 kHz source audio interval and save an audio evidence receipt. The interval must lie inside a certified run input. |
editorial_inspect_source | Deliver one exact decoded source frame as JPEG and save its evidence receipt. Only that sampled frame is visually inspected; preserve the returned evidenceId and coverage. |
editorial_inspect_transcript | Deliver at most 100 verified transcript words with their mapped certified decode interval and save a transcript evidence receipt. |
editorial_integrate | Save selected finding IDs, explicit omitted reasons and unresolved gaps with the observed run revision. Read the run and findings before deciding. |
editorial_list_briefs | Recover persisted authored briefs for a project. Read bounded pages; pass nextCursor as cursor until done. Brief IDs link to editorial runs. |
editorial_list_evidence | Read delivered evidence and inspection coverage for a run in bounded pages. Pass nextCursor as cursor until done; an empty page does not prove the whole source was inspected. |
editorial_list_runs | Recover persisted editorial runs for a project in bounded pages. Pass nextCursor as cursor until done, then read each relevant run for its integration decisions and unresolved gaps. |
editorial_run_source | Read the certified decode representation for media selected in this project before starting an editorial run. Supply projectId and mediaId; a null representation means this source cannot be pinned. The response omits internal storage paths. Select a bounded range from the returned frameCount and… |
editorial_sample_motion | Deliver bounded sampled motion frames and save their evidence receipt. The sampled frames do not certify continuous visual coverage. |
export_template_package | Export an exact SAVED project snapshot as a portable template package. Supply idempotencyKey, expectedRevision, name, new slug and optional bounded mediaParams/textParams selectors for existing clip/leaf sites. Reads actual saved composition/components/media through the maintained extractor; no… |
extract_brand_kit | Queue brand-token extraction from a website URL — ASYNC: returns a jobId immediately; then wait_job(kind="brand_kit_extract", id=jobId) for the tokens (colors/fonts/title/description, fetched + regex-parsed from the site's HTML/CSS — NOT a screenshot/vision pass). It does NOT persist — review the… |
finalize_upload | Finalize a direct upload once you have PUT the bytes to the uploadUrl from create_upload. Confirms the bytes landed and starts ingest: image/asset become ready immediately (status "complete"); audio/video enter processing (status "processing"). Returns { id, status, processingPhase }. 400 if no… |
forget_taste | Delete one entry from the org's learned taste by its id (from get_profile `taste` or remember_taste). This is how the user's "undo" works. |
generate_media | Generate one first-class Library media item from a prompt. Choose generator: text-to-video | text-to-image | image-to-video | text-to-music | text-to-speech | text-to-sfx | auto. Put supported presentation controls in body.style and first/last/image references in body.refs. Returns { id… |
get_account | ORIENT FIRST — show THIS key's account before you spend a metered call: the org it is bound to, the current plan, a per-feature entitlements map, and per-call cost ceilings. READ `balance`, NOT `included`. CueFrame is credit-funded: rendering (entitlements.exports), generation (generate), preview… |
get_brief | Read a brief by id — the persisted intent plus its current quote (compose + estimated render). |
get_checkpoint | Read a checkpoint packet — the durable approval unit a held compose pauses at (wait_job reports awaiting_input with {checkpointId, stage, version}). Carries the stage artifact, presigned storyboard stills (REVIEW THE EVIDENCE, not raw JSON), critic verdicts, the money triple {thisStepUsd… |
get_component_source | Read an exact component source as complete JSON. Supply sourceVersionId from the selected catalog card to read that immutable revision, retaining sourceSnapshot with its complete versioned definition, manifest and template beside its exact pin and schema metadata. For an explicitly selected… |
get_composition | Read a compact structural composition view by default, preserving observed ETag, authority metadata, clip timing, token values and source pins without large HTML bodies. Ordinary exact-ETag reads can omit includeDependencies. With includeDependencies=true, compact returns a dependency key/size… |
get_media_context | Fetch bounded authoring context for a media item: dimensions/thumbnail, compact face roster, transcript counts/sample, temporal grids, and fact readiness. Transcript and word-grid counts cover one page only (default 20 utterances); pass transcript.data.pagination.nextCursor as after to… |
get_media_facts | Read prepared subject tracks and behind-subject mattes for one media item. For an exact readiness check, pass kind + startSec + endSec together using the same SOURCE window sent to prepare_media; exact.state is pending | ready | failed | available | unavailable. If subjectTrack was prepared… |
get_profile | The org's legible taste in ONE read: brand kits, registered critics (the machine-checkable standard both the Director's gates and score_composition enforce), their reference media (presigned thumbnails), the recent checkpoint-decision log, and the learned `taste` (style preferences saved with… |
get_registry_acquisition | Recover an organization-owned immutable acquisition receipt, exact raw/transformed file descriptors, bounded source text and an expiring archive link. Retain the bundle digest and distinguish original upstream bytes, installer transformations and later CueFrame adaptations. Binary/large files are… |
get_registry_item | Inspect one exact external registry item manifest, including examples. Supply all snapshot fields returned by discovery together, or omit all to inspect current. Unknown upstream metadata is preserved. Inspect actual source and requirements before adaptation; an upstream poster/movie is unverified… |
get_render | Read ONE render's record without waiting on it: status, progress while it runs, outputUrl + outputExpiresAt once complete, the typed failure (errorCode / category / retryable) if it failed, and WHAT RENDERED — compositionId (the composition it froze), format (aspect/fps/resolution it encoded at)… |
And 47 more tools.
In its maker's words
Turn footage into finished video: reframing, captions behind the subject, motion graphics, renders.
- Website
- cueframe.ai
- Source
- github.com/cueframe-ai/cueframe-mcp
- Publisher
- cueframe.ai
- Listed from
- the official MCP Registry as
ai.cueframe/cueframe - Version
- 1.2.0, updated 10 Oct 2026
- Kinds of work
- Writing and translation, Images, video and audio, AI models and agent tools
The domain it lives on
- cueframe.ai
- registered 7 Feb 2026 (9 months ago), at Cloudflare, Inc, its home page is a working site
From our own crawl of domain names: registry records and the home page as our crawler last saw it.
Every call we made
| When | What happened | Time |
|---|---|---|
| Answered | 2784 ms | |
| Answered | 3112 ms | |
| Answered | 1489 ms |
Next door
Is this your bot? Claim its address to add a verified badge and keep the listing current.