WaveSpeedAI

Generate Images and Video Inside Cline with the WaveSpeed MCP Server

Add the WaveSpeed MCP server to Cline and the agent gets seven tools: live catalog search, per-model schema introspection, generation with local-file upload, and price quotes before spending.

By WaveSpeedAI2 min read

Cline speaks MCP natively, and the WaveSpeed MCP server (@wavespeed/mcp, MIT) gives it the whole wavespeed.ai platform — image, video, audio, and 3D generation — as seven typed tools.

The server shares its design with the open-source wavespeed CLI: no hardcoded model list, one generation verb driven by live per-model schemas, inputs never mutated, and honest price quotes.

Setup

Add to Cline’s MCP settings (cline_mcp_settings.json):

{
  "mcpServers": {
    "wavespeed": {
      "command": "npx",
      "args": ["-y", "@wavespeed/mcp"],
      "env": { "WAVESPEED_API_KEY": "wsk_..." }
    }
  }
}

Keys come from wavespeed.ai/accesskey. If you already use the CLI, wavespeed login covers the server too and the env block can be omitted.

How the agent works with it

The intended loop is read-before-write:

  1. list_models — search the live catalog by text or modality (text-to-image, image-to-video, …)
  2. get_model_schema — the model’s real input schema: required fields, properties, defaults
  3. run_model — execute with schema-correct inputs; returns output URLs and the prediction id

Local files are passed as "@./path" string values inside input — the server uploads them and substitutes hosted URLs. Bare paths pass through untouched and fail model validation, by design: a value that merely looks like a filename must never leave your machine.

{
  "model": "bytedance/seedream-v5.0-pro/edit",
  "input": {
    "prompt": "replace the background with a sunlit kitchen",
    "images": ["@./input.jpg"]
  }
}

Cost control

get_price accepts the same input as run_model and quotes without charging. Two disclosure fields matter:

  • unpriced_inputs — pricing-formula variables the quote could not see (e.g. audio duration)
  • at_base_price — true when the quote collapsed to the model’s floor rather than a representative charge

get_balance shows account credit. The amount actually charged for a run is authoritative.

Long runs

run_model takes a wait_seconds limit (default 600). If a generation outlives it, the task keeps running server-side — the error names the prediction id and get_prediction picks it up later. wait_seconds: 0 submits without waiting at all.

Where things live

FAQ

What tools does the server expose?

Seven: list_models, get_model_schema, run_model, get_price, get_balance, upload_file, and get_prediction. Read-only tools are annotated as such, so Cline can auto-approve them safely.

Which models can the agent use?

The full live WaveSpeed catalog — image, video, audio, 3D. list_models searches it live (1h cache), so newly released models work the day they ship with no server update.

What happens if a long video generation hits the wait limit?

The task keeps running server-side. The error names the prediction id, and the get_prediction tool recovers its status and outputs — a dropped connection never orphans a paid run.

How is pricing handled?

get_price quotes before running and discloses which pricing inputs the quote was blind to (unpriced_inputs), so a formula floor is never presented as the real cost.

Share