Skip to main content

vivideo

io.github.egocen-vivideo/vivideoVersion 1.0.2

AI video generation via the Vivideo API: auto or manual mode, avatars, voices, brand kits.

Status

Responds114 msAnswered our handshake without sign-in.

Registry data may be out of date

We could not refresh it, so this page shows the last copy.
Last checked
Nov 14, 2026, 14:50 UTC
Latency
114 ms
Remotes responding
1 of 1
Sign-in
API key
Hosting
EU hosting detected (detected, not a legal statement)
Registry data as of
Nov 14, 2026, 22:14 UTC

Data from the official MCP Registry, checked by run.zero. How we check

Connect

Streamable HTTP
https://api.vivideo.ai/mcpResponds114 ms
No sign-in

Claude Code

claude mcp add --transport http vivideo https://api.vivideo.ai/mcp --header 'Authorization: Bearer <YOUR_TOKEN>'

Replace <YOUR_TOKEN> before running.

Claude Desktop and claude.ai

Settings > Connectors > Add custom connector
Name: vivideo
Remote MCP server URL: https://api.vivideo.ai/mcp
This server expects the header Authorization.

Cursor

{
  "mcpServers": {
    "vivideo": {
      "url": "https://api.vivideo.ai/mcp",
      "headers": {
        "Authorization": "Bearer <YOUR_TOKEN>"
      }
    }
  }
}

Replace <YOUR_TOKEN> before running.

VS Code

code --add-mcp '{"name":"vivideo","type":"http","url":"https://api.vivideo.ai/mcp","headers":{"Authorization":"Bearer <YOUR_TOKEN>"}}'

Replace <YOUR_TOKEN> before running.

Streamable HTTP
npm: @vivideo/mcp 1.0.2
Package only

npm (npx)

claude mcp add vivideo -e 'VIVIDEO_API_KEY=<YOUR_VIVIDEO_API_KEY>' -- npx -y @vivideo/mcp@1.0.2

Replace <YOUR_VIVIDEO_API_KEY> before running.

Built your own server? run.zero hosts MCP servers on European infrastructure.

Host your own MCP server on run.zero

Tools

13 tools

Tools of vivideo
Read-only
Idempotent
Open world
check_accountGet the account plan, premium status, and remaining credit balance. Use this to decide whether the user can generate a video (rendering needs a premium plan and enough credits). Returns plan, premium, credits, free_video_available, and links (upgrade / buy_credits). Cheap and safe to call often.Not declaredNot declaredNot declaredNot declared
check_configurationCheck whether a Vivideo API key is present on this request. Call this FIRST. Returns { configured: boolean }. If false, ask the user to add an Authorization: Bearer vv_live_... header to the MCP server config (a key from https://app.vivideo.ai/account/api-keys). Never asks for or exposes the key.Not declaredNot declaredNot declaredNot declared
create_auto_videoCreate a video in AUTO mode: Vivideo writes the script and produces a complete AI-avatar video from your prompt. Returns immediately with a video id and status "processing" (paid) or "preview" (free accounts — see the preview field and upgrade link). Then call wait_for_video or get_video. An Idempotency-Key is sent automatically so a retry never creates a duplicate. Rendering requires a premium plan and credits.Not declaredNot declaredNot declaredNot declared
create_manual_videoCreate a video in MANUAL mode: send your prompt straight to a specific model (get ids/options from list_models). The operation is inferred from inputs — add image_url for image-to-video. resolution/duration/aspect_ratio must match the model (an invalid value returns a 400 listing what is allowed). Returns a video id and status; then wait_for_video or get_video. Idempotency handled automatically.Not declaredNot declaredNot declaredNot declared
estimate_creditsEstimate the credits a generation will cost, from the published per-model rates — BEFORE creating it. This is an estimate, not a charge; the exact amount is returned as credits_charged when you create the video. Use it with check_account to confirm the user can afford the request.Not declaredNot declaredNot declaredNot declared
get_videoGet a video's current status and result. status is one of queued | processing | completed | failed | preview. When completed, video_url is the MP4. When failed, credits are refunded and error explains why. Cheap; prefer wait_for_video for polling instead of calling this in a tight loop.Not declaredNot declaredNot declaredNot declared
list_avatarsList available avatars for auto-mode videos (the stock catalogue plus the account's own avatars). Stock avatars are grouped by person, each with a `looks` array — pass a looks[].avatar_id (or an owned avatar's id) as `avatar_id` in create_auto_video. Use `search`/`limit` to keep responses small.Not declaredNot declaredNot declaredNot declared
list_brand_kitsList the account's brand kits (logo, colors, fonts, motion style). Returns brand_ref ids to pass as `brand_kit_id` in create_auto_video to produce an on-brand video.Not declaredNot declaredNot declaredNot declared
list_modelsList the video models available for MANUAL mode plus the auto-generate pipeline (id "vivideo-auto"). Each model lists its operations, allowed durations, resolutions, aspect ratios, style presets and per-second credit rate — use these to build a valid create request. Filter with `mode` to keep the response small.Not declaredNot declaredNot declaredNot declared
list_videosList the account's videos, newest first. Filter by status and limit the count to keep responses small.Not declaredNot declaredNot declaredNot declared
list_voicesList available voices for auto-mode videos. Returns voice ids to pass as `voice_id` in create_auto_video. Filter by language/gender/search and cap with `limit`. Voice cloning is not available via the API.Not declaredNot declaredNot declaredNot declared
render_previewFor FREE accounts only: after the user upgrades, render a video that was returned as status "preview". Charges run on the same project (the first video after upgrading is free). If the video is already rendering/complete, returns its current state. If the account is still free, returns an upgrade_required error with an upgrade link.Not declaredNot declaredNot declaredNot declared
wait_for_videoWait for a video to reach a terminal state (completed / failed / preview), then return it. Polls safely at the API-suggested interval for up to ~20 seconds per call (HTTP requests are time-capped). If it does not finish in time it returns { timed_out: true } with the latest status — simply call it again with the same id to keep waiting. It never blocks indefinitely or over-polls.Not declaredNot declaredNot declaredNot declared

Details

Registry status
Active
Published
Jul 28, 2026
Updated
Jul 28, 2026
Website
Not given
Categories (suggested)
Design and mediaSuggested categories are assigned automatically from the registry text and may be wrong. Verified operators can correct them.
GDPR
Not declared

Are you the operator? Claim this listing