Skip to main content

SeedanceMCP

PyPI version PyPI downloads Python 3.10+ License: MIT MCP

A Model Context Protocol (MCP) server for AI video generation using ByteDance Seedance through the AceDataCloud API.

Generate AI videos directly from Claude, VS Code, or any MCP-compatible client.

Start with the hosted server

Open setup guide · Example prompt

  1. In a client that supports remote MCP OAuth, add https://seedance.mcp.acedata.cloud/mcp as an HTTP server.
  2. Choose Connect / Sign in, log in to AceDataCloud, review the requested permissions, and authorize.
  3. Enable the tools and ask for a playable video. You do not need to create or paste an API token for this route.

The server already supports OAuth discovery, dynamic client registration (DCR), and S256 PKCE. DCR registers the client application; you still sign in and approve access. Authorization does not make generation free. Review the consent screen: the media integration can read your profile and manage the applications and credentials used for API access. Usage is charged to your account.

Client compatibility

Client / mode Start path Boundary
Claude web / Desktop with remote custom connectors Add the URL in the connector UI, then authorize Availability and menu names depend on your plan and app version. The local Desktop JSON is for stdio; do not paste HTTP config there.
VS Code with native remote MCP support Run MCP: Add Server, select HTTP, paste the URL, then follow authentication Use a version with OAuth/DCR support. The optional AceDataCloud extension has its own API-key setup.
Other remote clients Use the client's documented HTTP + OAuth flow Support varies by client and version; an endpoint alone does not prove the client's login flow works.
Local stdio / self-hosted / clients without OAuth Use the API Token path below Keep the token in a local secret or environment variable; never in the server URL or Git.

Verify your first result

Generate a short video of clouds moving over a mountain, then retrieve the completed task and final video URL.

This is a reproducible example prompt, not a promised generation time or a recorded success. A connected server, tools/list, and a task ID only confirm setup/submission. Keep the task ID, wait for terminal success, then open or play the final media. Pending previews and failed tasks are not a completed result.

Charges and common failures

  • The MCP code is open source; hosted API generation is metered. Check current service pricing, model availability, account balance, and applicable terms before generating. No free allowance or commercial-use right is implied by installing this package.
  • Login loop / 401: reconnect using the client's authentication UI; for local usage check the token and its scope. Update a client that cannot discover or register an OAuth server.
  • 403 / access denied: inspect the error and account permissions; a moderation rejection requires changing the input. Insufficient balance: inspect billing before retrying.
  • Pending / failed generation: poll the same task; read the final error. Do not repeatedly submit new tasks to fix polling. A new generation may incur a new charge.

API Token path

For local stdio or a client without OAuth, open your applications, sign in, choose the service, and create an API credential with the required scope. Configure ACEDATACLOUD_API_TOKEN locally, or use the client's documented Bearer-header setting. Use the local commands below for stdio; HTTP configuration formats are client-specific.

Features

  • Text to Video - Create AI-generated videos from text prompts
  • Image to Video - Animate images with first frame, last frame, and reference image control
  • Multiple Models - Support for Seedance 2.0 (incl. Fast/Mini, multimodal reference), 1.5 Pro, 1.0 Pro, 1.0 Pro Fast, 1.0 Lite T2V/I2V
  • Multiple Resolutions - 480p, 720p (default), 1080p, and 4k output (2.5 supports 1080p; 4k: doubao-seedance-2-0-260128 only)
  • Flexible Aspect Ratios - 16:9, 9:16, 1:1, 4:3, 3:4, 21:9, and adaptive
  • Audio Generation - Generate synchronized audio for videos (1.5 Pro and 2.0 series)
  • Service Tiers - Default (priority) and Flex (cost-effective) processing
  • Task Tracking - Monitor generation progress and retrieve results

Tool Reference

Tool Description
seedance_generate_video Generate AI video from a text prompt using ByteDance Seedance.
seedance_generate_video_from_image Generate AI video using reference images with ByteDance Seedance.
seedance_get_task Query the status and result of a video generation task.
seedance_get_tasks_batch Query multiple video generation tasks at once.
seedance_list_models List all available Seedance models with their capabilities and pricing.
seedance_list_resolutions List all available resolutions and aspect ratios for Seedance.
seedance_list_actions List all available Seedance API actions and corresponding tools.

Run locally with an API token

If you prefer to run the server on your own machine:

# Install from PyPI
pip install mcp-seedance
# or
uvx mcp-seedance

# Set your API token
export ACEDATACLOUD_API_TOKEN="your_token_here"

# Run (stdio mode for Claude Desktop / local clients)
mcp-seedance

# Run (HTTP mode for remote access)
mcp-seedance --transport http --port 8000

Claude Desktop (Local)

{
  "mcpServers": {
    "seedance": {
      "command": "uvx",
      "args": ["mcp-seedance"],
      "env": {
        "ACEDATACLOUD_API_TOKEN": "your_token_here"
      }
    }
  }
}

Docker (Self-Hosting)

docker pull ghcr.io/acedatacloud/mcp-seedance:latest
docker run -p 8000:8000 ghcr.io/acedatacloud/mcp-seedance:latest

Clients connect with their own Bearer token — the server extracts the token from each request's Authorization header.

Available Tools

Video Generation

Tool Description
seedance_generate_video Generate video from a text prompt
seedance_generate_video_from_image Generate video using reference/start/end images

Tasks

Tool Description
seedance_get_task Query a single task status
seedance_get_tasks_batch Query multiple tasks at once

Information

Tool Description
seedance_list_models List available Seedance models
seedance_list_resolutions List available output resolutions
seedance_list_actions List available API actions

Usage Examples

Generate Video from Prompt

User: Create a video of a cat playing with a ball of yarn

Claude: I'll generate a video for you.
[Calls seedance_generate_video with prompt="A cute cat playfully batting a ball of yarn"]

Animate an Image

User: Turn this image into a video: https://example.com/landscape.jpg

Claude: I'll create a video from your image.
[Calls seedance_generate_video_from_image with first_frame_url and appropriate prompt]

Generate with Audio

User: Create a video of rain falling with sound

Claude: I'll generate a video with synchronized audio.
[Calls seedance_generate_video with prompt="Rain falling on a quiet street" and generate_audio=True, model="doubao-seedance-1-5-pro-251215"]

Available Models

Model Description Features
doubao-seedance-2-5-260628 2.5 Up to 30s and 1080p, edit/extend, multimodal reference
doubao-seedance-2-0-fast-260128 2.0 Fast Latest generation fast
doubao-seedance-2-0-mini-260615 2.0 Mini Latest generation, lightweight, cheapest 2.0
doubao-seedance-1-5-pro-251215 1.5 Pro Audio generation, T2V, I2V
doubao-seedance-1-0-pro-250528 1.0 Pro High quality T2V, I2V
doubao-seedance-1-0-pro-fast-251015 1.0 Pro Fast Faster generation
doubao-seedance-1-0-lite-t2v-250428 1.0 Lite T2V Lightweight text-to-video
doubao-seedance-1-0-lite-i2v-250428 1.0 Lite I2V Lightweight image-to-video

Available Aspect Ratios

Aspect Ratio Description Use Case
16:9 Landscape (default) YouTube, TV, presentations
9:16 Portrait TikTok, Instagram Reels
1:1 Square Instagram posts
4:3 Traditional Classic video format
3:4 Portrait traditional Portrait content
21:9 Ultrawide Cinematic content
adaptive Adaptive Auto-detect from image

Configuration

Environment Variables

Variable Description Default
ACEDATACLOUD_API_TOKEN API token from AceDataCloud Required
ACEDATACLOUD_API_BASE_URL API base URL https://api.acedata.cloud
ACEDATACLOUD_OAUTH_CLIENT_ID OAuth client ID (hosted mode) —
ACEDATACLOUD_PLATFORM_BASE_URL Platform base URL https://platform.acedata.cloud
SEEDANCE_DEFAULT_MODEL Default model doubao-seedance-2-0-260128
SEEDANCE_DEFAULT_RESOLUTION Default resolution 720p
SEEDANCE_DEFAULT_RATIO Default aspect ratio 16:9
SEEDANCE_DEFAULT_DURATION Default duration (seconds) 5
SEEDANCE_REQUEST_TIMEOUT Request timeout in seconds 1800
LOG_LEVEL Logging level INFO

Command Line Options

mcp-seedance --help

Options:
  --version          Show version
  --transport        Transport mode: stdio (default) or http
  --port             Port for HTTP transport (default: 8000)

Development

Setup Development Environment

# Clone repository
git clone https://github.com/AceDataCloud/SeedanceMCP.git
cd SeedanceMCP

# Create virtual environment
python -m venv .venv
source .venv/bin/activate  # or `.venv\Scripts\activate` on Windows

# Install with dev dependencies
pip install -e ".[dev,test]"

Run Tests

# Run unit tests
pytest

# Run with coverage
pytest --cov=core --cov=tools

# Run integration tests (requires API token)
pytest tests/test_integration.py -m integration

Code Quality

# Format code
ruff format .

# Lint code
ruff check .

# Type check
mypy core tools

Build & Publish

# Install build dependencies
pip install -e ".[release]"

# Build package
python -m build

# Upload to PyPI
twine upload dist/*

Project Structure

SeedanceMCP/
├── core/                   # Core modules
│   ├── __init__.py
│   ├── client.py          # HTTP client for Seedance API
│   ├── config.py          # Configuration management
│   ├── exceptions.py      # Custom exceptions
│   ├── server.py          # MCP server initialization
│   ├── types.py           # Type definitions
│   └── utils.py           # Utility functions
├── tools/                  # MCP tool definitions
│   ├── __init__.py
│   ├── video_tools.py     # Video generation tools
│   ├── task_tools.py      # Task query tools
│   └── info_tools.py      # Information tools
├── prompts/                # MCP prompts
│   └── __init__.py        # Prompt templates
├── tests/                  # Test suite
│   ├── conftest.py
│   ├── test_client.py
│   ├── test_config.py
│   ├── test_integration.py
│   └── test_utils.py
├── deploy/                 # Deployment configs
│   └── production/
│       ├── deployment.yaml
│       ├── ingress.yaml
│       └── service.yaml
├── .env.example           # Environment template
├── .gitignore
├── CHANGELOG.md
├── Dockerfile             # Docker image for HTTP mode
├── docker-compose.yaml    # Docker Compose config
├── LICENSE
├── main.py                # Entry point
├── pyproject.toml         # Project configuration
└── README.md

API Reference

This server wraps the AceDataCloud Seedance API:

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing)
  5. Open a Pull Request

Documentation

Documentation

License

MIT License - see LICENSE for details.


Made with love by AceDataCloud

Metadata

Release files for mcp-seedance 2026.10.4.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mcp-seedance 2026.10.4.0
File Size Uploaded
mcp_seedance-2026.10.4.0.tar.gz 42.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mcp-seedance 2026.10.4.0
File Interpreter ABI Platform
mcp_seedance-2026.10.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.1 kB

Release files / mcp_seedance-2026.10.4.0.tar.gz

Download URL mcp_seedance-2026.10.4.0.tar.gz
Size 42.6 kB
Tags Source
SHA-256 checksum
How to use checksums
99d0a981434b9680fa6953d6fa544dea6ea8a2f842eb897851a690958ccc4b26
BLAKE2b-256 checksum
How to use checksums
08b73863fcaa05100c4bbbec02dcb09682d97c13badbca527952624def6f9ced
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.3

Release files / mcp_seedance-2026.10.4.0-py3-none-any.whl

Download URL mcp_seedance-2026.10.4.0-py3-none-any.whl
Size 33.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
e4021df4d6db5272dd4c9ec80f878b796b455dc4136766143031bb2da3a8dc9f
BLAKE2b-256 checksum
How to use checksums
09a8f1559df04d700faadfdcafe6f003cdc8adb18718efaec4ae942e27b4655a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.12.3

Release history Release notifications | RSS feed

This release

2026.10.4.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page