Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

video-agent-mcp

Generate Remotion scene components concurrently from an existing explainer script. The server reads project files, sends scene prompts through the Claude Agent SDK, and writes TSX plus a scene index. Use the explainer server and upstream renderer to prepare inputs, preview scenes, and render the video.

Two tools are available: agent_generate_scenes and agent_generate_single_scene.

Source-code references below target the immutable v0.8.0-rc.5 source tag. This companion's release version is 0.2.2rc3; check PyPI availability before installation. For the exact source and bundled README of a registry version, use its source archive on PyPI.

Install and configure

You need Python 3.11 or newer, uv, an existing explainer project, and supported Agent SDK authentication. The SDK bundles its CLI; follow its authentication guide for Anthropic API or supported cloud-provider credentials.

From this package directory in a source checkout:

uv sync --locked --extra dev
uv run --locked video-agent-mcp

The published wrapper can run directly from PyPI as a stdio MCP server. Add this entry to your client's mcpServers configuration:

{
  "video-agent": {
    "command": "uvx",
    "args": ["video-agent-mcp==0.2.2rc3"]
  }
}

The core npm installer does not register this companion.

Configuration comes from the process environment and ~/.config/video-research-mcp/.env; nonempty process values take precedence. Use the same project location as the explainer server:

EXPLAINER_PATH=/absolute/path/to/video_explainer
# Optional: projects outside EXPLAINER_PATH/projects
EXPLAINER_PROJECTS_PATH=/absolute/path/to/projects
AGENT_CONCURRENCY=5
AGENT_TIMEOUT=300
AGENT_MAX_TURNS=1

EXPLAINER_PATH is the upstream checkout root. Projects default to its projects/ directory. If an older deployment used a projects-root value for EXPLAINER_PATH, preserve that directory through EXPLAINER_PROJECTS_PATH. The override also works when EXPLAINER_PATH is unset.

AGENT_MODEL overrides the default in config.py. Check the official model overview for a supported ID. Restart the server after configuration changes.

First scene generation

  1. Prepare a project with script/script.json containing a scenes list. The explainer companion can create the project and run the script step. Scene titles must produce unique component filenames and registry keys.

  2. If exact speech timing matters, generate voiceover first. Optional voiceover/manifest.json supplies per-scene word timestamps.

  3. After authorizing provider usage, call the MCP tool:

    agent_generate_scenes(project_id="my-video", concurrency=3)
    
  4. Inspect both scenes and errors. Successful components appear in scenes/ and index.ts; failed scenes remain in the result. Retry a specific failed scene with:

    agent_generate_single_scene(project_id="my-video", scene_number=2)
    
  5. Review the TSX, typecheck it, and preview it in the upstream Remotion project before rendering. A generated component is not proof of valid TypeScript, visual quality, or factual accuracy.

Batch generation refuses to overwrite existing top-level TSX unless force=True. The single-scene tool regenerates its target without a force flag. Preserve a copy before replacing a scene. A single-scene success rebuilds the index from scene files present on disk, so inspect retained files as well as new output.

Execution limits and failures

Queries run with bounded concurrency from 1 to 10, a per-query timeout, and a turn limit. Pass concurrency explicitly for a batch; its tool default is 5. AGENT_TIMEOUT defaults to 300 seconds and must be at least 30.

Child queries have no built-in tools or MCP servers and load no user/project settings. They override the child CLAUDECODE guard without changing the parent process environment. A terminal SDK success and extractable code are required before a scene response is written as successful output. Shared styles and the reference component are written before queries begin, so those files alone do not establish scene completion.

On partial failure, keep the successful scenes and inspect the reported errors before retrying only the affected scene. Each retry incurs provider usage.

Development

From this package directory:

uv run --locked pytest tests/ -q
uv run --locked ruff check src/ tests/
uv build

Tests mock SDK queries and do not generate paid content. The lockfile records the development environment; pyproject.toml defines supported dependency ranges. See the root contribution guide for repository workflow and publishing guide for release verification.

Metadata

Release files for video-agent-mcp 0.2.2rc3

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

Source distribution (sdist)

Source distribution for video-agent-mcp 0.2.2rc3
File Size Uploaded Provenance Actions
video_agent_mcp-0.2.2rc3.tar.gz 123.7 kB Without provenance Details for video_agent_mcp-0.2.2rc3.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for video-agent-mcp 0.2.2rc3
File Interpreter ABI Platform Actions
video_agent_mcp-0.2.2rc3-py3-none-any.whl Python 3 none any Details for video_agent_mcp-0.2.2rc3-py3-none-any.whl

Total release size: 161.3 kB

Release files / video_agent_mcp-0.2.2rc3.tar.gz

Download URL video_agent_mcp-0.2.2rc3.tar.gz
Size 123.7 kB
Tags Source
SHA-256 checksum
How to use checksums
ddc7ee90e06c5a8f36e5b51cc575764d0519d4c2fcdcbeea7752146ef2ade35d
BLAKE2b-256 checksum
How to use checksums
f077c4685311a89c3a6f57d4371de0eecb05eff862d9565ec0101d85c3e6c1ec
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Release files / video_agent_mcp-0.2.2rc3-py3-none-any.whl

Download URL video_agent_mcp-0.2.2rc3-py3-none-any.whl
Size 37.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
8a2bc8be7efa8bfd3d6226693da0d129fa07fb8964f160301e5ef9f5951217ca
BLAKE2b-256 checksum
How to use checksums
195590e78a85043433abd27d43592edfa4cabd47cea89e330cb74c0f715d5c9a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.8

Security for video-agent-mcp 0.2.2rc3

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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