Install
openclaw skills install future-video-renderCreate polished multi-shot videos with the Future Video Studio MCP, using either an account API key or no-account Link pay-per-render quotes. Use when an OpenClaw agent needs to submit a screenplay-driven render, quote and pay for a one-off render, attach public or local assets, poll until completion, cancel a running account job, download the final video, or return a finished signed video URL.
openclaw skills install future-video-renderUse this skill to create Future Video Studio renders through the hosted MCP server at https://mcp.future.video/mcp.
The MCP supports two billing paths:
X-FVS-Agent-Key or configure FVS_AGENT_API_KEY; renders charge the owning Future Video Studio account wallet and require explicit user approval before submission.payment_url, then poll the claim-token status URL.Fallback to the direct Agent API at https://app.future.video/api/agent only when the MCP client is unavailable or when a local-file workflow needs the bundled helper script.
https://mcp.future.video/server.json or the remote endpoint at https://mcp.future.video/mcp.FVS_AGENT_API_KEY is available, treat it as a wallet-backed credential, not blanket permission to render.fvs_create_paid_render_quote.https://app.future.video unless a trusted local or staging FVS environment is explicitly configured.fvs_submit_render for account/API-key mode only after explicit user approval to spend wallet creditsfvs_create_paid_render_quote for no-account pay-per-render modeupload_urlsupload_files only work when the MCP server runs on the same machine as the agentupload_urls, not local multipart file pathsfinal_video_url when available, or explain the blocking error if the render halts or fails.Use $future-video-render to turn this 24-second product teaser brief and these brand reference files into a polished three-shot scene, then poll until the final video URL is ready.Use $future-video-render to create a moody four-shot music video from the uploaded track and lead character reference, keeping continuity consistent across the whole piece.Use $future-video-render without an FVS account key. Create a paid quote, let me approve the Link payment, then retrieve the final video.Use $future-video-render to submit a custom render that uses the uploaded style guide PDF, logo stills, and mood board images, then give me the finished signed video URL.Use the MCP tools first:
fvs_submit_render: submit an account/API-key renderfvs_create_paid_render_quote: create a no-account Link quotefvs_get_render_status: check account render status by project_id or status_urlfvs_get_paid_render_status: check paid quote/render status by status_url or quote_id plus claim_tokenfvs_cancel_render: cancel an account-owned running renderfvs_download_final_video: save a completed signed video URLAccount render:
{
"tool": "fvs_submit_render",
"arguments": {
"request": {
"name": "Archive corridor test",
"project_mode": "scene",
"screenplay": "Shot 1: A woman enters a glowing archive corridor. Shot 2: She reaches toward a moving photograph. Shot 3: She steps through into a sunlit memory chamber.",
"instructions": "Create exactly three cinematic shots totaling about 24 seconds. Keep the subject visually consistent. No subtitles or text overlays.",
"shot_count": 3,
"scene_target_duration_seconds": 24,
"visual_style_preset": "realistic_cinematic",
"video_resolution": "720p"
},
"poll_until_complete": false
}
}
Paid quote render:
{
"tool": "fvs_create_paid_render_quote",
"arguments": {
"request": {
"name": "Paid quote test",
"project_mode": "scene",
"screenplay": "Shot 1: A glass airship drifts over a frozen city.",
"shot_count": 1,
"scene_target_duration_seconds": 4,
"video_resolution": "720p"
}
}
}
After a paid quote is created:
payment_url, status_url, quote_id, and claim_token.payment_url.fvs_get_paid_render_status using status_url, or quote_id plus claim_token.final_video_url after the paid render completes.Use the bundled helper script only when MCP is unavailable or when account mode needs local multipart upload from the same filesystem. It handles multipart upload, auth headers, polling, and cancel/status URLs.
Submit and poll:
python "{baseDir}/scripts/future_video_render.py" submit `
--request-file request.json `
--file character.png `
--file soundtrack.wav `
--poll `
--write-json result.json
Check status later:
python "{baseDir}/scripts/future_video_render.py" status --project-id proj_api_123
Cancel a running job:
python "{baseDir}/scripts/future_video_render.py" cancel --project-id proj_api_123
If python is unavailable, read {baseDir}/references/api.md and use a direct HTTP request with the same endpoints and headers.
X-FVS-Agent-Key through the MCP secret header, local MCP environment, or direct API header.X-FVS-Agent-Key and use fvs_create_paid_render_quote.multipart/form-data with:
request_json: the JSON payload stringfiles: optional uploaded filesproject_mode of music, scene, or custom.wait_for_completion_seconds: 0 for direct API calls unless the user explicitly wants a short blocking wait.music_workflow to uploaded_track and upload at least one audio file.scene_target_duration_seconds within 4 to 600.shot_count within 1 to 64.final_video_url as a signed URL that may expire. Return it promptly.amount_cents, currency, and credits_quoted before payment.assets[] entries in request_json.assets[] entry should include:
filenamelabelpurposefilename must match the basename of the uploaded file.upload_urls for remote MCP and paid quote mode.upload_files only when the MCP server runs where the files exist, or use the direct helper script in account mode.After a submit or status check, inspect:
quote_idclaim_tokenpayment_urlstatuscurrent_stageis_runningfinal_video_urllast_errorTreat the job as terminal when:
status is completed or failed, orcurrent_stage is halted_for_review, orWhen the response includes a finished final_video_url, give that URL back to the user with a short summary of what was rendered.
render-quotes as expected quote data, not a failure.X-FVS-Agent-Key to arbitrary hosts. The bundled helper only permits https://app.future.video by default and rejects full status/cancel URLs outside the configured FVS Agent API origin.project_id-derived status and cancel calls when possible. If using full status_url or cancel_url, use only URLs returned by Future Video Studio.--allow-custom-host or FVS_ALLOW_CUSTOM_AGENT_HOST=1.status_url and claim_token from paid quote mode before payment so the result can be retrieved later.final_video_url expires, re-check status with the MCP status tool to obtain a fresh result URL.Read {baseDir}/references/api.md when you need:
scene, music, or customExternal references:
https://mcp.future.video/server.jsonhttps://mcp.future.video/.well-known/mcp-server.jsonhttps://future.video/api-docs