Gives your agent a single interface for building Sora, Gemini Veo, xAI/Grok, and Seedance video generation payloads without burning credits. Every call is dry-run by default: you get the exact JSON the tool would send to each provider, reshaped for their endpoint, before any live API call happens. The MCP surfaces five tools including connection_status, privacy_audit, build_payload, and generate. Useful when you want Claude or Cursor to prototype vertical video workflows across multiple providers without accidentally spending money, then flip a live flag only when you're ready to render.
⭐ If this agent-first tool helps your workflow, please star the repo. Stars make this tooling easier for other builders to discover and help Delx keep shipping open infrastructure.
🧱 Part of the Delx agent stack — 15 open-source MCP servers across body, reach and coordination.
Provider-neutral short-form AI video toolkit for agents. It gives Codex, Claude, Cursor, Hermes, OpenClaw and other MCP clients one interface for building dry-run payloads and, when explicitly enabled, generating vertical video through Sora/OpenAI, Gemini Veo, xAI/Grok and Seedance/PiAPI-style providers.
Use it when an agent needs one safe interface for prompt-to-video payload validation and optional paid generation across multiple providers.
Video generation can be expensive and prompt-sensitive. This package makes agents start with safe steps:
--live or SHORT_VIDEO_DRY_RUN=false before provider callsnpm install -g short-video-agent-kit
Or run directly:
npm exec --yes --package=short-video-agent-kit -- short-video-agent-kit doctor
No API key needed to try it — generation is dry-run by default, so the kit returns the exact provider-neutral plan it would send without spending a credit.
Build a Sora plan for an 8-second vertical teaser:
short-video-agent-kit generate \
--provider openai_sora \
--prompt "Vertical 8-second product teaser for a minimalist water bottle, soft studio light, slow dolly-in" \
--output ./output/teaser.mp4
Real output (no provider call, no credits spent):
{
"ok": true,
"dry_run": true,
"next_step": "Pass --live or set SHORT_VIDEO_DRY_RUN=false to call the provider API.",
"provider": "openai_sora",
"endpoint": "POST /v1/videos",
"payload": {
"model": "sora-2",
"prompt": "Vertical 8-second product teaser for a minimalist water bottle, soft studio light, slow dolly-in",
"seconds": "8",
"size": "720x1280"
}
}
Same prompt, different provider — the plan re-targets the endpoint and parameter shape for you. payload returns just the plan (no dry_run wrapper):
short-video-agent-kit payload --provider gemini_veo --prompt "Same teaser, 9:16, cinematic"
{
"provider": "gemini_veo",
"endpoint": "POST /models/{model}:predictLongRunning",
"payload": {
"instances": [
{
"prompt": "Same teaser, 9:16, cinematic"
}
],
"parameters": {
"aspectRatio": "9:16",
"durationSeconds": 8
}
}
}
Check which providers are wired up (keys are detected, never printed):
short-video-agent-kit doctor
{
"ok": false,
"dry_run": true,
"providers": {
"openai_sora": { "configured": false, "env_keys": ["OPENAI_API_KEY"], "models": ["sora-2"] },
"gemini_veo": { "configured": false, "env_keys": ["GEMINI_API_KEY", "GOOGLE_API_KEY"], "models": ["veo-3.1-fast-generate-preview"] },
"xai_grok": { "configured": false, "env_keys": ["XAI_API_KEY"], "models": ["grok-imagine-video", "grok-imagine-image"] },
"seedance_piapi": { "configured": false, "env_keys": ["PIAPI_KEY", "SEEDANCE_API_KEY"], "models": ["seedance-2-fast-preview"] }
},
"output_dir": "./output",
"next_steps": [
"Set one provider key: OPENAI_API_KEY, GEMINI_API_KEY, XAI_API_KEY or PIAPI_KEY."
]
}
When you are ready to actually render, set a provider key and re-run generate with --live (or SHORT_VIDEO_DRY_RUN=false).
short-video-agent-kit manifest --client codex
short-video-agent-kit doctor
short-video-agent-kit privacy-audit
short-video-agent-kit payload --provider gemini_veo --prompt-file prompt.txt
short-video-agent-kit generate --provider openai_sora --prompt "Vertical product teaser" --output ./output/teaser.mp4
short-video-agent-kit generate --provider openai_sora --prompt-file prompt.txt --output ./output/teaser.mp4 --live
Supported providers:
openai_soragemini_veoxai_grokseedance_piapishort-video-mcp
HTTP transport:
SHORT_VIDEO_MCP_TRANSPORT=http short-video-mcp
Hermes-style config:
mcp_servers:
short_video:
command: npx
args: ["-y", "short-video-agent-kit"]
sampling:
enabled: false
Recommended first calls:
short_video_connection_statusshort_video_privacy_auditshort_video_build_payloadshort_video_generate| Tool | Purpose |
|---|---|
short_video_agent_manifest | Install/runtime guidance for Codex, Claude, Cursor, Hermes and OpenClaw |
short_video_connection_status | Provider readiness without API keys |
short_video_privacy_audit | Prompt, output and reference-asset boundaries |
short_video_build_payload | Provider-specific payload without paid generation |
short_video_generate | Dry-run by default, live only when explicitly requested |
Use short-video-agent-kit. First call short_video_connection_status and short_video_privacy_audit.
Build the payload before generation. Only set live=true if I explicitly confirm a paid provider call.
Copy .env.example to .env and fill only the provider keys you plan to use. .env, output/ and .agent-data/ are ignored by Git.
--live, MCP live=true, or SHORT_VIDEO_DRY_RUN=false.npm install
npm test
npm run check
SHORT_VIDEO_DRY_RUNSet to false only when the agent should call paid video providers. Defaults to dry-run behavior.
OPENAI_API_KEYsecretOptional API key for OpenAI/Sora provider calls.
GEMINI_API_KEYsecretOptional API key for Gemini Veo provider calls.
XAI_API_KEYsecretOptional API key for xAI/Grok provider calls.
io.github.ericm1018/skillfm-llm-cost-optimizer-openai-anthropic-usage
io.github.mikerawsonnz/llm-orchestration-agent
io.github.mikerawsonnz/authenticated-llm-agent
labforgedev/copilot-memory-mcp
csoai-org/agent-prompt-injection-firewall-mcp
io.github.mikerawsonnz/authenticated-multi-llm-agent