MCP Server

WaveSpeed MCP Server

The WaveSpeed MCP server lets an AI tool search the live model catalog, read a model’s real input schema, check prices, and run image, video, audio, and 3D models on your WaveSpeed account.

There are two ways to connect, with the same tools:

Remote (URL)Local (command)
Addresshttps://api.wavespeed.ai/mcpnpx -y @wavespeed/mcp
Runs onWaveSpeedYour computer
Sign inOAuth in your browser, or an API key headerWAVESPEED_API_KEY, or wavespeed login
Good forClaude on the web, ChatGPT, tools that add a server by URLClaude Code, Claude Desktop, Cursor, Cline, and other tools that start a local command
Local filesPass public URLs"@./photo.jpg" is uploaded for you

Remote server

The address is:

https://api.wavespeed.ai/mcp

Claude on the web

Add a custom connector and enter the address above. Claude opens a WaveSpeed page where you sign in and approve the connection.

ChatGPT

Add a custom connector (this needs Developer Mode in ChatGPT), enter the address above, and choose OAuth. Approve the connection on the WaveSpeed page that opens.

Claude Code

# Sign in through your browser the first time you use it.
claude mcp add --transport http wavespeed https://api.wavespeed.ai/mcp

Or skip the browser and use an API key:

claude mcp add --transport http wavespeed https://api.wavespeed.ai/mcp \
  --header "Authorization: Bearer $WAVESPEED_API_KEY"

Cursor

{
  "mcpServers": {
    "wavespeed": {
      "url": "https://api.wavespeed.ai/mcp",
      "headers": { "Authorization": "Bearer YOUR_WAVESPEED_API_KEY" }
    }
  }
}

VS Code

Add this to .vscode/mcp.json:

{
  "servers": {
    "wavespeed": {
      "type": "http",
      "url": "https://api.wavespeed.ai/mcp",
      "headers": { "Authorization": "Bearer YOUR_WAVESPEED_API_KEY" }
    }
  }
}

Machines without a browser

On a server, in a container, or in CI, send an API key instead of signing in through a browser. Create a key at wavespeed.ai/accesskey from any device and pass it in the Authorization: Bearer header, as in the examples above.

Signing in

When a tool connects with OAuth, WaveSpeed creates a new API key for that connection and names it MCP · <app>, for example MCP · Claude. The app can run models and use your credits with that key, the same as any other API key on your account.

To disconnect, delete the key on the API Keys page. The next request from that app is refused.

If you are asked to approve an app that WaveSpeed has not verified, the page shows its address and an unverified warning. Only approve it if you started that connection yourself.

Tools

ToolWhat it does
list_modelsSearch the live catalog by text or type (for example text-to-image, image-to-video)
get_model_schemaShow a model’s required fields, accepted inputs, and defaults
create_uploadRemote server only: get a temporary address to upload a file from a tool that can send HTTP requests, and the download_url to use as an input
run_modelRun a model and return the output URLs
get_priceEstimate the cost of a run before you spend
get_balanceShow your credit balance
get_predictionCheck on, or keep waiting for, a run that has not finished

Files

Model inputs that take a file take a URL.

  • Local server: write "@./photo.jpg" as the value and the file is uploaded for you, or call upload_file to get a hosted URL.
  • Remote server: it cannot read files on your computer. Pass a public URL. If the tool you use can send HTTP requests itself (a coding agent with a shell, for example), call create_upload with the file name and exact size, send the file with an HTTP PUT to the address it returns using the headers it returns, and pass the returned download_url as the input. The upload address works for a short time and takes the file directly; do not send your API key to it.

Running models

run_model takes the model ID and an input object whose keys come from get_model_schema.

  • Unknown input names are rejected. The API ignores input names a model does not accept and still charges for the run, so the server refuses the request before it is submitted and suggests the closest valid name. Older names a model still accepts are allowed.
  • Long runs. run_model waits up to 50 seconds by default. If the run is not done, it returns done: false and the prediction ID, and the run keeps going. Check it with get_prediction. On the remote server wait_seconds can be up to 100.
  • Files. See Files above.

Checking prices

get_price returns an estimate. Pricing for some models depends on inputs such as duration or resolution. If you leave those out, the result lists the inputs it could not take into account and says when it is only the minimum price. The amount actually charged for a run is what counts.

Troubleshooting

ProblemWhat to do
Requests are refused after it worked beforeThe key for that connection was deleted or disabled. Reconnect, or create a new key.
Invalid API keyCheck the key on the API Keys page.
A tool says an input is not acceptedCall get_model_schema and use the names it lists.
A run returns done: falseThe run is still going. Call get_prediction with the ID.
You cannot create more keysAn organization has a limit on active keys. Delete ones you no longer use.
© 2026 WaveSpeedAI. All rights reserved.