add_audio_track
ChatGPTAdd an existing workspace audio media item to the edit timeline with precise placement, trim, fades, volume automation, channel, and optional shot pinning.
add_remotion_overlay
ChatGPTCreate a custom Remotion React animation layer on the edit timeline. Compiles and test-renders it before saving. Call get_remotion_layer_guide first.
add_shot_media_ref
ChatGPTUse when the user asks to attach media to a shot. For image and video roles it updates the primary media ID by default, and replaceExistingRole can remove existing references with the same role.
add_transition
ChatGPTUse when the user asks to add a timeline transition. By default, replaceExistingBoundary replaces any existing transition at the same shot boundary.
apply_world_code_patch
ChatGPTStage exact code replacements atomically. Each existing file needs its current SHA-256 hash, nonempty oldText matching exactly once, and newText. Include context for ambiguous matches. Use create:true only for a new file. Patches preserve unrelated source and invalidate earlier checks. This never saves or publishes a world. Interface assets and preview image can be attached here when approved generated images are ready.
change_audio_track_voice
ChatGPTUse when the user explicitly asks to voice-change a timeline track. Creates and activates a new version of the track's audio media, may send source or reference audio to an external provider, and may spend Sequencer credits.
check_asset_status
ChatGPTCheck the approval status of all assets associated with an edit. Used to determine if the user has approved/rejected each asset before proceeding to scene and shot creation.
convert_video_to_hdr
ChatGPTConvert an existing video to HDR using a catalog model that supports video_hdr. Select output format in modelSettings when supported. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
create_asset
ChatGPTUse when the user asks to create a Sequencer character, location, prop, or legacy text-only style asset. Character, location, and prop prompts trigger image generation that may spend Sequencer credits. Style prompts are saved as text without image generation. An existingMediaUrl is fetched and stored as private workspace media.
create_edit
ChatGPTUse when the user asks to create a new Sequencer video project in a workspace. Creates project settings only; media generation is a separate action.
create_production
ChatGPTGenerate a product ad, 3 to 5 shot story, or localized image creative as an editable project. Provide authored shot prompts. For product ads pass the actual product image as a reference; use extract_product_image with a product URL or upload first. For localization supply the original creative, target language as a parameter, and instructions to preserve the product and layout. Returns tracked tasks; poll get_production_status.
create_scene
ChatGPTCreate a new scene in an edit.
create_shot
ChatGPTCreate a new shot in an edit. Optionally provide a prompt to auto-create a linked MediaDocV2 for image generation. When videoPrompt is omitted, it falls back to the visual image prompt only. Dialogue is never appended automatically.
create_shot_with_media
ChatGPTUse when the user explicitly asks to create a shot and generate its initial image in one step. This may spend Sequencer credits.
create_workspace
ChatGPTCreate a new workspace (project container).
delete_asset
ChatGPTDelete an asset from a workspace. Referenced media documents are NOT deleted.
delete_audio_track
ChatGPTDelete an audio track from the edit timeline. The underlying media document is preserved.
delete_scene
ChatGPTDelete a scene from an edit. Note: shots referencing this scene will become orphaned.
delete_shot
ChatGPTDelete a shot. The linked media documents are NOT deleted (they persist independently in the workspace).
delete_shot_media_ref
ChatGPTDelete shot media refs matching a mediaId and optional role. Optionally clears imageMediaId/videoMediaId when they point at the removed media.
delete_transition
ChatGPTDelete one timeline transition by transitionId or boundaryId.
duplicate_shot
ChatGPTDuplicate a shot with all media refs, trimming, playback, frame-linking, prompts, dialogue, and tags. Media documents are referenced, not copied.
edit_image
ChatGPTUse when the user explicitly asks to modify an existing Sequencer image. Creates a new version, preserves the original, and may spend Sequencer credits.
edit_video
ChatGPTEdit existing footage using a source video and prompt. Creates a separate result and preserves the original clip. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
expand_video
ChatGPTRun the Reframe preset on a complete workspace video up to 120 seconds and 500 MB. Outpaint a new aspect ratio, join provider chunks, and restore the original audio. Supports runway-aleph-2, google-gemini-omni-1-1, luma-ray-3-2-reframe, wan-2-2-vace-reframe, and beeble-switchframe. SwitchFrame requires a workspace image in mediaInputs.reference_image_uri. Call once per requested source/format/settings variant. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
export_edit
ChatGPTUse when the user explicitly asks for a final rendered video from a Sequencer edit. Starts a production export and may consume processing resources.
generate_audio
ChatGPTUse when the user explicitly asks Sequencer to generate speech, music, or sound effects. This starts an asynchronous generation job and may spend Sequencer credits.
generate_audio_track
ChatGPTUse when the user explicitly asks to generate audio and place it on a Sequencer edit timeline. This may spend Sequencer credits.
generate_image
ChatGPTUse when the user explicitly asks Sequencer to generate an AI image. This starts an asynchronous generation job and may spend Sequencer credits.
generate_shot_video
ChatGPTUse for an approved edit storyboard shot. Generates from the shot still, attaches the queued video to the shot timeline immediately, and may spend Sequencer credits.
generate_video
ChatGPTUse when the user explicitly asks Sequencer to generate or animate an AI video. This starts an asynchronous generation job and may spend Sequencer credits.
get_asset
ChatGPTGet detailed information about a specific asset including all media references.
get_edit
ChatGPTGet detailed information about a specific edit, optionally including scenes and shots.
get_edit_full
ChatGPTGet complete project state in one call: edit settings, all scenes, all shots with resolved media prompts/status. This is the most efficient way to understand the full edit.
get_experience_game
ChatGPTRead a game and its proposal, approval status and revision, organized project files, compiled HTML, current version, and asset:// references. Read before editing. Preserve existing files and assets.
get_experience_world
ChatGPTRead a world and its placed characters, story, visual theme, and game lineup to build a game that fits it.
get_export
ChatGPTGet a single export record for an edit, including status, URLs, settings, upscale/HDR state, and IP analysis if present.
get_genesis_sdk
ChatGPTRead the programmable Genesis package contract and working interface/controller examples before authoring a world app. Tools are server effects, never browser credentials.
get_media
ChatGPTGet detailed information about a specific media object. For completed audio, directMediaUrl and media.url are the playable file. audioAccess.waveformVisualizationUrl is JSON amplitude data for UI rendering only. Call listen_to_audio when the agent needs to hear the file.
get_model_catalog
ChatGPTGet available Sequencer AI models for a given modality (image, video, audio, music). Use this when the user asks what models are available or names a model/alias and you need the exact model ID. Common aliases include Nano Banana Pro, Nano Banana 2, Nano Banana 2 Lite, Gemini image, Imagen, Z Image, Z-Image Turbo, MiniMax H3, PrunaAI P-Video, Happy Horse, Google Omni, Flux, GPT Image, Seedream, Recraft, Bria, Runway, Luma, Sora, Veo, Kling, Hailuo, Seedance, PixVerse, ElevenLabs, Fish Audio, Suno, and Lyria.
get_production_status
ChatGPTRead production generation progress and output media IDs, including any failed shots.
get_production_template
ChatGPTRead a production template or one of its immutable versions.
get_proposal
ChatGPTGet the current proposal content for an edit. Returns the full markdown plus reviewUrl. External MCP clients should show the markdown inline in chat first and treat reviewUrl as optional.
get_remotion_layer_guide
ChatGPTGet the contract, supported APIs, and example for creating custom React animation layers.
get_scene
ChatGPTGet detailed information about a specific scene.
get_sequencer_skill
ChatGPTLoad the complete public instructions for a Sequencer skill before using it. Supports motion design, films, webpage videos, games, restaurant menu videos, news videos, architectural tours and article podcasts. Read-only, requires no account access and generates no media.
get_server_info
ChatGPTGet information about this MCP server and its capabilities.
get_shot
ChatGPTGet detailed information about a specific shot including its media references.
get_workspace
ChatGPTGet detailed information about a specific workspace including member count.
get_world_code_workspace
ChatGPTOpen a private staged coding workspace for a Worldstream. Returns a file index with hashes, no duplicated source. Read/search files, patch exact text, validate, inspect real desktop/mobile screenshots and controls, then save the verified draft. Existing worlds remain unchanged until save. For new worlds choose a Genesis starter. Workspaces expire after 24 hours.
get_world_experience
ChatGPTRead world settings, current version, input bindings, interface source and connected games before editing. Existing game references are pinned to immutable versions. Read each connected game before editing it; preserve other worlds pinned versions.
import_media_from_url
ChatGPTImport a publicly reachable image, video, or audio URL into Sequencer workspace media and return a mediaId. Use this when a file is already hosted at an HTTP(S) URL. Local disk paths such as C:/... are not reachable by the MCP server; use upload_media_base64 or the REST /v1/upload endpoint for local files.
inspect_edit_frame
ChatGPTUse to render and inspect the final composed edit frame at an exact timestamp. This creates a temporary visual preview without changing the workspace.
inspect_storyboard
ChatGPTUse after storyboard still generation to inspect every ordered starting frame together before generating shot video.
inspect_world_code_workspace
ChatGPTUse when building or editing a Worldstream to inspect its validated staged Genesis app at desktop or mobile size. Returns screenshots, accessible controls, public state, console errors, overflow and hit-target diagnostics. Execute bounded interactions and assertions using observed controls. Fixtures simulate media and tool results. Records inspection evidence for this staged revision without changing the saved Worldstream, publishing, or starting paid generation.
list_assets
ChatGPTList assets in a workspace. Can filter by type (character, location, prop).
list_audio_tracks
ChatGPTList all audio timeline tracks in an edit, with resolved audio media URLs/status when available.
list_edits
ChatGPTList all edits (projects) in a workspace.
list_experience_games
ChatGPTList saved playable games in a workspace, with playtest links and current version IDs.
list_exports
ChatGPTList prior exports for an edit, including status, format, version index, URLs, and export settings.
list_media
ChatGPTList media objects in a workspace. Can filter by type (image, video, audio) and status.
list_production_templates
ChatGPTList reusable production templates in a workspace.
list_scenes
ChatGPTList all scenes in an edit, ordered by sequence.
list_shots
ChatGPTList all shots in an edit, optionally filtered by sceneId. Shots reference media objects instead of embedding generation data.
list_workspaces
ChatGPTList all workspaces accessible to the authenticated user. Use this when the user asks to choose, inspect, or connect a Sequencer workspace, or when a non-generation tool requires workspaceId. For standalone generate_image, generate_video, and generate_audio calls, do not call this just to find a workspace; omit workspaceId and Sequencer will use the default workspace.
list_world_experiences
ChatGPTList saved world experiences and the default Genesis package contract in the active workspace.
listen_to_audio
ChatGPTUse after get_media reports that Sequencer audio is completed. Loads the audio into the agent context for pacing and narration analysis without modifying the workspace.
move_shot_to_scene
ChatGPTMove a shot from one scene to another, optionally setting its order in the target scene.
open_sequencer_workspace
ChatGPTOpen the Sequencer workspace browser to view projects, recent creations, and shot previews. Read-only. Creation starts only after a user chooses a task and approves its plan and cost.
quote_generation
ChatGPTGet a read-only USD quote for an image, video, or audio generation before requesting approval. Select an exact model ID from get_model_catalog and specify all billable settings. Reports usage-based estimates and missing inputs explicitly. Creates no media and spends no credits.
read_world_code_file
ChatGPTRead up to 400 numbered lines from one staged project file, bounded to 12 KB. Returns its current hash for exact patches. Default reads 160 lines. Follow nextRead (startLine/startColumn) to read omitted source, including long minified lines. Never guess omitted code.
remove_image_background
ChatGPTRemove an image background using a catalog model that supports remove_background. The selected model determines transparency support. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
remove_video_background
ChatGPTRemove a video background when an active catalog model supports remove_background and video input. Select an alpha-capable output format in modelSettings when supported. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
render_image
ChatGPTUse after get_media reports that a Sequencer image is completed. Displays that image inline in ChatGPT without modifying the workspace.
render_media
ChatGPTDisplay one or several Sequencer image, video, and audio items in one inline carousel. Put the first ID in mediaId and up to seven more in additionalMediaIds. Clients with the earlier single-field schema can pass a comma-separated list in mediaId. The player monitors queued and generating media until every item is ready.
reorder_shots
ChatGPTBulk reorder shots within an edit. Efficiently updates all shot order values in a single batch write.
request_asset_review
ChatGPTUse when the user asks to review Sequencer assets. Tags the assets to the edit, resets non-approved assets to pending, and returns inline review materials without generating media.
review_edit
ChatGPTUse when the user asks Sequencer to analyze an edit for pacing, continuity, dialogue, visual quality, sound, or overlays. The review may create a temporary export and consume a review allowance.
run_production_template
ChatGPTGenerate a saved production template into a new editable Sequencer project. Each run spends credits and has tracked output tasks. Poll get_production_status. To rerun, call again; previous projects remain preserved.
save_experience_game
ChatGPTBuild ONLY a game whose current proposal was approved by the user. Read get_experience_game, follow its approved proposal, and pass proposalRevision and expectedVersionId. Supply organized files (index.html, styles.css, scripts/*.js, optional JSON/docs) with local stylesheet/classic script references, or one complete HTML source. Use ordered classic scripts and shared namespaces, no imports/requires. The server bundles code to a single playable HTML under 256 KB and stores the editable package separately (up to 64 files / 1 MB). Media belongs in existing asset:// IDs, canvas or inline art. Include responsive start, pause, help, score/progress, win/loss and restart UI plus keyboard/touch controls. External URLs, network APIs, workers, embeds, eval, and parent access are blocked. Match the approved worldId. Returns the Games tab playtest link. Never paste implementation code in the chat.
save_experience_game_proposal
ChatGPTFIRST step for creating or revising a game. Save a proposal document and a visible Games tab entry, then STOP for human approval. Markdown must have headings starting Concept, Gameplay, Controls, Screens, Files, and Playtest. Describe audience, objective/core loop/levels/win/loss, desktop/touch controls, visual/audio direction, start/pause/help/score/game-over/restart UI, code organization and assets, and concrete checks. Do not include game code. For an existing game read it first and pass expectedVersionId and expectedProposalRevision. For a modular Worldstream attachment supply worldExperienceTarget with its liveWorldId, inputBindingId, and current expectedVersionId. An approved build automatically pins the new game version only if that world version is still current. A revised proposal always needs fresh approval.
save_production_template
ChatGPTSave a versioned production template for product ads, 3 to 5 shot stories, or image localization. Templates use {{parameter}} placeholders and produce editable projects when run.
save_proposal
ChatGPTUse when the user asks for a reviewable production plan before a multi-step Sequencer project build. Saves a new version, makes it the active pending proposal, and preserves prior proposal versions without generating media.
save_world_code_workspace
ChatGPTSave the current staged package as one verified Worldstream draft. Requires current validation, passing desktop/mobile inspections and at least one exercised custom control. Checks the original world version so concurrent editor changes are preserved. On a conflict open the latest world and reapply only requested changes, never force overwrite. Saving never publishes.
save_world_experience
ChatGPTSave a versioned draft world, settings and optional custom interface together. Read get_world_experience before editing and pass its versionId as expectedVersionId. Omit liveWorldId only for a new world. Provide project as the portable genesis.json manifest, with interfaceSource and controllerSource. Keep Worldstreams listing, avatar connections and chat access/moderation in settings. The existing definition argument is supported for older clients. New worlds use a unified Genesis package: local HTML/CSS/classic JS interface using window.Genesis, optional pure onEvent controllerSource, typed actions, input windows and authorized tool effects. Read get_genesis_sdk before authoring. Generated UI images use asset://ID references declared in interfaceAssets:[{id,mediaId}]. The server verifies completed workspace images and pins them with this version. Covers use project.coverImageUrl from completed generate_image media. Preview stage artwork uses the separate previewImageUrl field. Omit it to preserve or set an empty string to remove. Build responsive interfaces for touch/mobile and web. No direct external URLs, networking, parent access or eval. Reuse game packages by pinning gameId and versionId in gameBindings; game edits use the existing game proposal workflow. This does not publish or start generation. Return the saved world and preview link.
scrape_url
ChatGPTRead a public HTML web page and return its visible text, metadata, and direct image URLs. Use this only when the user supplies a webpage URL whose content or images must inform a Sequencer project. Do not use it for media files, JSON, waveform URLs, or internal generation output. Use get_media and listen_to_audio for generated audio. This does not render client-side JavaScript and does not import or generate media.
search_workspace
ChatGPTSearch existing workspace media metadata with pagination. This does not inspect image pixels or create media.
search_world_code
ChatGPTSearch literal text across staged project files. Returns numbered matches and pagination. Use this to locate CSS, handlers and controller rules before focused reads and patches.
set_asset_approval_status
ChatGPTApprove, reject, or reset one or more assets from chat. External MCP clients should call this after showing inline asset images/descriptions and receiving user approval or revision feedback, instead of requiring the user to open Sequencer.
set_proposal_status
ChatGPTApprove, reject, or reset a saved proposal. Use this in external MCP clients when the user approves or rejects a proposal in chat, so the Sequencer edit state stays in sync without relying on a Spark-only UI modal.
split_shot
ChatGPTSplit a shot into two adjacent shot records at a time offset from the shot start, preserving media refs and playback metadata.
update_asset
ChatGPTUpdate an existing asset.
update_audio_track
ChatGPTUpdate an audio timeline track: placement, trim, fades, volume, keyframes, channel, and shot pinning.
update_edit
ChatGPTUpdate an existing edit (project). Supports partial updates — only provided fields are changed.
update_media_tags
ChatGPTUse only when the user asks to add, remove, or replace searchable tags on specific existing media. This updates metadata.
update_overlay_item
ChatGPTUpdate an existing overlay item. Can change text, position, timing, animation, opacity, and more.
update_proposal
ChatGPTUpdate an existing proposal to track execution progress.
update_scene
ChatGPTUpdate an existing scene.
update_shot
ChatGPTUpdate an existing shot. Can change scene, order, timing, media refs, dialogue, motion prompt, and tagged assets. Only provided fields are changed.
update_shot_media_ref
ChatGPTUpdate a specific shot media ref by matching mediaId and optional role. Can change role, order, mediaId, and version override.
update_transition
ChatGPTUpdate one timeline transition by transitionId or boundaryId.
update_workspace
ChatGPTUpdate a workspace. Only the workspace owner can update.
upload_media_base64
ChatGPTUpload a local image, video, or audio file into Sequencer by passing base64 file contents. This is the MCP-native local-file path when the client can read the file bytes. For large videos, prefer the REST /v1/upload multipart endpoint to avoid MCP payload limits.
upscale_image
ChatGPTUpscale an existing image using a catalog model that supports upscale_image. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
upscale_video
ChatGPTUpscale an existing video using a catalog model that supports upscale_video. Use get_model_catalog to choose a supported model and its settings. Returns a tracked task and playable result when complete.
validate_production_template
ChatGPTRender a template with parameters and estimate generation cost without spending credits. Missing price data is reported explicitly.
validate_world_code_workspace
ChatGPTRun the same schema, source, sandbox and controller checks used by saving on this staged revision. Correct diagnostics with focused patches. Visual and behavioral verification is separate.
validate_world_experience
ChatGPTValidate a complete experience definition and optional custom interface code without saving or starting paid generation. Input types: text, vote, voice, image, click, game. Declare interface.handledInputBindingIds for custom controls; uncovered inputs retain standard controls. Overlay regions use {x,y,width,height} fractions within the stage. New Genesis controls use window.Genesis.action(actionId,data) and actions.get(id).canSubmit. Custom controllers use function onEvent(context). Read get_genesis_sdk for the exact contract and examples. Use the existing definition contract from get_world_experience or list_world_experiences. Return diagnostics and normalized settings.