Seedance MCP
Click on "Install 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 MCPGenerate a video of a sunset over mountains"
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 MCP
火山方舟 Seedance 2.0 视频生成 MCP Server,支持 Claude Code 和 Codex。
项目真实测试经验、故障判断和 Prompt 约定见 PROJECT_KNOWLEDGE.md。
工具列表
工具 | 功能 |
| 创建视频生成任务 |
| 查询任务状态 |
| 轮询等待任务完成或超时 |
| 下载生成视频到本地 |
| 一步创建 + 等待完成 |
Related MCP server: Sora 2 MCP Server
API 格式
通过 SEEDANCE_API_FORMAT 支持两种 API 格式:
格式 | 适用场景 | 创建路径 | 请求体 | 成功状态 |
| tokease.cn 等 OpenAI 兼容代理 |
|
|
|
| 火山方舟官方 API |
|
|
|
未设置 SEEDANCE_API_FORMAT 时,根据 SEEDANCE_BASE_URL 自动推断(含 tokease → openai,否则 → volcengine)。
环境变量
变量 | 必填 | 默认值 | 说明 |
| 是 | — | API Key |
| 否 |
| API 基础 URL |
| 否 |
| 模型 ID |
| 否 | 自动推断 |
|
| 否 |
| httpx 是否读取系统代理/证书环境变量 |
| 否 |
| HTTP 请求超时(秒) |
| 否 |
| 视频下载目录(建议使用绝对路径) |
| 否 |
| 轮询间隔(秒) |
| 否 |
| 最大等待超时(秒) |
⚠️ 下载目录建议:
SEEDANCE_DOWNLOAD_DIR为相对路径时,产物位置取决于 MCP 宿主的当前工作目录,不同宿主可能下载到不同位置。建议在配置中显式指定绝对路径,例如"SEEDANCE_DOWNLOAD_DIR": "D:/Neo/Neo/seedance-mcp/outputs"。
安装
cd D:/Neo/Neo/seedance-mcp
pip install -e ".[dev]"配置
Claude Code(推荐:绝对 Python 路径)
{
"mcpServers": {
"seedance": {
"command": "C:/Users/13056/AppData/Local/Programs/Python/Python314/python.exe",
"args": ["-m", "seedance_mcp"],
"cwd": "D:/Neo/Neo/seedance-mcp",
"env": {
"SEEDANCE_API_KEY": "YOUR_API_KEY",
"SEEDANCE_BASE_URL": "https://www.tokease.cn",
"SEEDANCE_MODEL": "Seedance 2.0/uP",
"SEEDANCE_API_FORMAT": "openai",
"SEEDANCE_TRUST_ENV": "false",
"SEEDANCE_DOWNLOAD_DIR": "D:/Neo/Neo/seedance-mcp/outputs"
}
}
}
}Codex(TOML 配置)
添加到 ~/.codex/config.toml:
[mcp_servers.seedance]
command = "C:/Users/13056/AppData/Local/Programs/Python/Python314/python.exe"
args = ["-m", "seedance_mcp"]
cwd = "D:/Neo/Neo/seedance-mcp"
[mcp_servers.seedance.env]
SEEDANCE_API_KEY = "YOUR_API_KEY"
SEEDANCE_BASE_URL = "https://www.tokease.cn"
SEEDANCE_MODEL = "Seedance 2.0/uP"
SEEDANCE_API_FORMAT = "openai"
SEEDANCE_TRUST_ENV = "false"
SEEDANCE_DOWNLOAD_DIR = "D:/Neo/Neo/seedance-mcp/outputs"火山方舟官方 API
切换 SEEDANCE_API_FORMAT 和 SEEDANCE_BASE_URL:
{
"SEEDANCE_BASE_URL": "https://ark.cn-beijing.volces.com/api/v3",
"SEEDANCE_MODEL": "doubao-seedance-2-0-260128",
"SEEDANCE_API_FORMAT": "volcengine"
}验证状态
能力 | 状态 |
文生视频(tokease + openai 格式) | ✅ 已通过真实 API 验证 |
文生视频(火山官方 volcengine 格式) | ⏳ 待验证(需要官方 key) |
图生视频(openai 格式) | ✅ 已通过真实 API 验证(task |
图生视频(volcengine 格式) | ⏳ 待验证 |
⚠️ 图生视频超时提示:图生视频生成耗时约 130-150 秒,可能超过 MCP 宿主默认工具调用超时。调用
seedance_create_and_wait时建议显式传timeout_seconds=180或更高,并确认宿主自身 tool timeout 足够长。代码层面SEEDANCE_WAIT_TIMEOUT默认 600 秒,不存在代码默认 120 秒的问题。
图生视频可选冒烟测试
默认不运行图生视频真实测试,避免消耗额度。需要时可手动触发:
Linux / macOS:
SEEDANCE_RUN_IMAGE_API=1 \
SEEDANCE_TEST_IMAGE_URL=https://upload.wikimedia.org/wikipedia/commons/thumb/4/47/PNG_transparency_demonstration_1.png/280px-PNG_transparency_demonstration_1.png \
SEEDANCE_API_KEY=sk-xxx \
SEEDANCE_RUN_REAL_API=1 \
python test_official_api.pyWindows PowerShell:
$env:SEEDANCE_API_KEY = "sk-xxx"
$env:SEEDANCE_RUN_REAL_API = "1"
$env:SEEDANCE_RUN_IMAGE_API = "1"
$env:SEEDANCE_TEST_IMAGE_URL = "https://upload.wikimedia.org/wikipedia/commons/thumb/4/47/PNG_transparency_demonstration_1.png/280px-PNG_transparency_demonstration_1.png"
python test_official_api.py参数 | 说明 |
| 设为 |
| 测试用图片 URL |
输出文件名 |
|
推荐超时 |
|
安全
API Key 不完整打印(遮蔽为
abcd...wxyz)API Key 不写入 README 示例(使用
YOUR_API_KEY占位)API Key 不出现在测试快照中
__repr__()遮蔽 key下载文件名经过清洗:阻止路径穿越,强制
.mp4扩展名.mcp.json在.gitignore中,不会提交真实 key
故障排除
错误 | 原因 | 修复方式 |
| API Key 无效或缺失 | 检查 env 配置中的 |
| 请求频率超限 | 等待后重试,或减少并发请求 |
| 网络或 API 响应慢 | 增大 |
stdout 污染 | 服务端日志泄露到 stdout | 所有日志走 stderr;如 MCP 异常,检查是否有 |
| API Key 无模型权限 | 在火山方舟控制台启用 Seedance 模型 |
| API 响应格式变更 | 检查响应中的 |
| uv 缓存目录不可写 | 改用绝对 Python 路径配置 |
| SSL/代理不匹配或 base URL 错误 | 设置 |
| terminal_states 过期 | 确保 |
视频下载到意外目录 |
| 配置中显式指定绝对路径 |
运行测试
cd D:/Neo/Neo/seedance-mcp
pip install -e ".[dev]"
pytest tests/ -vMCP 验证
使用 MCP Inspector 验证(推荐绝对 Python 路径):
npx @modelcontextprotocol/inspector C:/Users/13056/AppData/Local/Programs/Python/Python314/python.exe -m seedance_mcp预期:服务启动,tools/list 返回 5 个工具,mock 调用返回清晰错误而不崩溃。
项目结构
D:\Neo\Neo\seedance-mcp\
pyproject.toml
README.md
.gitignore
.mcp.json # 本地专用,已 gitignore
.mcp.example.json # 可安全提交
src/seedance_mcp/
__init__.py
__main__.py # python -m seedance_mcp
server.py # FastMCP + 工具注册
config.py # 环境变量读取 + api_format 推断
client.py # HTTP 客户端 + 响应解析(双格式)
tools.py # 业务逻辑 + 终态处理
safe_path.py # 下载路径清洗
tests/
test_config.py
test_client_payload.py
test_response_parsing.py
test_safe_path.py
test_tools_schema.py # 含 completed 状态回归测试
test_mcp_smoke.py
test_download.py
test_http_requests.py
test_api_format.py # 双格式测试
test_wrapper_calls.py冒烟测试产物
真实 API 冒烟测试会生成 outputs/test_smoke.mp4(文生视频)和 outputs/test_image_to_video.mp4(图生视频)。outputs/ 目录已在 .gitignore 中,可手动删除整个 outputs 目录,或用命令:
Remove-Item -LiteralPath "outputs" -Recurse -ForceAvailable Tools
6 toolsseedance_create_and_waitA
Create a Seedance video task and wait for completion in one call.
Args: prompt: Text description of the video to generate. Required. model: Model ID override. ratio: Aspect ratio, e.g. "16:9". resolution: Resolution, e.g. "720p". duration: Video duration in seconds. camera_fixed: Whether to fix camera movement. image_url: Optional reference image URL. callback_url: Optional callback URL. extra_args: Additional request parameters. interval_seconds: Polling interval (default: SEEDANCE_POLL_INTERVAL). timeout_seconds: Max wait time (default: SEEDANCE_WAIT_TIMEOUT).
Returns: JSON with ok, task_id, status, video_url, error, and raw responses.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| ratio | No | ||
| prompt | Yes | ||
| duration | No | ||
| image_url | No | ||
| extra_args | No | ||
| resolution | No | ||
| callback_url | No | ||
| camera_fixed | No | ||
| timeout_seconds | No | ||
| interval_seconds | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the polling behavior (interval_seconds, timeout_seconds) and return structure. It explains that it waits for completion, which is key behavioral info. However, it doesn’t mention side effects like resource consumption or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is moderately lengthy due to parameter listing, but front-loads the purpose. The Args section is clear and structured. It could be slightly more concise, but it is still efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers purpose, all parameters, and return values. Given the high parameter count and existence of output schema, it is fairly complete. However, it lacks prerequisites, error handling details, or differentiation from siblings.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% (no parameter descriptions in schema), so the description carries the full burden. It provides concise explanations for all 11 parameters, e.g., 'prompt: Text description of the video to generate. Required.' This adds significant value beyond the parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it creates a Seedance video task and waits for completion in one call. This distinguishes it from siblings like seedance_create_video (create only) and seedance_wait_task (wait only).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage as a synchronous alternative to separate create and wait steps, but does not explicitly state when to use this tool versus the siblings. No when-not-to-use or alternative guidance is provided.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seedance_create_videoA
Create a Seedance 2.0 video generation task.
Args: prompt: Text description of the video to generate. Required. model: Model ID override (default: SEEDANCE_MODEL env var). ratio: Aspect ratio, e.g. "16:9". resolution: Resolution, e.g. "720p". duration: Video duration in seconds. camera_fixed: Whether to fix camera movement. image_url: Optional reference image URL. callback_url: Optional callback URL for task completion. extra_args: Additional parameters merged into request body.
Returns: JSON with ok, task_id and raw API response.
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | ||
| ratio | No | ||
| prompt | Yes | ||
| duration | No | ||
| image_url | No | ||
| extra_args | No | ||
| resolution | No | ||
| callback_url | No | ||
| camera_fixed | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full burden. It mentions the return fields (ok, task_id, raw API response) hinting at async behavior but does not explicitly state that the task is asynchronous, requires polling, or has any side effects. Behavioral traits like authentication needs or rate limits are absent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise and well-structured with a brief header and clear bullet list of arguments. The return line is informative. Only minor improvement possible by grouping optional parameters or adding a usage note.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 9 parameters and no annotations, the description covers all parameters but misses broader context: no mention of whether the tool is async, how to handle the returned task_id, or when to use this vs sibling tools. The output schema is not referenced but the description covers return fields.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description fully compensates by explaining each parameter's purpose, examples (e.g., '16:9' for ratio), and defaults (e.g., model from env var). It adds significant value beyond the schema's bare titles.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the purpose: 'Create a Seedance 2.0 video generation task.' with a specific verb and resource. The sibling tool 'seedance_create_and_wait' implies this tool creates without waiting, distinguishing it effectively.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool vs alternatives like 'seedance_create_and_wait' or others. It lacks context for decision-making, such as when to poll vs wait.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seedance_download_videoA
Download a generated video to local disk.
Args: video_url: URL of the video to download. filename: Optional filename (sanitized, .mp4 enforced).
Returns: JSON with ok, local file path and source URL.
| Name | Required | Description | Default |
|---|---|---|---|
| filename | No | ||
| video_url | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses filename sanitization and .mp4 enforcement, plus return format. However, it omits error behavior and whether the tool is read-only or has side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise, with a clear single-sentence purpose followed by structured Args/Returns sections. Every sentence adds value with no redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple download tool, the description covers the essential context: input (URL, optional filename), output (JSON with ok, path, source URL). Sibling tools provide surrounding context. An output schema exists, further reducing the need for return details.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With 0% schema description coverage, the description adds crucial meaning: 'video_url' is explained as URL, and 'filename' is described as optional with sanitization and .mp4 enforcement. This compensates well for the schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Download a generated video to local disk.' It specifies the verb (download), resource (generated video), and destination (local disk). This distinguishes it from sibling tools that handle creation and task management.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage after video generation, but lacks explicit when-to-use, when-not-to-use, or alternatives. No guidance is given beyond the basic action.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seedance_get_configA
Return runtime Seedance MCP config diagnostics (API key masked).
Use this tool to verify which config the running MCP process is using. Returns base_url, model, api_format, download directories, cwd, and masked api_key.
Returns: JSON with runtime config fields. API key is always masked.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description fully carries burden. It reveals that API key is masked and lists returned fields (base_url, model, etc.), offering good insight into behavior. Could mention if any external calls occur, but not required for a local config read.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences plus a bullet list of return fields. No wasted words; every sentence serves a purpose. Front-loaded with core action and key constraint (masked key).
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no parameters and a simple read operation, the description fully covers purpose, use case, and return format. Output schema exists externally, so return description is sufficient.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has zero parameters, so schema coverage is 100% trivially. Description adds significant value by enumerating specific return fields and noting the API key masking, going well beyond the empty schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states verb 'Return' and resource 'runtime Seedance MCP config diagnostics', explicitly masking API key. Distinct from siblings like seedance_create_video or seedance_get_task, which focus on video creation and task status.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
States 'Use this tool to verify which config the running MCP process is using', providing clear context. No explicit exclusions or alternatives needed given the tool's specific diagnostic role.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seedance_get_taskB
Query a Seedance video generation task status.
Args: task_id: The task ID returned by create_video.
Returns: JSON with ok, task_id, status, video_url, error, and raw response.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Describes return fields but doesn't disclose idempotency, error behavior, or rate limits. Without annotations, more behavioral context would be beneficial.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences plus Args/Returns section is concise and front-loaded. No wasted words, though could be slightly more structured.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given one parameter and presence of output schema, description covers purpose and key field. Could note status values or error handling, but overall adequate.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Adds meaning to the single required parameter by specifying it's the ID from create_video, which the schema (0% coverage) lacks. Fully compensates for schema gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states it queries task status, linking to create_video for context. However, it doesn't explicitly differentiate from sibling seedance_wait_task, which may have similar purpose.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Implied usage after create_video, but no explicit when-to-use, when-not-to-use, or alternatives compared to other seedance tools.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
seedance_wait_taskA
Poll a Seedance task until completion or timeout.
Args: task_id: The task ID to poll. interval_seconds: Polling interval in seconds (default: SEEDANCE_POLL_INTERVAL). timeout_seconds: Maximum wait time in seconds (default: SEEDANCE_WAIT_TIMEOUT).
Returns: JSON with ok, task_id, status, video_url, error, and raw response.
| Name | Required | Description | Default |
|---|---|---|---|
| task_id | Yes | ||
| timeout_seconds | No | ||
| interval_seconds | No |
Output Schema
| Name | Required | Description |
|---|---|---|
| result | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Given no annotations, the description carries the full burden of behavioral disclosure. It explains the polling behavior, the role of interval_seconds and timeout_seconds, and the return format (including ok, status, video_url, error). This provides sufficient transparency for an agent to understand tool behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is extremely concise: a one-line purpose statement, followed by a clear parameter list, and a return description. Every sentence adds value, and the information is front-loaded with the core action.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity and the presence of an output schema, the description is fully complete. It covers all inputs, the polling behavior, and the expected return fields (including ok, error). No gaps remain.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
With schema description coverage at 0%, the description fully compensates by explaining each parameter: task_id (task to poll), interval_seconds (polling interval with default from environment), timeout_seconds (max wait). This adds meaning beyond the schema's property names and types.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Poll a Seedance task until completion or timeout.' It uses a specific verb ('poll') and resource ('Seedance task'), and distinguishes from siblings like 'seedance_get_task' (single status check without polling) and 'seedance_create_and_wait' (creates then waits).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. While the purpose implies usage for waiting on tasks, no direct guidance or exclusions are provided. The context of sibling tools suggests differentiation, but the description itself lacks usage instructions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
6 tool updates
v0.1.0- First observed
seedance_create_and_wait - First observed
seedance_create_video - First observed
seedance_download_video - First observed
seedance_get_config - First observed
seedance_get_task - First observed
seedance_wait_task
TDQS
Each tool has a distinct purpose: creating videos (two variants for combined vs. separate steps), downloading, querying status, waiting for completion, and retrieving configuration. No overlap.
All tools follow a consistent 'seedance_verb_noun' pattern (e.g., seedance_create_video, seedance_download_video), making predictions easy.
6 tools cover the essential workflow for a video generation service without being excessive or insufficient.
Covers the main create-poll-download cycle and config diagnostics. Missing a cancel or list operation, but the core lifecycle is well-supported.
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
MCP server for ByteDance Seedance AI video generation
AI image, video, voice and music generation over MCP, routed to Veo 3.1, Seedance 2.0 and more.
Plan, compare, price, generate, and recover AI video from compatible MCP clients.
MCP server for Google Veo AI video generation
Related MCP Servers
- AlicenseAqualityDmaintenanceProvides access to Vidu's video generation models for creating high-quality videos from text, images, and reference content. It enables users to generate creative video content directly within MCP-compatible applications like Claude and Cursor.55MIT
- AlicenseAqualityDmaintenanceEnables video generation through OpenAI's Sora 2 API, allowing users to create, monitor, and manage AI-generated videos. It also provides tools for merging video clips and creating fade animations from static images using FFmpeg.6212MIT
- 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

PixVerse MCPofficial
AlicenseNot gradedqualityFmaintenanceEnables video generation from text, images, and more through MCP-compatible apps like Claude and Cursor.52MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/dpspace2050/seedance-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server