# vivideo MCP server

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

## Links
- Registry page: https://www.getdrio.com/mcp/io-github-egocen-vivideo-vivideo
- Repository: https://github.com/egocen-vivideo/vivideo-toolchain

## Install
- Command: `npx -y @vivideo/mcp`
- Endpoint: https://api.vivideo.ai/mcp
- Auth: Auth required by registry metadata

## Setup notes
- Remote header: Authorization (required; secret)
- Package: Npm @vivideo/mcp v1.0.2
- Environment variable: VIVIDEO_API_KEY (required; secret)
- The upstream registry signals required auth or secrets.
- Remote endpoint: https://api.vivideo.ai/mcp
- Header: Authorization

## Tools
- check_configuration - Check 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. Endpoint: https://api.vivideo.ai/mcp
- check_account - Get 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. Endpoint: https://api.vivideo.ai/mcp
- list_models - List 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. Endpoint: https://api.vivideo.ai/mcp
- list_avatars - List 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. Endpoint: https://api.vivideo.ai/mcp
- list_voices - List 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. Endpoint: https://api.vivideo.ai/mcp
- list_brand_kits - List 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. Endpoint: https://api.vivideo.ai/mcp
- estimate_credits - Estimate 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. Endpoint: https://api.vivideo.ai/mcp
- create_auto_video - Create 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. Endpoint: https://api.vivideo.ai/mcp
- create_manual_video - Create 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. Endpoint: https://api.vivideo.ai/mcp
- get_video - Get 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. Endpoint: https://api.vivideo.ai/mcp
- wait_for_video - Wait 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. Endpoint: https://api.vivideo.ai/mcp
- list_videos - List the account's videos, newest first. Filter by status and limit the count to keep responses small. Endpoint: https://api.vivideo.ai/mcp
- render_preview - For 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. Endpoint: https://api.vivideo.ai/mcp

## Resources
Not captured

## Prompts
Not captured

## Metadata
- Owner: io.github.egocen-vivideo
- Version: 1.0.2
- Runtime: Npm
- Transports: STDIO, HTTP
- License: Not captured
- Language: Not captured
- Stars: Not captured
- Updated: Jul 28, 2026
- Source: https://registry.modelcontextprotocol.io
