mcpField
V
veo-video

veo-video

github.com/acedatacloudCreative & media17233 installsUpdated today
Repository

About veo-video

veo-video is a skill for generating videos through AceDataCloud's Google Veo API, aimed at creators working from text or images. Its models produce native audio, and the skill also supports blending multiple images and upscaling existing videos to 1080p.

Key features

  1. 01Text-to-video and image animation
  2. 02Blend multiple reference images
  3. 03Generate native audio
  4. 04Upscale existing videos to 1080p
  5. 05Asynchronous task status polling

Use cases

  1. 01Generate audiovisual clips from prompts
  2. 02Animate still images into videos
  3. 03Combine multiple images in a video
  4. 04Upscale a generated video to 1080p

MCP support

The README provides a Veo MCP server, installable with `pip install mcp-veo` or accessible at the hosted endpoint `https://veo.mcp.acedata.cloud/mcp`.

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/acedatacloud/skills --skill veo-video

After installing, type/veo-videoin Claude Code to confirm it loaded.

Details

From the project README

Veo Video Generation

Generate AI videos through AceDataCloud's Google Veo API.

Setup: See authentication for token setup.

Quick Start

curl -X POST https://api.acedata.cloud/veo/videos \
  -H "Authorization: Bearer $ACEDATACLOUD_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"action": "text2video", "prompt": "a whale breaching in slow motion at golden hour", "model": "veo3", "callback_url": "https://api.acedata.cloud/health"}'

Async: See async task polling. Poll via POST /veo/tasks with {"id": "..."}. This returns a task ID immediately. Poll for the result:

curl -X POST https://api.acedata.cloud/veo/tasks \
  -H "Authorization: Bearer $ACEDATACLOUD_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"id": "<task_id from above>"}'

Models

ModelAudioBest For
veo3Yes (native)Full audiovisual generation
veo3-fastYes (native)Faster audiovisual generation
veo31Yes (native)Veo 3.1, highest quality
veo31-fastYes (native)Veo 3.1 fast variant
veo31-fast-ingredientsYes (native)Veo 3.1 fast, ingredient mode

Workflows

1. Text-to-Video
POST /veo/videos
{
  "action": "text2video",
  "prompt": "cinematic aerial shot of the Northern Lights over Iceland",
  "model": "veo3",
  "resolution": "1080p"
}
2. Image-to-Video

Animate still images into video.

POST /veo/videos
{
  "action": "image2video",
  "prompt": "the scene gently comes to life with wind and subtle motion",
  "image_urls": ["https://example.com/landscape.jpg"],
  "model": "veo31-fast",
  "aspect_ratio": "16:9"
}
3. Ingredients-to-Video (Multi-Image Blend)

Blend 1–3 reference images into a video (only veo31-fast-ingredients).

POST /veo/videos
{
  "action": "ingredients2video",
  "image_urls": [
    "https://example.com/img1.jpg",
    "https://example.com/img2.jpg"
  ],
  "model": "veo31-fast-ingredients"
}
4. Upscale to 1080p

Convert a previously generated video to full 1080p resolution.

POST /veo/videos
{
  "action": "get1080p",
  "video_id": "your-video-id",
  "model": "veo3"
}

Parameters

ParameterValuesDescription
action"text2video", "image2video", "ingredients2video", "get1080p"Generation mode
modelsee Models tableModel to use
resolution"4k", "1080p", "gif"Output resolution (default: 720p)
aspect_ratio"16:9", "9:16"Aspect ratio — only valid for image2video
image_urlsarray of stringsReference image URLs — for image2video (up to 2) or ingredients2video (up to 3)
video_idstringVideo to upscale — only for get1080p
translationtrue / falseAuto-translate prompt to English (default: false)

Gotchas

  • Veo 3 and 3.1 models generate native audio
  • The get1080p action uses video_id (from a prior generation), not a URL
  • aspect_ratio is only valid for the image2video action
  • image_urls accepts an array — up to 2 images for image2video, up to 3 for ingredients2video
  • veo31-fast-ingredients requires image input — it cannot do text-only generation
  • Documented aspect_ratio values are only "16:9" and "9:16"
  • translation: true auto-translates Chinese or other non-English prompts before sending to Veo
  • Task polling uses id (not task_id) in the /veo/tasks request body
  • Task states use "succeeded" (not "completed") — check for this value when polling

MCP: pip install mcp-veo | Hosted: https://veo.mcp.acedata.cloud/mcp | See all MCP servers

Comments

Markdown supported