Install
$ agentstack add skill-mintii-labs-ozor-skills-ozor-generate ✓ scanned · ✓ verified — works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
About
Ozor Generate (Text-to-Video)
End-to-end video generation on Ozor.ai using the mcp__ozor__* tools. This skill takes a short creative brief and returns a finished, exported, shareable video — not just a prompt.
When to use
Use this skill when the user wants to actually produce a video from a short text idea. Signals:
- "Make a video about ..."
- "Generate a launch video for ..."
- "Create a 30-second explainer about ..."
- "Spin up an ad for our new feature ..."
- "Render a video that says ..."
Do NOT use this skill when:
- The user has a document, PDF, PPTX, DOCX, deck, or file → use
ozor-document-video - The user gives a URL / landing page → use
ozor-url-to-video - The user just wants help writing an Ozor prompt without generating → use
ozor-video-best-practices - The user wants to manage existing videos → use
ozor-video-library
Required MCP tools
This skill assumes the Ozor MCP is connected. The tools are:
mcp__ozor__generate_video— kicks off a text-to-video jobmcp__ozor__wait_for_job— blocks until the agent finishes building the projectmcp__ozor__export_video— starts the rendermcp__ozor__wait_for_export— blocks until the render is ready, returns URLsmcp__ozor__get_embed_code— returns the `` HTMLmcp__ozor__list_voices— optional, lookup of available voicesmcp__ozor__send_message— optional, follow-up edits to the video agent
If the Ozor MCP is not connected, tell the user to add it and stop — do not try to fall back to writing a prompt-only output.
Workflow
Step 1 — Shape the brief
The Ozor prompt is capped at 2000 characters and should describe one short video. Before calling the MCP, make sure the brief includes:
- What the video is about in one sentence
- Audience (founders, developers, customers, general public, ...)
- Format — 16:9 (default, landscape) or 9:16 (vertical for social)
- Approximate duration — typically 15–90 seconds
- Number of scenes (3–6 is the sweet spot)
- Tone (confident, warm, energetic, technical, ...)
- Visual style (dark/light, color accent, minimal/bold)
- A clear CTA for the final scene
If any of these are missing AND the gap meaningfully changes the output, ask one focused question. Otherwise pick a sensible default and proceed — auto-mode behavior.
Never paste a multi-scene script extracted from a document into this prompt. That overflows the 2000-char limit and loses slide visuals. For documents, switch to ozor-document-video.
Step 2 — Generate
Call:
mcp__ozor__generate_video({
prompt: "",
export: true // recommended: triggers export automatically so you can skip step 4
})
This returns { videoId, jobId }. Surface to the user that the job has started and that you're waiting on it.
Step 3 — Wait for the build
Call:
mcp__ozor__wait_for_job({ videoId, jobId })
This blocks until the Ozor agent has finished building the project. If it fails, the error message will usually tell you what to fix in the prompt — relay it to the user and offer to retry with adjustments.
Step 4 — Export (skip if you passed export: true)
If you did not pass export: true in step 2, call:
mcp__ozor__export_video({ videoId })
Step 5 — Wait for the render
Call:
mcp__ozor__wait_for_export({ videoId })
This returns the final URLs:
shareUrl— public link to the rendered videoeditorUrl— Ozor editor link for further tweaksdownloadUrl— direct MP4 download
Step 6 — Get the embed
Call:
mcp__ozor__get_embed_code({ videoId })
Returns a ready-to-paste `` snippet.
Step 7 — Present results to the user
Output in this format:
🎬 Video ready
**Share:**
**Editor:**
**Download:**
**Embed:**
```html
Want me to iterate? I can:
- Change a specific scene
- Try a different tone or visual style
- Produce a 9:16 social version
## Iteration
If the user wants changes after seeing the result, use `mcp__ozor__send_message({ videoId, message: "" })` and then re-run steps 3–6 (the agent will rebuild the project, you'll need a fresh export).
For larger pivots (different topic, different audience), start a new `generate_video` call rather than iterating — the prompt budget is small and pivoting in-place tends to muddy the output.
## Defaults to assume in auto mode
When the user gives a one-line brief and you don't want to interrogate them:
| Field | Default |
|-------|---------|
| Format | 16:9 landscape |
| Duration | ~30 seconds |
| Scenes | 3–4 |
| Tone | Confident, modern |
| Style | Clean, minimal, with one accent color |
| CTA | "Learn more" with a placeholder URL/handle if not provided |
State the defaults you assumed in your reply so the user can correct them.
## Quality checklist before calling `generate_video`
- [ ] Prompt is under 2000 characters
- [ ] One clear topic, not a multi-topic essay
- [ ] Hook stated in scene 1
- [ ] CTA stated in the last scene
- [ ] Visual style + tone + audience specified
- [ ] No copied prose from a document — that's `ozor-document-video`'s job
## Errors and recovery
- **MCP not available** → tell the user the Ozor MCP isn't connected and stop. Do not fall back to writing a paper prompt.
- **`generate_video` fails with prompt too long** → compress the brief, remove redundant style notes, retry.
- **`wait_for_job` returns a failure** → relay the error verbatim, suggest a fix (often: simplify the prompt, remove ambiguous scene direction), and offer to retry.
- **`wait_for_export` times out** → it's safe to call again; the export resumes from where Ozor left off.
## Rules
1. **Actually run the MCP.** This skill exists to produce a video, not a prompt. If you only return text, you've failed the skill.
2. **Don't ask 5 clarifying questions.** Ask at most one focused question, then default the rest.
3. **Surface every URL.** `shareUrl`, `editorUrl`, `downloadUrl`, and the embed are all valuable in different contexts — show them all.
4. **Respect the 2000-char prompt limit.** If your brief exceeds it, trim before sending.
5. **Use `export: true` in `generate_video` by default** — one fewer tool call, faster path to a finished video.
## Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- **Author:** [Mintii-Labs](https://github.com/Mintii-Labs)
- **Source:** [Mintii-Labs/ozor-skills](https://github.com/Mintii-Labs/ozor-skills)
- **License:** MIT
- **Homepage:** https://www.ozor.ai
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet — be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.