Wan 3.0 Video Prime
Generate a video from a text prompt using Alibaba Wan 3.0 Video Prime, the fast variant, at 720P with audio, or animate a still image you supply as the first frame.
Clips run 2 to 30 seconds and render in a fraction of the standard model's time. Returns the URL of the generated MP4. That URL is temporary: Goro holds a run's results for 24 hours and nothing guarantees the file outlives that, so collect what you need within 24 hours.
What a call costs
Billed on the exact size of your request, minimum $0.0020 per call.
a price before every call. failed calls are never charged.
When to use it
Use when turnaround matters more than the last cent: iterating on a shot, generating several candidates in one session, or feeding a pipeline that waits on the result. Same capabilities as Wan 3.0 video, faster end to end, at a higher rate per second. To animate a local or private image, upload it first (POST /v1/uploads, or create_upload over MCP, or goro run --image) and pass the handle as image_handle. Billed per second of video you ask for.
Inputs
Wan 3.0 Video Prime takes 8 fields, 1 of them required. Anything you leave out falls back to the tool's own default.
| Field | Type | Required | What it does |
|---|---|---|---|
| prompt | string | yes | What to film. Describe the subject, the action, the camera move, the lighting and the mood. Chinese and English both work. |
| audio | boolean | optional | Whether the output carries an audio track. Does not change the price. |
| duration | integer | optional | Length of the generated video in seconds. This is what you are billed on, and it is the only field that changes the price. |
| image_urls | array of string | optional | Optional. One public http or https link to the image the video should start from (JPEG, PNG or WEBP, up to 10 MB). Use this when the image is ALREADY published somewhere; the output URL of an image endpoint works directly. Nothing is copied or re-hosted, we pass the link on. For a file that is not already public, use image_handle instead and it never has to be published anywhere. Send one of the three, never two. |
| resolution | string | optional | Fixed at 720P (the model spells its resolutions with a capital P). Resolution changes the price per second, and this endpoint quotes one exact rate, so 480P and 1080P would get their own endpoints. |
| aspect_ratio | string | optional | Shape of the output video. adaptive follows the starting image when there is one. |
| image_base64 | string | optional | Optional, and only for a SMALL image (under 3 MB) or a caller that cannot run a shell command. The image inline, as base64 of the file's own bytes; a data:image/png;base64, prefix is accepted and its declared type ignored. Understand the cost before choosing it: this string is part of the request, and on an MCP call the request IS the tool arguments, which pass through the model's context window. A 3 MB photograph is 4 MB of base64, on the order of a million tokens, and in practice it is truncated and the run fails looking like file corruption. Do not downscale an image to fit here: use image_handle, which takes up to 10 MB and keeps the file out of the conversation entirely. The 3 MB ceiling is 4,194,304 base64 characters and is a property of the request body, not of the model. JPEG, PNG or WEBP, checked against the file's own leading bytes rather than against any type you declare. Send one of the three, never two. |
| image_handle | string | optional | Optional, and the RIGHT WAY to send a local or private image. Upload the file first with POST /v1/uploads (or the create_upload MCP tool, or the CLI's --image flag, which does the whole thing for you) and put the short handle it returns here. The file goes straight from you to a private bucket: it never passes through a tool call, so it never passes through a model's context window, and up to 10 MB is fine. Nothing is published. The handle is usable for 10 minutes after the upload lands and the file is deleted 30 minutes after that. Supplying it makes this an image-to-video call, at exactly the same price. Send one of image_handle, image_urls and image_base64, never two. |
How to call it
Connect once and your agent can reach Wan 3.0 Video Prime the same way it reaches everything else in the catalog. Add Goro as an MCP connector, or paste the setup line into an agent that reads skills.
MCP
Add this server in Claude, Claude Code, or any MCP client.
https://mcp.usegoro.ai/mcp
Skill
One line in your agent's chat. It sets itself up.
set up https://usegoro.ai/SKILL.mdOr plain HTTP
POST /v1/run
{
"endpoint": "video.wan_prime",
"input": {
"audio": true,
"prompt": "A cyclist crossing a rain-slick city street at night, neon reflections, tracking shot.",
"duration": 5,
"resolution": "720P",
"aspect_ratio": "16:9"
}
}Related tools
More from video generation, or browse the full tool catalog.
Gemini Omni 1.1 Flash video
Generate a 4, 6, 8 or 10 second video at 1080p from a text prompt using Google Gemini Omni 1.1 Flash, or animate a still image you supply as the...
$1.05 per callGrok Imagine Video 1.5
Generate a video from a text prompt using xAI Grok Imagine Video 1.5 at 720p with synchronized audio, or animate a still image you supply.
$0.0450 per second of videoKling 3.0 Omni video
Animate a still image you supply into a 720p video with native audio using Kling 3.0 Omni: the picture is the first frame, the prompt says what...
$0.18 per second of videoMiniMax H3 video
Generate a video from a text prompt using MiniMax H3 (Hailuo 03) at 2K with native audio, or animate a still image you supply.
$0.1950 per second of videoFurther reading: What is MCP? The Model Context Protocol, explained
Run Wan 3.0 Video Prime from your agent.
One balance for every tool in the catalog. Start with Build, $25 of credit for $19 a month.
Get started