seedance-mcp
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., "@seedance-mcpCreate a 10-second 720p video of a robot walking through a neon city."
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.
Seedance 2.5 MCP
English | 简体中文
A Python MCP 2.x server for Volcano Ark Seedance 2.5. It exposes video generation and private asset library operations over SSE.
Features
Video Generation
Text-to-video, first-frame, and first/last-frame generation
Multimodal references using images, videos, and audio
Video editing and extension
Create, inspect, wait for, list, cancel, and delete generation tasks
480p, 720p, and 1080p output
Fixed durations from 4 to 30 seconds or automatic duration
Synchronized audio, MP4/MOV output, last-frame return, and web search
Private Asset Library
Create, inspect, update, and delete asset groups
Upload image, video, and audio assets
Poll asset processing until the asset becomes
ActiveReference approved assets as
asset://<AssetId>in Seedance requestsExplicit
confirm=trueprotection for destructive tools
Related MCP server: seedance-2-mcp
Requirements
Python 3.12.3 or later
Seedance 2.5 enabled in Volcano Ark
IAM permissions and asset library authorization when using private assets
Environment Variables
Create the local environment file:
cp .env-example .envConfigure the credentials:
ARK_API_KEY=
VOLCENGINE_ACCESS_KEY=
VOLCENGINE_SECRET_KEY=
VOLCENGINE_SESSION_TOKEN=Variable | Purpose | Required |
| Seedance 2.5 video generation API | For video generation |
| Asset library Access Key | For asset operations |
| Asset library Secret Key | For asset operations |
| Token issued with temporary STS credentials | Only for temporary AK/SK |
A long-lived AK/SK pair does not require a session token. Never commit .env or share its contents.
Custom Model or Inference Endpoint
The default model identifier is defined near the top of src/seedance_mcp/server.py:
MODEL_ID = "doubao-seedance-2-5-260628"You may replace it with your own Seedance 2.5 inference endpoint ID:
MODEL_ID = "ep-your-seedance-2-5-endpoint-id"The recommended approach is to leave the source unchanged and add the optional ARK_MODEL variable to .env:
ARK_MODEL=ep-your-seedance-2-5-endpoint-idARK_MODEL takes precedence over MODEL_ID. If it is absent or empty, the server uses MODEL_ID. Restart the MCP server after changing either value.
Install and Run
cd /path/to/seedance-mcp
uv sync
uv run seedance-mcpThe SSE endpoint is available at:
http://127.0.0.1:8000/sseCustom Host and Port
The listening address and port are configurable. The defaults are 127.0.0.1 and 8000. Add these optional variables to .env to override them:
MCP_HOST=0.0.0.0
MCP_PORT=9000After changing them, restart the server. With the example above:
Local clients connect to
http://127.0.0.1:9000/sse.Remote clients connect to
http://<server-ip-or-domain>:9000/sse.0.0.0.0is a bind address and must not be used as the client URL.
Listening on 0.0.0.0 exposes the MCP service to the network. Restrict access with a firewall or security group and use an authenticated HTTPS reverse proxy for public deployments.
Press Ctrl+C in the server terminal to stop it. After changing code or .env, restart it with:
pid=$(lsof -tiTCP:8000 -sTCP:LISTEN)
[ -n "$pid" ] && kill "$pid"
uv run seedance-mcpMCP Client Configuration
Add the server to your MCP client's mcp_settings.json:
{
"mcpServers": {
"seedance-2.5": {
"url": "http://127.0.0.1:8000/sse",
"type": "sse",
"disabled": false,
"autoApprove": []
}
}
}Restart the MCP server or reload the editor window after changing this configuration.
MCP Tools
Video Tasks
Tool | Description |
| Create a Seedance 2.5 generation task |
| Retrieve one task and its result |
| List video tasks created within the last seven days |
| Poll a task until it reaches a terminal state |
| Cancel a queued task or delete a task record |
| Show supported capabilities and parameter limits |
Asset Groups
Tool | Description |
| Create a private virtual-character asset group |
| List and filter asset groups |
| Retrieve one asset group |
| Update an asset group's name or description |
| Permanently delete a group and all assets in it |
Assets
Tool | Description |
| Upload an asset from a public URL |
| List and filter assets |
| Retrieve asset details and processing status |
| Wait for asset processing to complete |
| Update an asset name |
| Permanently delete an asset |
Asset uploads accept public HTTP/HTTPS URLs only. Local file paths and Base64 payloads are not supported. An asset must be Active before it can be used for video generation.
Project Structure
seedance-mcp/
├── .env-example
├── main.py
├── pyproject.toml
├── src/seedance_mcp/
│ ├── client.py
│ ├── config.py
│ └── server.py
└── uv.lockserver.py: MCP server, video tools, asset signing, and asset toolsclient.py: Volcano Ark video generation API clientconfig.py: environment-based configurationmain.py: compatibility entry point
Important Notes
Video generation requests incur Volcano Ark usage charges.
Generated video URLs are typically retained for 24 hours. Download or transfer results promptly.
Asset query URLs are temporary and remain valid for 12 hours.
Asset and asset-group deletion is irreversible.
Temporary AK/SK credentials and session tokens expire and must be refreshed.
Official Documentation
This server cannot be deployed
Maintenance
Related MCP Connectors
LLM chat, text tools, image generation, editing, batch image jobs, and asynchronous video generation
Best Image and video generation: 20+ models (Kling, Seedance, Veo, NB, FLUX.2), OAuth, pay-per-use.
- MusevateOAuthcom.musevate
Text, image and reference-to-video across many AI video models. Musevate account required.
Generate reproducible image, video, and audio assets with leading models and your own provider keys.
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables AI image generation using Doubao Seedream models and video generation using Doubao Seedance models through Volcano Engine's API, supporting text-to-image, image-to-image, text-to-video, and task status queries.334 npm3MIT
- AlicenseAqualityDmaintenanceExposes Volcengine ARK Seedance 2.0 video generation capabilities via MCP tools, enabling text-to-video, image-to-video, and multimodal reference generation locally.39MIT
- FlicenseAqualityDmaintenanceEnables video generation using the Seedance 2.0 model through MCP, supporting both OpenAI and Volcengine API formats with tools for creating, monitoring, and downloading videos.6-
- AlicenseNot gradedqualityDmaintenanceEnables AI video generation from text prompts, status monitoring, and video management through the Sisif AI Video API.1MIT