Skip to main content
Glama

Seedance Polza MCP Server

mcp-name: io.github.ivanantigravity-lgtm/seedance-polza-mcp-server

MCP сервер для генерации видео через bytedance/seedance-2 (и другие Seedance-модели) на Polza.ai.

Что умеет

  • text-to-video и image-to-video генерация

  • чтение статуса генерации

  • polling до готовности видео

  • возвращает компактный результат (id, статус, url, usage, warnings)

Related MCP server: Seedance MCP

Что нужно для установки

Поставить uv:

curl -LsSf https://astral.sh/uv/install.sh | sh

Установка за 2 минуты (через PyPI + uvx)

Claude Code / VS Code

Создай .mcp.json в корне проекта:

{
  "mcpServers": {
    "seedance-polza": {
      "command": "uvx",
      "args": ["seedance-polza-mcp-server@latest"],
      "env": {
        "POLZA_AI_API_KEY": "your-polza-api-key-here"
      }
    }
  }
}

Перезапусти Claude Code.

Claude Desktop (macOS)

Файл ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "seedance-polza": {
      "command": "uvx",
      "args": ["seedance-polza-mcp-server@latest"],
      "env": {
        "POLZA_AI_API_KEY": "your-polza-api-key-here"
      }
    }
  }
}

Claude Desktop (Windows)

Файл: %APPDATA%\Claude\claude_desktop_config.json. Содержимое идентичное.

Как проверить, что работает

После перезапуска Claude попроси:

Сделай через seedance короткое видео: закат над океаном, 16:9, 5 секунд

Claude должен вызвать seedance_create_video и дождаться готовности через seedance_wait_for_completion.

Tools

  • seedance_create_video — запустить генерацию

  • seedance_get_status — проверить статус по id

  • seedance_wait_for_completion — ждать polling-ом до готовности

  • seedance_model_guide — краткая памятка по параметрам

Дефолты

  • модель: bytedance/seedance-2

  • polling interval: 8 секунд

  • max wait: 900 секунд

Переменные окружения

Переменная

Обязательная

По умолчанию

POLZA_AI_API_KEY

да

POLZA_BASE_URL

нет

https://polza.ai/api/v1

SEEDANCE_MODEL

нет

bytedance/seedance-2

SEEDANCE_POLL_INTERVAL

нет

8

SEEDANCE_MAX_WAIT

нет

900

LOG_LEVEL

нет

INFO

Поддерживаемые входные параметры

Базовые параметры под видео:

  • prompt

  • aspect_ratio (16:9, 9:16, 1:1, 4:3, 3:4, 21:9 и т.д.)

  • resolution (480p, 720p, 1080p)

  • duration (5s, 10s, 15s — зависит от модели)

  • images — референсы для image-to-video

  • videos — референсы для video-to-video

  • seed

  • async

  • user

Формат images / videos:

{ "type": "url", "data": "https://example.com/file.png" }

или

{ "type": "base64", "data": "data:image/png;base64,..." }

Что возвращает сервер

Сервер не делает лишней магии. Он возвращает:

  • id генерации

  • status

  • model

  • usage (в том числе cost_rub)

  • url результата, если видео готово

  • warnings / error при проблемах

Локальная разработка

git clone https://github.com/ivanantigravity-lgtm/seedance-polza-mcp-server.git
cd seedance-polza-mcp-server
uv sync
POLZA_AI_API_KEY=your_key uv run python -m seedance_polza_mcp_server.server

Важно

Этот сервер не гоняет live preview и не тратит токены сам по себе.
Генерация запускается только по явному вызову tool.

Лицензия

MIT.

Available Tools

4 tools
seedance_create_videoC

Create a Seedance video generation through Polza Media API.

ParametersJSON Schema
NameRequiredDescriptionDefault
seedNo
userNo
modelNo
soundNo
imagesNo
promptYes
videosNo
durationNo
async_modeNo
resolutionNo
aspect_ratioNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

C2.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action without mentioning asynchronous behavior, return type, authentication, or side effects, leaving the agent uncertain about what to expect.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is short but under-specified; it provides no useful information beyond a basic purpose. The single sentence does not earn its place because it simply restates the tool's name in a slightly longer form without adding actionable details.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness1/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With 11 parameters and no annotations, the description is grossly incomplete. It does not explain how to construct a request, what the output represents, or the relationship between this tool and the sibling tools. An output schema exists, but the description lacks critical context for execution.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0% and the description mentions no parameters. The 11 parameters are entirely unexplained, so the agent cannot know what values to provide beyond the prompt being required by the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('Create') and resource ('Seedance video generation'), making the tool's primary function clear. It is distinguishable from sibling tools that focus on model guidance, status retrieval, and completion waiting, though it does not explicitly contrast them.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus the sibling tools, no prerequisites are mentioned, and there is no context about required parameters beyond the schema. The description offers no 'when' or 'when not' usage instructions.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

seedance_get_statusB

Get current status of a media generation by ID.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_idYes

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.3/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden but only states the obvious. It does not disclose any behavioral traits such as whether the status is returned immediately, possible status values, or behavior for invalid IDs.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no unnecessary words. It effectively communicates the core action and target.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple with one parameter and an output schema present, so the return value is covered by schema. However, the description lacks usage context and behavioral nuances, making it minimally viable but not rich.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has zero description coverage for media_id, but the description's phrase 'by ID' clarifies that media_id is the identifier of the media generation. However, it adds no further detail about format, constraints, or required format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description uses a specific verb ('get') and resource ('status of a media generation') with clear scope ('by ID'). It distinguishes from siblings like seedance_create_video and seedance_wait_for_completion by focusing on current status retrieval.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No guidance is provided on when to use this tool versus alternatives like seedance_wait_for_completion. The description only states what it does, not the context or conditions for use.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

seedance_model_guideA

Return a short practical guide for using Seedance through Polza.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

A3.9/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the burden. 'Return' implies a read-only operation, but the description discloses no other behavioral details (e.g., authentication requirements, rate limits, or what the guide contains). It does not contradict annotations (none exist).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with no filler or redundancy. It directly states the action and object, making it appropriately concise.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool is simple (0 parameters) and has an output schema, so the description need not explain return values. However, it lacks context on when to use this tool relative to the sibling tools, making it slightly incomplete for an agent deciding when to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With zero parameters, the input schema is empty and the description need not explain parameter semantics. The baseline of 4 applies because there are no parameters to document.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific verb ('Return') and resource ('guide for using Seedance through Polza'), distinguishing it from the sibling tools that create videos, get status, or wait.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The phrase 'short practical guide' implies usage for obtaining instructions, but the description provides no explicit guidance on when to use this tool versus alternatives, nor does it state exclusions or prerequisites.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

seedance_wait_for_completionB

Poll media status until completed, failed, cancelled, or timeout.

ParametersJSON Schema
NameRequiredDescriptionDefault
media_idYes
interval_secondsNo
max_wait_secondsNo

Output Schema

ParametersJSON Schema
NameRequiredDescription
resultYes

TDQS

B3.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must cover behavioral traits. It discloses the polling action and termination conditions, but does not mention whether the call blocks synchronously, what happens on timeout (e.g., exception vs status return), or any rate limits or 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.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, concise sentence with no extraneous wording. It is front-loaded and efficient, though it omits important details that could be added without becoming bloated.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With three parameters, zero schema documentation, no annotations, and an output schema that only covers return values, the description is insufficient. It fails to explain parameter semantics, usage context, and how this tool relates to siblings like get_status.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, and the description does not mention any of the three parameters. media_id, interval_seconds, and max_wait_seconds are left completely unexplained, leaving the agent without necessary context to invoke the tool correctly.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool poll media status until a terminal state (completed, failed, cancelled, or timeout). This distinguishes it from sibling tools like seedance_get_status (single status check) and seedance_create_video (video creation).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies usage after initiating a video creation, but does not explicitly contrast with seedance_get_status for one-off checks or state when this tool should be preferred. No exclusions or alternatives are mentioned.

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.

  1. 4 tool updatesv0.1.1
    • First observedseedance_create_video
    • First observedseedance_get_status
    • First observedseedance_model_guide
    • First observedseedance_wait_for_completion

TDQS

B3.4/5.0

Scored across 4 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: guide for instructions, create for initiating generation, get_status for one-time status check, and wait_for_completion for polling until done. No overlap or ambiguity between them.

Naming Consistency5/5

All tool names follow a consistent pattern: 'seedance_' prefix followed by verb_noun (model_guide, create_video, get_status, wait_for_completion). The naming is uniform and predictable.

Tool Count5/5

With only 4 tools, the server is tightly scoped for its purpose of video generation via Seedance. Each tool is essential and there are no redundant or unnecessary additions, making the count appropriate.

Completeness4/5

The server covers the core lifecycle of video generation: guidance, creation, status checking, and waiting for completion. While a cancel or list operation could be imagined, they are not essential for the primary workflow, so the set is nearly complete.

Maintenance

ActivityInactive
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers