# Use Seedance 2.5 and Nano Banana from Claude, Cursor or Codex with the VidLab MCP (setup in one minute)

Updated 2 Nov 2026

## Short answer

Add `https://vidlab.ai/api/developers/v1/mcp` as a remote MCP server in your assistant, sign in or give it your API key through the `VIDLAB_API_KEY` environment variable, and ask it to list models, estimate a price and generate. Your assistant can then call Seedance 2.5 from $0.088 per second and Nano Banana Pro from $0.04 per image. Your assistant can show the price first with `estimate_price`, and a generation is charged only if it succeeds.

## What you need

- A VidLab account and an API key. Create one at [API keys](/vidlab-api/api-keys). It starts with `vidlab_sk_` and is shown once.
- Credit in your wallet, added on the [billing page](/vidlab-api/billing). Estimates and model lists are free.
- Claude Code, Claude Desktop, Cursor or Codex.

Keep the key out of the commands below. Put it in your shell profile once, then open a new terminal:

```bash
export VIDLAB_API_KEY="vidlab_sk_your_key_here"
```

## Claude Code

Sign in with OAuth, so no key is stored anywhere:

```bash
claude mcp add --transport http --scope user vidlab https://vidlab.ai/api/developers/v1/mcp
```

Run `/mcp` inside Claude Code, pick `vidlab` and sign in. To use your key instead, put this in `.mcp.json` in your project. Claude Code fills in `${VIDLAB_API_KEY}` from your environment, so the file holds no secret:

```json
{
  "mcpServers": {
    "vidlab": {
      "type": "http",
      "url": "https://vidlab.ai/api/developers/v1/mcp",
      "headers": { "Authorization": "Bearer ${VIDLAB_API_KEY}" }
    }
  }
}
```

## Cursor

Add this to `~/.cursor/mcp.json` for every project or `.cursor/mcp.json` for one. Cursor fills in `${env:VIDLAB_API_KEY}` itself:

```json
{
  "mcpServers": {
    "vidlab": {
      "url": "https://vidlab.ai/api/developers/v1/mcp",
      "headers": { "Authorization": "Bearer ${env:VIDLAB_API_KEY}" }
    }
  }
}
```

## Codex

Add this to `~/.codex/config.toml`. Codex reads the key from the variable named in `bearer_token_env_var`:

```toml
[mcp_servers.vidlab]
url = "https://vidlab.ai/api/developers/v1/mcp"
bearer_token_env_var = "VIDLAB_API_KEY"
```

## Claude Desktop and claude.ai

Open Settings, then Connectors, and choose Add custom connector. Paste `https://vidlab.ai/api/developers/v1/mcp` as the URL, sign in to VidLab and choose Allow access. No key is needed.

## Check it works

Start with a request that costs nothing:

```text
Use VidLab to list three video models and the price of a 5 second clip at 720p.
```

Then a small paid one. Ask for the price first:

```text
Use VidLab to make a 5 second 9:16 clip with Seedance 2.5 at 480p: a slow push-in on a perfume bottle on wet black stone. Tell me the price before you start.
```

A 5 second clip at 480p is $0.44. For an image, ask for a Nano Banana Pro picture at 2K, which is $0.04. Tell your assistant your price limit and it can pass it as `max_price_usd`, so a call above it is refused.

## A first frame, then a clip

A common request chains two models: make a still, then animate it. Ask your assistant for it in one message:

```text
Use VidLab. Make a 9:16 Nano Banana Pro image at 2K of a red sneaker on a white studio floor. Then animate it into a 5 second Seedance 2.5 clip at 720p using that image as the first frame. Give me both prices first and stop if the total is over $1.50.
```

The image costs $0.04 and the 5 second clip costs $1.05. Your assistant can add them up, ask for your go-ahead, run the first call, pass the image link to the second and poll both until they finish.

## The tools your assistant gets

| Tool | What it does | Cost |
| - | - | - |
| `list_models` | Finds models by kind, maker or words, with prices | Free |
| `get_model` | One model's options and every priced variant | Free |
| `estimate_price` | The exact price of a call | Free |
| `generate` | Starts a generation, with an optional price cap and idempotency key | The price, on success |
| `get_generation` | Status, progress and the output links | Free |

`tools/list` is the source of truth for your account, and it also includes tools for running ad formats.

## Why use MCP instead of the REST API

MCP is the shortest path when a person is driving: you describe what you want, the assistant picks a model, shows you the price and runs it. When code is driving, use the REST API from a script, and give your coding agent the [skill file](/vidlab-api/SKILL.md) so it knows the endpoints. Both use the same models and the same prices. For help choosing, see [which AI video API should you use](/blog/which-ai-video-api-should-you-use).

## FAQ

### What does the MCP cost?

You pay the price of each generation, which `estimate_price` shows before it starts. Listing models and estimating are free.

### Where does my key go?

Nowhere in a command. The configs above read `VIDLAB_API_KEY` from your environment, or you sign in with OAuth and store nothing. Never paste a key into a chat.

### What happens if a generation fails?

It is not charged. The price is held while the job runs and released when it fails.

### Which models can I call?

All 137 in the [catalogue](/vidlab-api/models), including [Seedance 2.5](/vidlab-api/models/seedance-2.5), [Nano Banana Pro](/vidlab-api/models/nano-banana-pro) and [Grok Imagine Video 1.5](/vidlab-api/models/grok-imagine-video-1.5).

### Is there a read-only mode?

Yes. Add `?profile=readonly` to the URL and your assistant gets only the tools that change nothing.
