Short Video Agent Kit
This MCP server provides an agent-first toolkit for generating short-form AI videos across multiple providers (OpenAI Sora, Gemini Veo, xAI Grok, Seedance/PiAPI) with a dry-run-by-default safety approach. You can:
Get an agent manifest (
short_video_agent_manifest) with machine-readable install, provider, runtime, and safety guidance tailored to clients like Codex, Claude, Cursor, Hermes, and OpenClaw.Check provider connection status (
short_video_connection_status) to see which providers are configured and ready, without exposing API keys, and confirm dry-run mode.Run a privacy audit (
short_video_privacy_audit) covering prompts, reference assets, output paths, and API keys.Build provider-specific payloads (
short_video_build_payload) with prompt, duration, aspect ratio, resolution, size, model, negative prompt, reference images, and output path—without making paid calls.Generate short-form vertical videos (
short_video_generate) with the same parameters, using live generation only when explicitly enabled (live=trueorSHORT_VIDEO_DRY_RUN=false); otherwise returns a safe dry-run plan.Operate as a CLI tool or streamable HTTP server, with JSON or Markdown response formats.
⭐ 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.
HTTP (v2 stateless)
Default is stdio. Optional Streamable HTTP — no session id, JSON responses, loopback only:
npx -y -p short-video-agent-kit short-video-mcp --http
# GET http://127.0.0.1:3033/health
# POST http://127.0.0.1:3033/mcp (sessionless)Env: SHORT_VIDEO_MCP_HOST, SHORT_VIDEO_MCP_PORT, SHORT_VIDEO_MCP_TRANSPORT=http.
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.
Related MCP server: Eversince MCP Server
Why It Is Agent-First
Video generation can be expensive and prompt-sensitive. This package makes agents start with safe steps:
inspect provider readiness
return privacy boundaries
build payloads without spending credits
require
--liveorSHORT_VIDEO_DRY_RUN=falsebefore provider callskeep prompts and outputs in local user-controlled paths
Install
npm install -g short-video-agent-kitOr run directly:
npm exec --yes --package=short-video-agent-kit -- short-video-agent-kit doctorQuickstart
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.mp4Real 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).
CLI
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 --liveSupported providers:
openai_soragemini_veoxai_grokseedance_piapi
MCP
short-video-mcpHTTP transport:
SHORT_VIDEO_MCP_TRANSPORT=http short-video-mcpHermes-style config:
mcp_servers:
short_video:
command: npx
args: ["-y", "short-video-agent-kit"]
sampling:
enabled: falseRecommended first calls:
short_video_connection_statusshort_video_privacy_auditshort_video_build_payloadshort_video_generate
Agent Surfaces
Tool | Purpose |
| Install/runtime guidance for Codex, Claude, Cursor, Hermes and OpenClaw |
| Provider readiness without API keys |
| Prompt, output and reference-asset boundaries |
| Provider-specific payload without paid generation |
| Dry-run by default, live only when explicitly requested |
Copy-Paste Agent Prompt
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.Configuration
Copy .env.example to .env and fill only the provider keys you plan to use. .env, output/ and .agent-data/ are ignored by Git.
Safety Model
Dry-run is the default.
API keys are never returned by tools.
Paid generation requires
--live, MCPlive=true, orSHORT_VIDEO_DRY_RUN=false.Reference images must be user-owned or licensed.
Outputs are written to local paths controlled by the user.
Development
npm install
npm test
npm run check📧 Contact & Support
📨 support@delx.ai — general questions, integration help, partnerships
🐛 Bug reports / feature requests — GitHub Issues
🐦 Updates — @delx369 on X
🌐 Site — wellness.delx.ai
Available Tools
5 toolsshort_video_agent_manifestShort Video Agent ManifestCRead-onlyIdempotent
Machine-readable install, provider, runtime and safety guidance for agents.
| Name | Required | Description | Default |
|---|---|---|---|
| client | No | generic | |
| response_format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is clear. The description adds the context of being machine-readable but does not elaborate on behavioral traits beyond what annotations cover, such as side effects or response characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise (one short sentence), but it lacks essential details about parameters and usage. It is front-loaded but not fully informative, earning a middle score for conciseness.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 2 optional parameters, no output schema, and annotations that cover safety, the description is incomplete. It fails to explain the purpose of parameters or provide enough context for an agent to use the tool effectively without additional knowledge.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The description does not mention the parameters 'client' or 'response_format' at all. With 0% schema description coverage, the description completely fails to add meaning beyond the schema, leaving an agent without guidance on how to use these optional parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it provides machine-readable install, provider, runtime, and safety guidance, which is specific. However, it lacks an explicit verb like 'get' or 'retrieve', and does not directly distinguish from sibling tools, though the resource is sufficiently clear.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives like short_video_build_payload or short_video_privacy_audit. No when-to-use or when-not-to-use information is present.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
short_video_build_payloadBuild Short Video PayloadBRead-onlyIdempotent
Build a provider-specific request payload without calling the paid provider API.
| Name | Required | Description | Default |
|---|---|---|---|
| live | No | ||
| size | No | 720x1280 | |
| model | No | ||
| prompt | Yes | ||
| provider | No | openai_sora | |
| image_url | No | ||
| resolution | No | 720p | |
| output_path | No | ||
| aspect_ratio | No | 9:16 | |
| negative_prompt | No | ||
| response_format | No | json | |
| duration_seconds | No | ||
| person_generation | No | ||
| reference_image_urls | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds that no provider API is called, reinforcing safety. However, no extra behaviors (e.g., error handling, output format) are disclosed, so the description adds moderate value.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence with no redundancy or filler. It conveys the core functionality efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool has 14 parameters, no output schema, and no parameter descriptions. The description does not explain what the payload is, how it varies by provider, or what to do with the output. The tool is complex, yet the description provides barely any context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, yet the description provides no explanation of parameters. With 14 parameters including enums and defaults, the absence of parameter semantics leaves the agent with no guidance beyond schema types and defaults. This is a critical gap.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action (build) and the resource (provider-specific request payload). It also specifies that no provider API call is made, which sets it apart. However, it does not explicitly differentiate from sibling tools like short_video_generate, though the implication is strong.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies use when preparing a payload without executing it, but provides no explicit guidance on when to use versus alternatives (e.g., short_video_generate). It does not mention prerequisites, exclusions, or context.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
short_video_connection_statusShort Video Connection StatusBRead-onlyIdempotent
Check configured providers and dry-run mode without exposing API keys.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already indicate read-only and idempotent behavior. The description adds the note about not exposing API keys, which is helpful but does not significantly extend beyond the annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence with no filler, efficiently communicates the core purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, and the description does not describe what the response contains. Given sibling tools like short_video_agent_manifest, more context on when to use this specific check would be beneficial.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema has one parameter with enum and default, which is self-explanatory. Description does not explain the parameter or its values, and schema description coverage is 0%, so the description misses an opportunity to add value.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool checks configured providers and dry-run mode, which is specific and distinct from sibling tools like short_video_generate or short_video_build_payload.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool vs. alternatives (e.g., when a status check is needed rather than generation or audit). No prerequisites or exclusions mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
short_video_generateGenerate Short VideoB
Generate one vertical video. Returns a dry-run payload unless live=true or SHORT_VIDEO_DRY_RUN=false.
| Name | Required | Description | Default |
|---|---|---|---|
| live | No | ||
| size | No | 720x1280 | |
| model | No | ||
| prompt | Yes | ||
| provider | No | openai_sora | |
| image_url | No | ||
| resolution | No | 720p | |
| output_path | No | ||
| aspect_ratio | No | 9:16 | |
| negative_prompt | No | ||
| response_format | No | json | |
| duration_seconds | No | ||
| person_generation | No | ||
| reference_image_urls | No |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations indicate readOnlyHint=false and destructiveHint=false, and the description adds the key behavioral trait that it returns a dry-run payload unless live=true. This is helpful but does not elaborate on other side effects, permissions, or limitations. No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very short (two sentences) with no wasted words, which is good for conciseness. However, given the tool's complexity (14 parameters), it sacrifices necessary detail. It could be restructured to front-load the key behavior while adding parameter hints.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With 14 parameters, no output schema, and no parameter descriptions, the description is grossly incomplete. It does not explain response format, provider options, size constraints, or how to use the generated payload. For a video generation tool, this leaves major gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, meaning the schema provides no parameter descriptions. The description only explains the 'live' parameter and env var, ignoring the other 13 parameters. For a tool with many parameters including enums, this is insufficient to guide correct usage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it generates a vertical video, providing a specific verb and resource. However, it does not differentiate from sibling tools like short_video_build_payload or short_video_agent_manifest, which may have overlapping purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains the dry-run behavior and how to enable live generation via 'live=true' or env var, offering some usage context. However, it gives no guidance on when to use this tool versus siblings, nor any prerequisites or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
short_video_privacy_auditShort Video Privacy AuditCRead-onlyIdempotent
Return prompt, asset, output and provider-key safety boundaries.
| Name | Required | Description | Default |
|---|---|---|---|
| response_format | No | json |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, so the agent knows this is a safe, non-destructive read operation. The description adds that it returns safety boundaries but does not provide additional behavioral context such as response format or error behavior. With strong annotations, a 3 is appropriate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise (one sentence) but its structure is somewhat awkward; the phrase 'safety boundaries' is not clarified, and the list of items is run-on. It earns its place but could be more precise.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with only one optional parameter and no output schema, the description could be more complete by mentioning the response_format parameter and the structure of the returned safety boundaries. Currently, the agent must guess the return format.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has one parameter (response_format) with 0% description coverage, and the tool description does not mention or explain this parameter, leaving the agent to infer its purpose from the enum values alone. This is insufficient.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a verb ('Return') and identifies the resource ('safety boundaries' for prompt, asset, output, provider-key), distinguishing it from sibling tools that deal with manifest, payload, connection, and generation. However, the term 'safety boundaries' is somewhat ambiguous, leaving some room for interpretation.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool versus the sibling tools; the context is implied by the tool name but not stated.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
TDQS
Each tool targets a distinct aspect of short video generation: configuration, payload construction, connectivity, generation, and privacy. No overlapping purposes.
All tools share the 'short_video_' prefix and follow a noun/verb_noun pattern, though 'generate' is a lone verb while others have two words. Minor deviation but overall clear.
5 tools is well-scoped for a focused agent kit covering setup, execution, and safety. No unnecessary tools.
Covers core lifecycle: metadata, payload, connectivity, generation, and privacy. Missing post-generation actions (e.g., list, delete) but acceptable for an agent kit.
Maintenance
Related MCP Connectors
FFmpeg as a service for AI agents: typed video editing tools, async jobs, downloadable outputs.
Agentic video editing on real footage: cut, caption, reframe, score, and export at full quality.
Video, audio, and image processing for AI agents: convert, transcribe, upscale - 150+ operations.
AI image, video, voice and music generation over MCP, routed to Veo 3.1, Seedance 2.0 and more.
Related MCP Servers
- AlicenseAqualityCmaintenanceByteDance Seedance AI video generation with text-to-video, image-to-video, multiple models (1.5 Pro/1.0 Pro/Lite), synchronized audio, and flexible resolutions up to 1080p.718MIT

Eversince MCP Serverofficial
AlicenseNot gradedqualityCmaintenanceA creative agent that plans and executes across image, video, and audio. Uses 30+ tools, orchestrates 20+ AI models, and does agentic timeline editing.MIT- AlicenseNot gradedqualityDmaintenanceEnables AI agents to edit videos through natural language, providing tools for timeline editing, audio management, rendering, and more.2MIT
- FlicenseAqualityBmaintenanceEnables AI agents to edit video using text-based proxies, motion graphics via Hyperframes, and advanced FFmpeg rendering, turning any LLM IDE into a professional video editor.4
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/davidmosiah/short-video-agent-kit'
If you have feedback or need assistance with the MCP directory API, please join our Discord server