revideoz-mcp-server
v1.0.0
Published
MCP Server for ReVideoz AI Video Analysis
Readme
ReVideoz MCP Server
Last updated: 2026-04-05
MCP (Model Context Protocol) server that gives AI agents (Claude Code, Cursor, Windsurf, OpenClaw) access to ReVideoz video analysis, prompt generation, transcription, neuro insights, and session management.
Quick Install
Claude Code
# One-line install
claude mcp add revideoz -- npx tsx /home/claudedev/octoober/packages/mcp-server/index.tsOr add to ~/.claude.json manually:
{
"mcpServers": {
"revideoz": {
"command": "npx",
"args": ["tsx", "/home/claudedev/octoober/packages/mcp-server/index.ts"],
"env": {
"REVIDEOZ_BYOK_KEY": "YOUR_GEMINI_API_KEY",
"REVIDEOZ_BASE_URL": "https://revideoz.com"
}
}
}
}Cursor / Windsurf
Add to .cursor/mcp.json or .windsurf/mcp.json:
{
"mcpServers": {
"revideoz": {
"command": "npx",
"args": ["tsx", "/path/to/packages/mcp-server/index.ts"],
"env": {
"REVIDEOZ_API_KEY": "rvz_YOUR_KEY",
"REVIDEOZ_BASE_URL": "https://revideoz.com"
}
}
}
}OpenClaw
mcp_servers:
- name: revideoz
command: npx tsx /path/to/packages/mcp-server/index.ts
env:
REVIDEOZ_BYOK_KEY: YOUR_GEMINI_API_KEYEnvironment Variables
| Variable | Required | Description |
|----------|----------|-------------|
| REVIDEOZ_API_KEY | One of these | Platform API key (rvz_*). Uses credits. |
| REVIDEOZ_BYOK_KEY | required | Your own Gemini API key. Free, no credits. |
| REVIDEOZ_BASE_URL | No | Default: https://revideoz.com |
Tools (11)
Analysis & Generation
| Tool | Credits | Input | Output |
|------|---------|-------|--------|
| analyze_video_frames | 2 | frames: base64 JPEG array, model: pro/flash | Structured analysis (camera, lighting, composition, style) |
| generate_prompt | 1/type | analysis, prompt_types[], target_model, resolution | Full prompts with Positive/Negative/Context sections |
| transcribe_audio | 1 | audio: base64, mime_type | Emotion-annotated transcript + audio metadata |
| analyze_neuro_insights | 2 | frames: base64 array, audio_context? | Hook score, engagement, platform predictions, brain networks |
| generate_image | 5 | prompt, aspect_ratio | Generated image data |
| generate_video | 10 | prompt, image?, resolution | Operation ID (async) |
| check_operation_status | 0 | operation_id | pending/completed/failed + result |
Session Management
| Tool | Credits | Input | Output |
|------|---------|-------|--------|
| list_sessions | 0 | none | Table of sessions with IDs, names, clip counts |
| load_session | 0 | session_id | Full session: clips, analysis, prompts, chat history |
| save_session | 0 | name, session_id?, segments?, chat_messages? | Saved session ID |
| check_credits | 0 | none | Balance, usage per API key |
Workflow Examples
Example 1: Analyze video and generate prompts for Sora
Agent prompt: "Analyze these video frames and generate Sora prompts"
Flow:
1. analyze_video_frames(frames=[...base64 JPEGs...])
→ Returns detailed scene analysis
2. generate_prompt(
analysis="...",
prompt_types=["video", "image", "firstFrame"],
target_model="Sora",
resolution="4K"
)
→ Returns:
- Video Prompt (with camera movements, timing, atmosphere)
- Image Prompt (composition, lighting, style)
- First Frame Prompt (exact opening shot)
3. Each prompt has 3 sections:
### Positive Prompt — dense cinematic description
### Negative Prompt — what to avoid
### Context & Description — human-readable scene descriptionExample 2: Full video analysis pipeline
Agent prompt: "Analyze this video completely - visuals, audio, neuro"
Flow:
1. analyze_video_frames(frames=[...]) → visual analysis
2. transcribe_audio(audio="...base64 WAV...") → transcript with [breath] [pause] [softly] annotations
3. analyze_neuro_insights(frames=[...], audio_context="analysis text")
→ Returns:
- Hook Score: 85/100
- Engagement: 72/100
- TikTok Score: 78 ("Strong hook, fast pace matches trend format")
- YouTube Score: 65 ("Good retention curve, consider longer intro")
- Brain Networks: visual=89, emotional=76, attention=82Example 3: Resume previous work
Agent prompt: "Load my last session and continue the analysis"
Flow:
1. list_sessions() → shows saved sessions table
2. load_session(session_id="abc123") → loads all clips, analysis, prompts, AI Director chat
3. Continue with generate_prompt() or analyze_neuro_insights() on specific clips
4. save_session(session_id="abc123", name="Updated Analysis") → saves progressExample 4: Create automation pipeline
For each video in a batch:
1. Extract frames at 2fps
2. analyze_video_frames(frames) → get analysis
3. generate_prompt(analysis, prompt_types=["video"], target_model="Kling") → get Kling prompt
4. generate_video(prompt) → start async generation
5. check_operation_status(operation_id) → poll until done
6. save_session(name="Batch-Video-1") → persist resultsSupported Target Models
Video Generation
Sora (OpenAI), Veo 3 (Google), Runway Gen-3, Kling 2.0 (Kuaishou), Wan (Alibaba), Seedance (ByteDance), Pika 2.0, Luma Dream Machine
Image Generation
Midjourney v7, Imagen 3 (Google), DALL-E 3 (OpenAI), Flux Pro (Black Forest), Ideogram 3
Output Format
All tools return structured markdown with:
- Tables for tabular data (scores, comparisons)
- Headers for sections
- Bold labels for key-value pairs
- Full text (not truncated) for analysis and prompts
AI agents can parse this directly. JSON is also available in the raw API responses.
API Reference
- Interactive Docs: https://revideoz.com/api/docs (Scalar playground)
- OpenAPI Spec: https://revideoz.com/api/v1/openapi.json
- Web App: https://revideoz.com
