AIVeed Developers
Get your API key

MCP server

Use AIVeed from Claude, Cursor, VS Code or any other Model Context Protocol client. The open-source aiveed-mcp server gives your assistant tools to check prices, generate videos, images and audio, wait for the result and hand you the hosted URL — paid in credits from your own account.

It talks only to the public API at /v1 with your API key, so it can do nothing your key could not already do with curl. Source, security model and releases: github.com/AIVeed-io/aiveed-mcp (MIT). Every npm release is built by GitHub Actions and published with provenance.

1. Get an API key

Create one on the developer dashboard. Node.js 20 or newer must be installed; npx downloads the server on first use.

2. Add the server to your client

Claude Code

bash
claude mcp add aiveed -e AIVEED_API_KEY=aiv_sk_... -- npx -y aiveed-mcp

Claude Desktop and Cursor

Add this to claude_desktop_config.json (Claude Desktop: Settings → Developer → Edit Config) or ~/.cursor/mcp.json (Cursor), then restart the app.

json
{
  "mcpServers": {
    "aiveed": {
      "command": "npx",
      "args": ["-y", "aiveed-mcp"],
      "env": { "AIVEED_API_KEY": "aiv_sk_..." }
    }
  }
}

VS Code

Add this to .vscode/mcp.json in your workspace, or run MCP: Add Server from the command palette.

json
{
  "servers": {
    "aiveed": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "aiveed-mcp"],
      "env": { "AIVEED_API_KEY": "aiv_sk_..." }
    }
  }
}

Any other MCP client works the same way: run npx -y aiveed-mcp over stdio with AIVEED_API_KEY in its environment. Pin a version (aiveed-mcp@0.1.0) if you want upgrades to be deliberate.

Keep your client's approval prompt on for the generate_* and extend_video tools: they spend credits. Ask the assistant to check the price with list_models first.

3. Ask for a video

prompt
Using AIVeed, make an 8-second 16:9 video of a paper boat drifting down a rainy street at night.
Tell me the cheapest model that fits and its credit cost before you generate, then wait for it and give me the link.

Tools

ToolWhat it doesCredits
list_modelsLive model catalog: options, accepted inputs and prices (no key needed)free
get_creditsYour credit balancefree
generate_videoStart a video job; returns a job idspends credits
generate_imageStart an image jobspends credits
generate_audioStart a voiceover or music jobspends credits
extend_videoAdd ~7 s to a completed Veo 3.1 videospends credits
get_jobJob status; wait_seconds polls until it finishesfree
list_jobsYour jobs, filterable by status, model and typefree
list_videos / list_imagesYour generated media, with permanent URLsfree
cancel_jobCancel a queued job (refunded)free
upload_mediaTurn a local image, audio or video file into an input URL (local setup only, off by default)free

Every generate call sends an Idempotency-Key and returns it, so a retry with the same key never charges twice. Failed jobs are refunded automatically.

Local files

upload_media turns a file on your computer into a URL a model can use (a first frame, a reference image, audio for lipsync). The URL is public, so the tool is off until you list the folders it may read in AIVEED_MCP_UPLOAD_DIRS (comma-separated; ~ is your home folder):

json
"env": {
  "AIVEED_API_KEY": "aiv_sk_...",
  "AIVEED_MCP_UPLOAD_DIRS": "~/Videos/aiveed-inputs"
}

List a folder that only holds media you are happy to share. Even inside it, the server never reads hidden files or folders, system directories or linked files, and only uploads real image, audio and video files, checked by their content. See Uploads for the size limits.

Hosting it over HTTP

To run one server for several people, start it in Streamable HTTP mode behind a TLS proxy:

bash
npx -y aiveed-mcp --http --port 8787 --host 127.0.0.1
# clients then call POST http://127.0.0.1:8787/mcp with  Authorization: Bearer aiv_sk_...

Each request must carry its caller's own key, so a hosted server never spends anyone else's credits, and upload_media is not offered. The README lists the host, origin and limit settings.

Prefer plain HTTP?

Agents that can make HTTP requests can use the API directly: see the prompt packs and llms-full.txt.