A side-by-side look at the Dreambooth Studio and VideoGen MCP MCP servers: transport, auth, tools, quality signals, and the config to install either one in Claude, Cursor, Windsurf or VS Code.
Verdict: choose Dreambooth Studio for multimedia process work over a hosted endpoint; choose VideoGen MCP for multimedia process over a hosted endpoint. You can also run both side by side in one mcpServers block.
DREAMBOOTH_API_URL, ALLOWED_HOSTS.connect_account, connection_status, get_sessions.VIDEOGEN_API_KEY, VIDEOGEN_BASE_URL, VIDEOGEN_OAUTH_ISSUER, VIDEOGEN_OAUTH_SUPABASE_PROJECT_URL, VIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN.get_getting_started_guidance, get_async_tasks_guidance, get_workflows_guidance.Rows where the two servers differ are marked.
| Spec | ||
|---|---|---|
| Category | Multimedia Process | Multimedia Process |
| Quality signal | 57/100 · Good | 84/100 · Excellent |
| Install command | Confirmed | Confirmed |
| Transport | Remote HTTP/SSE | Remote HTTP/SSE |
| Auth | Not declared | API key required |
| Pricing | Not declared | BYOK (pay the provider) |
| Required env vars | DREAMBOOTH_API_URLALLOWED_HOSTS | VIDEOGEN_API_KEYVIDEOGEN_BASE_URLVIDEOGEN_OAUTH_ISSUERVIDEOGEN_OAUTH_SUPABASE_PROJECT_URLVIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN |
| Verified owner | Community listing | Verified |
| GitHub stars | 0 | 4 |
| Directory activity | 1 views 0 installs 0 upvotes | 10 views 0 installs 0 upvotes |
| Tools | 22 | 50 |
| Full listing | View Dreambooth Studio | View VideoGen MCP |
connect_accountConnect this conversation to the person's Dreambooth Studio account. The answer's status says what happened. already_connected: an account is connected; nothing to do. awaiting_approval: it returns a link the person opens in their own browser to sign in with Google and approve. A Google account with the same email as an existing Dreambooth account connects that account. Ask them to open it and say when they are done; do not call this tool again while waiting. use_client_sign_in: this client connects accounts through its own app or connector settings, where they can sign in with an email and password or with Google, so no link is returned. Ask them to connect Dreambooth there (the client also asks by itself when a tool needs an account), then repeat their question. Either way, someone who has no Dreambooth account yet gets one when they sign in. Call this when another tool reports that no account is connected, or when someone asks to connect or switch accounts.connection_statusWhether this conversation currently has a Dreambooth account connected, and which one. Call this if you are unsure whether to run connect_account first. Cheap and read-only — it does not contact Dreambooth.get_sessionsList the photo sessions recorded on this operator's booths, with totals. Call this when the operator asks how busy a booth has been, how many sessions ran in a period, or wants to inspect individual sessions. Supports date ranges, per-booth filtering, payment status and payment channel. For money totals rather than session counts, use get_revenue_summary instead.get_gallery_statsHow much media this operator's booths have produced: total, still active, and expired past the retention window. Call this when the operator asks how many photos or videos a booth has taken, or whether media is being lost to retention. Returns counts only, not the media itself.search_docsSearch the Dreambooth Studio documentation and FAQ. Call this before answering any question about the product, hardware, printing, booth setup, guest payments, or troubleshooting — answer from the docs rather than from memory. Pages about Dreambooth's own plans and billing come back as a link only: share the link, and do not quote prices, plans or trials in the conversation. Works without a connected account.list_projectsList the photobooth projects this operator owns, with id, name, public link slug, whether it is active, and its currency. Call this first whenever the operator names a booth — you need the project id to filter any other tool by booth. Does not return booth designs or page layouts.get_projectFull detail for a single booth: its name, public link, currency, screen size, and the live status of the device running it — whether it is online, when it was last seen, app version, and camera/printer/internet state. Call this when the operator asks about one specific booth, or whether a booth is working. Get the project id from list_projects first.get_revenue_summaryBusiness revenue from this operator's photobooth sessions across EVERY payment channel — gateway payments, cash vouchers (cash collected at the booth) and discount vouchers — grouped by month or day and by currency, with extra-print revenue and AI-effect purchases reported separately. Use this for any question about income, revenue or omzet. It is also the right tool when wallet earnings look too small: cash and voucher money never reaches the wallet ledger, so for operators who take cash the wallet figure legitimately understates income.get_creditsThis operator's remaining AI credit balance and their current subscription plan, including when it ends. Call this when they ask how many credits are left, whether they can still run AI effects, or what plan they are on. Credits are separate from wallet money — do not confuse the two.get_wallet_transactionsThis operator's wallet ledger: gateway earnings, withdrawals and refunds, newest first. Use for questions about the wallet, payouts or withdrawals. Do NOT use it to answer 'how much did I earn' — the wallet excludes cash and voucher income entirely, so for operators who take cash it understates real revenue. Use get_revenue_summary for income.create_filterCreate a new photo filter on this operator's account from a description of the look they want — 'warm and slightly faded', 'high contrast black and white'. Translate the description into the adjustment numbers yourself; the ranges are in the schema. Call this only when the operator asks for a filter to be CREATED. It does not change an existing filter, and there is no tool that does — to edit or delete one, send them to the dashboard. Creating the same filter twice makes two filters, so do not retry a call that may have gone through.duplicate_projectCopy one of this operator's existing booths, with all of its settings, into a new one. Use it when they want another booth 'like' one they already run — a second location, a one-off event, a variant to experiment on. Call list_projects first to get the project id; the operator will name the booth, not its id. The copy is named after the original and is not published at the original's public address, so it is safe to make and they can rename it in the dashboard. To design a NEW booth from a description, use start_booth instead of this; there is no tool that edits or deletes a booth that already exists.get_getting_started_guidanceHow to authenticate, verify with get_me, introduce VideoGen with workflow example prompts, choose workflows vs media tools, and follow VideoGen id conventions. Call when connecting, onboarding, the user asks what VideoGen can do, or how to set up the API or MCP. Equivalent to reading the `guidance://getting-started` MCP resource — provided as a tool for clients that don't read resources directly.get_async_tasks_guidanceHow to handle async workflows, tool executions, and exports: statuses, hosted vs local wait caps, polling with get_* tools, and when webhooks apply outside MCP. Call before polling or when a start tool returns a still-running snapshot. Equivalent to reading the `guidance://async-tasks` MCP resource — provided as a tool for clients that don't read resources directly.get_workflows_guidanceCanonical run → remix → export flow and when to use each workflow tool. Prefer script_to_video for longer narrated / informational videos; keep storyboard_to_video to ≤3 scenes unless the user asks for more. Call before starting a full video project. Equivalent to reading the `guidance://workflows` MCP resource — provided as a tool for clients that don't read resources directly.get_tools_vs_workflows_guidanceWhen to use standalone media tools (automatic model routing for a single asset) versus workflows (full editable professional video). Call when choosing between generate_* tools and workflow tools. Equivalent to reading the `guidance://tools-vs-workflows` MCP resource — provided as a tool for clients that don't read resources directly.script_to_videoPreferred for narrated / informational / explainer videos from text, especially ~1 minute or longer. Turn a verbatim narration script into an editable video with AI-generated visuals and captions. Prefer this over storyboard_to_video unless the user wants a short shot-directed storyboard. For avatar narration, pass actorEntityId and optionally set avatarQuality.voiceover_to_videoBuild an editable video with AI-generated visuals from an uploaded voiceover audio file.slideshow_to_videoBuild an editable narrated video from an uploaded PDF or slideshow file. Upload the file first with upload_file, then pass its fileId. For avatar narration, pass actorEntityId and optionally set avatarQuality.storyboard_to_videoBuild an editable video from an ordered storyboard (frame-by-frame shot list). Every scene needs a visual prompt and may include spoken words. To show a saved product, actor, or visual style, pass productEntityIds, actorEntityIds, or visualStyleEntityId on each scene that should use that entity's reference images (create_entity and add_entity_reference first). A prompt alone does not attach those images. Much more credit-heavy than script_to_video: use at most 3 scenes unless the user explicitly asks for more. Prefer script_to_video for ~1 minute+ narrated / informational videos. If the user has not named a workflow, ask with pros/cons before calling this.prompt_to_video_clipGenerate one short AI video clip from a prompt inside an editable project.list_workflow_runsList workflow runs, most recent first.get_workflow_runFetch the current status and result of a single workflow run.cancel_workflow_runRequest cancellation of an in-progress workflow run.Paste either block (or both) into your client config, e.g. claude_desktop_config.json or ~/.cursor/mcp.json. We only show a config when the install command is confirmed.
{
"mcpServers": {
"dreambooth-studio": {
"url": "https://mcp.dreamboothstudio.com/mcp"
}
}
}
{
"mcpServers": {
"videogen-mcp": {
"command": "npx",
"args": [
"-y",
"@videogen/mcp"
],
"env": {
"VIDEOGEN_API_KEY": "YOUR_VIDEOGEN_API_KEY_HERE",
"VIDEOGEN_BASE_URL": "YOUR_VIDEOGEN_BASE_URL_HERE",
"VIDEOGEN_OAUTH_ISSUER": "YOUR_VIDEOGEN_OAUTH_ISSUER_HERE",
"VIDEOGEN_OAUTH_SUPABASE_PROJECT_URL": "YOUR_VIDEOGEN_OAUTH_SUPABASE_PROJECT_URL_HERE",
"VIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN": "YOUR_VIDEOGEN_OPENAI_APPS_CHALLENGE_TOKEN_HERE"
}
}
}
}