vimax-mcp
The vimax-mcp server provides an interface to an AI-powered video generation pipeline, allowing you to submit, monitor, and manage video creation jobs:
Submit Idea to Video (
submit_idea2video): Initiate a video generation job from a text prompt/idea, with optional style, profile, and user requirements. Returns ajob_idfor async tracking.Submit Script to Video (
submit_script2video): Start a video generation job from a screenplay/script with the same optional parameters. Also returns ajob_idimmediately.Get Job Status (
get_job_status): Poll the current state, progress, and any errors for a specific job using itsjob_id.List Artifacts (
list_artifacts): Enumerate output files produced by a job, filterable by kind:final,frames,intermediate, orall.Cancel Job (
cancel_job): Terminate a running or queued job while preserving its working directory for inspection.Get Quota (
get_quota): View daily usage and limits across chat, image, and video providers (resets at midnight UTC).Health Check: Verify the liveness and operational status of the daemon.
Leverages Google AI APIs (e.g., Veo) for video generation, controlled via the server's tools.
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., "@vimax-mcpgenerate a video from this screenplay about space exploration"
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.
vimax-mcp
Daemon + CLI wrapping ViMax for use across multiple AI coding agents (Claude Code, Codex, Gemini, Kimi, …).
Primary path: REST API + vimax CLI authorized via Bash(vimax:*).
MCP transport still ships in the same process for hosts that can only speak MCP — see Advanced: MCP transport.
Why REST + CLI
docs/plans/2026-05-19-001-feat-api-cli-transport-plan.md walks through the migration. Short version:
ViMax jobs are coarse (one
submitreturns ajob_id, then poll). MCP's typed-schema strength is wasted on a "submit and poll" surface.An always-on MCP server prepays ~80–400 tokens of schema per agent session for a tool used <1000 times in local history. That's a permanent token tax.
A
vimaxshell command can be reproduced from any terminal, debugged withcurl, and shared across hosts that don't speak MCP.
Background: docs/MCP_PROPOSAL.md (the original MCP design + POC data) and ~/projects/html-anything/docs/solutions/agent-tool-architecture-api-mcp-cli.md (the API+CLI empirical case study this repo follows).
Related MCP server: TensorsLab MCP Server
Tools
Tool | Purpose |
| Kick off idea → video. Returns |
| Same, but starting from a screenplay. |
| State + progress (inferred from working_dir contents) + errors. |
| List job output files. |
| Stop a running or queued job; working_dir preserved. |
| Today's used / limit per provider (UTC day, resets at midnight UTC). |
| Daemon liveness probe. |
Global flags: --server URL (default http://127.0.0.1:7801), --json for structured output, --timeout seconds.
REST endpoints under http://127.0.0.1:7801/api/v1/ mirror these one-to-one (e.g. POST /jobs/idea2video, GET /jobs/{job_id}, GET /quota, GET /health). The CLI is a thin wrapper — curl or httpie can drive the same flows.
Requirements
Python 3.12+,
uvA ViMax checkout at
$VIMAX_HOME(defaults to~/projects/ViMax)ViMax already wired with
MINIMAX_API_KEYandGOOGLE_API_KEYenv vars (see ViMax fork's.env.example)
Quickstart
cd ~/projects/vimax-mcp
uv sync
# 1. Run the daemon (REST + MCP SSE on 127.0.0.1:7801).
uv run python -m vimax_mcp.server
# In production, install as a launchd agent — see "Deploy as a launchd agent".
# 2. Install the vimax CLI symlink into ~/.local/bin.
./scripts/install-cli.sh
# Make sure ~/.local/bin is on PATH (the script warns if it isn't).
# 3. Smoke test.
vimax health
vimax quotaOnce the daemon is up and vimax is on PATH, the rest is shell:
vimax submit-idea --idea "a cat on a roof at sunset" --style "Studio Ghibli, warm"
# → job_id: 01HZ8XKQM2A...
vimax status 01HZ8XKQM2A
vimax artifacts 01HZ8XKQM2A --kind finalWire into agents — Claude Code
Drop clients/claude-code.settings.json into ~/.claude/settings.json (or your project's .claude/settings.json):
{
"permissions": {
"allow": ["Bash(vimax:*)"]
}
}That's it. The agent can call any vimax ... subcommand without prompting. Output is human-readable by default; agents typically prefer vimax --json status <id> for structured parsing.
Wire into agents — Codex
If your Codex build supports running shell commands, allow vimax and skip the MCP block entirely.
If you need MCP fallback, append clients/codex.config.toml (or the inline snippet below) to ~/.codex/config.toml:
[mcp_servers.vimax]
command = "uv"
args = [
"run",
"--directory",
"/Users/zcdeng/projects/vimax-mcp",
"python",
"-m",
"vimax_mcp.server",
"--transport",
"stdio",
]Stdio bridging spins up a fresh process per Codex session, so the daemon-side quota / job registry is not shared. Use it for ad-hoc debugging, not concurrent multi-client work.
Wire into agents — Gemini, Kimi, etc.
These tend to inherit Claude Code or Codex config via symlinks. Whichever host shape they wrap, the recommendation is the same: prefer Bash(vimax:*) over MCP.
Environment
Var | Default | Purpose |
|
| Path to ViMax checkout (added to |
|
| Per-job output root |
|
| Persisted daily-quota counter |
|
|
|
|
| HTTP bind host |
|
| HTTP bind port |
|
| Daemon log level |
|
| CLI default daemon URL |
|
| CLI request timeout (seconds) |
|
| Where |
| — | Forwarded to ViMax chat model |
| — | Forwarded to ViMax image/video generators |
Deploy as a launchd agent (recommended on macOS)
./scripts/install-launchd.sh # install or refresh
./scripts/install-launchd.sh status # show launchctl print + log tails
./scripts/install-launchd.sh remove # uninstallThe template at launchd/com.zcdeng.vimax-mcp.plist is rendered into
~/Library/LaunchAgents/com.zcdeng.vimax-mcp.plist with your $HOME
and absolute uv path substituted. The agent runs vimax-mcp in
composite mode (REST at /api/v1 + MCP SSE at /mcp/sse) and
restarts on crash.
Secrets are not stored in the plist. The server loads
$VIMAX_HOME/.env on boot (see vimax_mcp/dotenv.py).
Verify:
curl -s http://127.0.0.1:7801/api/v1/health # → {"status":"ok",...}
vimax health
vimax quota
tail -f ~/projects/ViMax/.working_dir/logs/mcp.{out,err}.logAdvanced: MCP transport
The daemon still exposes MCP over SSE at http://127.0.0.1:7801/mcp/sse
and over stdio (run with --transport stdio). Use these when:
An agent host can only speak MCP and can't shell out (rare).
You want to compare behavior between transports for debugging.
You're migrating from a pre-U2 deployment and need a temporary bridge.
Client templates live in clients/:
File | Where to drop it | When to use |
|
| Recommended — Bash permission for |
|
| Opt-in MCP SSE for hosts that need it |
| append to | MCP stdio fallback for older Codex |
If you were on a pre-U2 deployment whose .mcp.json pointed at
http://127.0.0.1:7801/sse, update the URL to
http://127.0.0.1:7801/mcp/sse — the composite server moved MCP under
a /mcp prefix so REST can own the root.
Tests
uv run pytestSmoke tests cover JobRegistry, quota tracker, artifact scanning, REST handlers, composite-server boot, the CLI parser + output formatter, the shell wrapper + install script, FastMCP tool registration, SSE boot, and a full stdio JSON-RPC handshake. They do not invoke ViMax pipelines or consume Veo / MiniMax quota.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityDmaintenanceEnables programmatic creation, management, and remixing of AI-generated videos using OpenAI's Sora API. Supports video generation with customizable parameters, status monitoring, downloading, and video remixing capabilities.Last updated303MIT
- FlicenseBqualityDmaintenanceEnables AI-powered image and video generation through the TensorsLab API using models like SeeDream and SeeDance. It supports tasks such as creating high-resolution media from text prompts, image-to-video conversion, and monitoring generation status.Last updated9
- Flicense-qualityBmaintenanceEnables Claude to generate AI videos using ViewMax Studio's video generation tools, including prompt and script creation, smart model selection, cost preview, and task status tracking.Last updated
- Alicense-qualityDmaintenanceEnables AI video generation from text prompts, status monitoring, and video management through the Sisif AI Video API.Last updated1MIT
Related MCP Connectors
Create and manage cinematic AI video renders through the Future Video Studio Agent API.
AI video generation via the Vivideo API: auto or manual mode, avatars, voices, brand kits.
Generate, edit and upscale AI video and images from any agent via VicSee.
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/ZCDeng/vimax-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server