Maestro MCP Server
Officialby AceDataCloud
README.md
# Maestro MCP Server
<!-- mcp-name: io.github.AceDataCloud/mcp-maestro -->
Produce complete videos from a natural-language brief with [Maestro](https://studio.acedata.cloud/maestro) through the Ace Data Cloud API. Maestro plans the script, creates or sources media, generates voiceover and music, edits, captions, renders, and returns finished video variants.
## Install
```bash
pip install mcp-maestro
export ACEDATACLOUD_API_TOKEN="your-token"
mcp-maestro
```
Get an API token from [platform.acedata.cloud](https://platform.acedata.cloud/console/applications).
For a hosted connection, use `https://maestro.mcp.acedata.cloud/mcp`. It accepts a direct Ace Data Cloud Bearer token and supports OAuth sign-in.
## Tools
| Tool | Purpose |
|---|---|
| `maestro_create_video` | Create a video or run `remix`, `edit`, or `extend` on an earlier task |
| `maestro_get_task` | Read progress, status, and final language variants for one task |
| `maestro_list_tasks` | List the authenticated account's recent tasks, newest first |
## Example
Ask an MCP client:
> Create a 45-second 16:9 English product launch video from this product photo. Use an editorial style and a documentary voice.
The tool returns a `task_id` immediately. Query that ID until `status` is `succeeded` or `failed`. Successful tasks expose videos in `response.data.variants`.
To inspect existing task history without creating a video, call `maestro_list_tasks`. It accepts a `limit` from 1 to 100 and optional exclusive `created_at_min` / `created_at_max` Unix timestamp bounds. The returned `items` honor those filters; `count` remains the authenticated account's total visible task count.
## Production contract
Maestro provides the complete capability set on every request: all actions and scenarios, 5–300 seconds, up to 4 languages, and 1080p/30fps output. The base price is 0.60 Credits per delivered second. Avatar uses a 1.15× scenario multiplier, drama uses 1.35×, and each additional delivered language adds 6 Credits. Failed tasks and task polling are free.
To revise an existing result, call `maestro_create_video` with an iteration action and the prior task ID:
```json
{
"prompt": "Keep the visuals but tighten the first 10 seconds and use a warmer voice.",
"action": "edit",
"ref_task_id": "previous-task-id"
}
```
## MCP Client Configuration
```json
{
"mcpServers": {
"maestro": {
"command": "uvx",
"args": ["mcp-maestro"],
"env": {
"ACEDATACLOUD_API_TOKEN": "your-token"
}
}
}
}
```
## Development
```bash
pip install -e ".[dev,test,release]"
pytest --cov=core --cov=tools
ruff check .
ruff format --check .
mypy core tools main.py
python -m build
```
See the [Maestro API documentation](https://platform.acedata.cloud/documents/maestro) for billing and response details.
## Documentation
<!-- canonical-documentation -->
[Documentation](https://platform.acedata.cloud/documents/maestro)
TDQS
A4.1/5.0
Scored across 3 tools
Disambiguation5/5
Each tool covers a distinct operation: listing tasks, creating a video, and retrieving task status/outputs. There is no overlap between creating, listing, and fetching a single task.
Naming Consistency5/5
All tool names follow the same verb_noun pattern with snake_case: list_tasks, create_video, get_task. The naming is uniform and predictable across the set.
Tool Count4/5
Three tools is a minimal but valid set for the video creation workflow. The count is slightly low, but each tool is necessary for the core create-monitor-retrieve flow.
Completeness4/5
The surface covers the full lifecycle for a video task: create, list, and get results. Minor gaps exist such as cancel/delete or updating task parameters, but the primary workflow is fully supported.
Maintenance
ActivityActive
ResponsivenessNo issues