wan-mcp
The wan-mcp server gives AI agents direct access to Wan AI models for image/video generation, editing, and animation via RunAPI. Key capabilities:
Authenticate (
login): Browser-based PKCE OAuth flow to save credentials locally; headless/CI environments can use theRUNAPI_API_KEYenv var instead.Animate images (
animate): Create animation tasks from source images using models likewan-2.2-animate-moveorwan-2.2-animate-replace.Edit videos (
edit_video): Apply prompt-driven edits to existing videos using models likewan-2.6-edit-videoorwan-2.7-edit-video, supporting resolutions up to 1080p.Image to video (
image_to_video): Generate videos from a first-frame image across 5 model variants, with control over duration, resolution, and optional audio.Speech/audio to video (
speech_to_video): Generate video from a source image and audio file.Text to image (
text_to_image): Create images from text prompts with aspect ratio options and resolutions up to 4K.Text to video (
text_to_video): Produce videos from text prompts with duration (2–10 seconds), aspect ratio, and resolution controls across 5 model variants.Poll task status (
get_task): Fetch status and output URLs for any previously created task by ID. Each creation tool can also wait for completion or return a task ID for later polling.Check pricing (
check_pricing): Look up current pricing for any Wan model and endpoint — no authentication required.
Supports 18 model variants across 6 endpoints (Wan 2.2–2.7) and integrates with MCP clients like Claude, Cursor, Windsurf, VS Code, and more.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wan-mcpgenerate a video of a cat dancing"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Why This Package?
@runapi.ai/wan-mcp is a focused Model Context Protocol server for the Wan model line on RunAPI.
It gives MCP-compatible assistants direct access to 6 endpoints and 18 model variants without loading the full RunAPI catalog.
Use this per-model server when an agent should stay scoped to Wan. Use @runapi.ai/mcp when one assistant should discover every RunAPI model line.
Related MCP server: @runapi.ai/gpt-4o-image-mcp
Install
Add it to Claude Code:
claude mcp add wan -s user -- npx -y @runapi.ai/wan-mcpUse project scope when the server should be shared with a repository:
claude mcp add wan -s project -- npx -y @runapi.ai/wan-mcpCodex, Cursor, Windsurf, VS Code, Roo Code, and other MCP hosts can use the same stdio command:
{
"mcpServers": {
"wan": {
"command": "npx",
"args": ["-y", "@runapi.ai/wan-mcp"]
}
}
}check_pricing works before sign-in. For task creation and status polling, ask your assistant to call the login tool. It opens a browser login and saves credentials to ~/.config/runapi/config.json, the same file used by runapi login.
Headless and CI hosts can still set RUNAPI_API_KEY before starting the MCP host.
Ready-made examples are in examples/ for Claude, Cursor, Windsurf, VS Code, and Roo Code.
Tools
Tool | Auth | Purpose |
| Yes | Create a Wan animate task and optionally wait for a terminal status. Returns the task id, status, and output URLs. |
| Yes | Create a Wan edit video task and optionally wait for a terminal status. Returns the task id, status, and output URLs. |
| Yes | Create a Wan image to video task and optionally wait for a terminal status. Returns the task id, status, and output URLs. |
| Yes | Create a Wan speech to video task and optionally wait for a terminal status. Returns the task id, status, and output URLs. |
| Yes | Create a Wan text to image task and optionally wait for a terminal status. Returns the task id, status, and output URLs. |
| Yes | Create a Wan text to video task and optionally wait for a terminal status. Returns the task id, status, and output URLs. |
| Yes | Fetch the current status and latest payload for an existing task. |
| No | Look up current pricing for a Wan model and endpoint. |
Models
Wan covers 18 model variants across 6 endpoints. Each tool accepts the models listed for it:
Tool | Models |
|
|
|
|
|
|
|
|
|
|
|
|
Model availability can change between releases. Use check_pricing or the Wan model page for the current catalog view.
Agent Prompts
Ask your assistant in natural language; it can inspect pricing, create the task, and return the task id plus output URLs.
Create a task
Run a Wan animate task with RunAPI.The assistant can call check_pricing, then animate, and return the task id, status, and output URLs.
Submit without waiting
Create the task but don't wait for it to finish.The assistant calls the create tool with wait: false and returns the task id. Check on it later with get_task.
Check pricing before creating
Check current Wan pricing, then create the task if it matches my request.The assistant calls check_pricing and can link to the Wan model page for the canonical catalog entry.
Configuration
The server resolves auth in this order:
RUNAPI_API_KEYenvironment variable, useful for headless and CI hosts~/.config/runapi/config.json, created by the MCPlogintool orrunapi loginNo key, which still allows
check_pricing
The config file is normally managed by login. A pre-provisioned headless config can use:
{
"apiKey": "your_runapi_key"
}Do not commit real API keys.
Links
Resource | URL |
Wan model page | |
npm package | |
GitHub repository | |
RunAPI MCP overview | |
RunAPI docs |
License
Licensed under the Apache License, Version 2.0.
Available Tools
9 toolsanimateC
Create a Wan task on RunAPI (animate). Returns a task id, status, and output URLs.
Inputs: source_image_url (required), reference_video_url (required), wait, model, +5 more.
check_pricingB
Look up RunAPI pricing for the wan model line.
Inputs: model, action.
edit_videoC
Create a Wan task on RunAPI (edit video). Returns a task id, status, and output URLs.
Inputs: seed, wait, audio, model, +16 more.
get_taskA
Fetch the current status and latest result payload for a wan task.
Inputs: action (required), task_id (required).
image_to_videoB
Create a Wan task on RunAPI (image to video). Returns a task id, status, and output URLs.
Inputs: seed, wait, audio, model, +19 more.
loginA
Authenticate RunAPI by opening a browser PKCE login flow and saving the API key to ~/.config/runapi/config.json.
Inputs: force.
speech_to_videoC
Create a Wan task on RunAPI (speech to video). Returns a task id, status, and output URLs.
Inputs: prompt (required), source_audio_url (required), source_image_url (required), seed, +13 more.
text_to_imageB
Create a Wan task on RunAPI (text to image). Returns a task id, status, and output URLs.
Inputs: seed, wait, model, prompt, +13 more.
text_to_videoB
Create a Wan task on RunAPI (text to video). Returns a task id, status, and output URLs.
Inputs: seed, wait, model, ratio, +18 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
TDQS
Scored across 9 tools
Most tools are clearly differentiated by input modality (text_to_image, image_to_video, speech_to_video, etc.), but 'animate' and 'edit_video' have overlapping video-manipulation purposes and vague descriptions, making selection uncertain. Overall, the set is mostly distinct with only minor ambiguity.
All names use snake_case, which is consistent, but the patterns vary widely: some follow input_to_output form (text_to_image), some are verb_noun (edit_video, get_task), and some are single verbs (animate, login). This mixed convention reduces predictability.
Nine tools is a well-scoped set for a generation API, covering multiple creation endpoints plus utility functions. No tool feels redundant.
The surface covers task creation for various modalities, task status retrieval, pricing, and authentication. However, it lacks task management operations like cancel, list, or delete, which could be needed for longer workflows.
Maintenance
Related MCP Connectors
MCP server for Wan AI video generation
MCP server for Pixapi: check live credit pricing and balance, then generate images and video.
MCP server for Hailuo (MiniMax) AI video generation
Stivio MCP server - AI image-to-video generator via MCP.
Related MCP Servers
- AlicenseBqualityBmaintenanceMCP server for the Gemini Omni model line, enabling task creation (audio, character, text-to-video) and pricing checks through RunAPI.6217 npmApache 2.0
- AlicenseBqualityBmaintenanceMCP server for GPT-4o Image model line, enabling text-to-image task creation, status polling, and pricing checks via RunAPI.4204 npmApache 2.0
- AlicenseAqualityBmaintenanceMCP server for Ideogram V3 model line enabling image editing, reframing, remixing, and text-to-image generation with task polling and pricing checks through RunAPI.683 npmApache 2.0
- AlicenseBqualityBmaintenanceMCP server for the InfiniteTalk model line, enabling audio-to-video task creation, status polling, and pricing checks via a RunAPI API key.474 npm1Apache 2.0