
AIOProductOS Studio MCP server
Turn your AI host into a product videographer: scripted app demos, voice-over, captions, MP4/GIF.
3 stars52 downloads/wk
Reviews
Write oneNobody has reviewed AIOProductOS Studio yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
AIOProductOS Studio tools (14, 1 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
studio_cancelwrite actionAbandon the current recording session: closes the browser and discards the tape. Nothing is written except screenshots already saved. Safe to call when no session is active (no-op).
studio_captionShow (or replace) the bottom-left storyline caption — an eyebrow kicker plus one sentence that narrates the current beat. Keep it under ~12 words and leave it up 2–4s (studio_hold) so it reads. Pass clear=true to fade it out before a scene change. The caption_text is ALSO recorded as the voice-over script: if you call studio_finish with voiceover:true it's spoken aloud (locally) timed to this mome
studio_clickGlide the visible cursor to a target and click it, slow enough to read as a deliberate action on camera. Use for every button / link / menu interaction in the walkthrough. Precondition: the target must be on screen — studio_goto or studio_scroll to it first if it isn't. Prefer a stable CSS selector; fall back to visible text. After clicking it waits for the page to settle and re-applies the theme
studio_end_cardShow the closing card — a centred glass card over the (still visible) product: title, optional subtitle and URL. The classic outro: what they saw + where to get it. Hold ~2.5s after this, then studio_finish.
studio_finishStop recording and produce the final files: closes the browser, strips residual dark frames (ffmpeg blackdetect → trim), transcodes to a share-ready MP4 (H.264, faststart), then — optionally — narrates the caption lines with a LOCAL voice (no cloud/keys), lays down a music bed, writes/burns subtitles, and exports vertical/square social crops, plus a GIF. Voice-over timing is auto-corrected for the
studio_gotoNavigate to a URL behind a designed transition card (eyebrow + big title on the theme background) — the viewer never sees a loading flash or half-hydrated page. Use for the opening shot AND every surface change; give each a short title so the cut reads as a chapter. Waits for real content (network settle + optional wait_for selector + skeleton loaders cleared) before lifting the card.
studio_highlightDraw an accent ring around a target (CSS selector or visible text), optionally with a label card beside it — the 'look here' callout. Side effects: scrolls the target into view, then overlays a ring (and card) in the theme accent; rings stack until cleared. Returns 'highlighted <target>' when the element is found, or errors 'target not found: <target>' when it isn't — retry with a studio_screensho
studio_holdHold the shot for a moment — glides to a target (optional) and keeps micro-drift so the recorder keeps emitting frames (a dead-static hold gets its tail frames dropped). Use after captions, highlights, and zooms: 2000–3000ms is a good beat.
studio_narrateRecord a line of voice-over WITHOUT putting a caption on screen — narration spoken over the action. The line is synthesized locally at studio_finish (needs voiceover:true). Holds the shot afterward so there's footage under the line; set hold_ms to roughly the length of the sentence when spoken (~400ms/word).
studio_screenshotTake a high-DPI (2x) screenshot of the current frame and save it as a PNG in the output directory. Works any time during a session — element-only via selector, or full_page for the whole scroll height. Returns the file path. Clear captions/rings first unless you want them in the shot.
studio_scrollCubic-eased scroll to an absolute Y offset or until a target element is in view — never a jump cut. Use between story beats to bring the next area on camera. Side effect: changes only the page scroll position (no click, no navigation). Pass exactly ONE of to_y or to_target. Returns 'scrolled' on completion. To reveal an off-screen element before studio_click or studio_highlight, scroll to it first
studio_startStart a recording session: launches a themed headless browser and begins capturing video. Returns the session config and the output directory. One session at a time — studio_finish or studio_cancel ends it. Set theme to the PRODUCT'S brand (bg = its app background — wrong bg causes visible flashes on page loads); use storage_state_path (a Playwright storageState JSON) to record logged-in areas wit
studio_typeGlide to an input and type text at a human pace (keystroke by keystroke — it reads as real usage, not a paste). Use realistic demo content; whatever you type is on tape.
studio_zoomCamera punch-in: smoothly zoom the page toward a target (CSS selector or visible text) — the money shot for a metric, button, or result. Captions stay screen-fixed; the content scales under them. ALWAYS studio_zoom with reset=true before navigating or showing the end card, or the next scene inherits the zoom.
Public scan report
scanner v0.1.9 · 2026-09-25 · same rubric, same numbers if you re-run it
- Code scan5 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 66 days ago12/15
- Maintainer identityregistry namespace matches repository owner; website matches verified namespace9/10
What the publisher says
From the AIOProductOS Studio repository's README, as published. We do not edit it. Read it on GitHub
AIOProductOS Studio · MCP
Your AI teammate becomes your product videographer. Studio is an MCP server that records scripted walkthroughs of your own web app — a visible cursor that glides to every click, camera punch-ins, highlight callouts, storyline captions, designed scene transitions — and takes marketing-grade screenshots. Tell your AI host what story to shoot; get back a share-ready MP4.
The videos PMs hate making — demo clips, explainers, changelog GIFs, launch screenshots — become one prompt.
Free · MIT · runs 100% locally (your browser, your URLs, your logged-in session — nothing is uploaded anywhere). By AIOProductOS, built from the same pipeline we use for our own launch videos.
Install
# Claude Code
claude mcp add studio -- npx -y @aioproductoscom/mcp-studio
# Cursor / Codex — .mcp.json
{ "mcpServers": { "studio": { "command": "npx", "args": ["-y", "@aioproductoscom/mcp-studio"] } } }Requirements: Node 18+, Playwright Chromium (npx playwright install chromium, one-time), and ffmpeg on PATH for MP4/GIF export (brew install ffmpeg — without it you still get the raw WebM).
Use
Then just direct the film:
"Record a 30-second walkthrough of https://app.example.com — theme it to our
brand (#0d1117 bg, #f97316 accent), open on the dashboard with the title
'Meet Example', caption the three key features, zoom in on the analytics
chart, and end with 'Start free · example.com'. Also grab a hero screenshot."
Your host runs the shoot tool by tool; files land in ./studio-output/.
The tools
Recording logged-in areas
Studio never sees your credentials. Save a Playwright storageState once (npx playwright codegen --save-storage=auth.json https://app.example.com), then pass storagestatepath: "auth.json" to studio_start.
Keeping junk off the tape
- Cookie banner? Pass your consent cookie via cookies so it never mounts.
- Chat bubble / dev overlay? List selectors in hide_selectors — hidden from frame 1.
- Wrong flash color on page loads? Set theme.bg to your app's real background.
Why it looks good (the hard-won part)
No white flash on page commits (the theme background paints before any page CSS), no black frames (navigations hide behind designed title cards, and residual dark frames are detected and cut deterministically with ffmpeg), no stutter (every camera move is compositor-friendly easing), and action that reads on camera (a visible cursor glides to every target before it acts).
Links
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Install directly
Runs npx -y @aioproductoscom/mcp-studio on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add mcp-studio -- npx -y @aioproductoscom/mcp-studio
AIOProductOS Studio: common questions
- Is AIOProductOS Studio MCP server safe?
- Yes, by our scan: it is graded A (89/100). Read the AIOProductOS Studio safety report
- How do I install AIOProductOS Studio?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does AIOProductOS Studio need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is AIOProductOS Studio maintained?
- The last commit was 67 days ago (2026-07-21). The latest release is v0.2.3.
- What can I use instead of AIOProductOS Studio?
- Servers from other publishers that do the same job: Aidemo MCP server, Loki Mode MCP server and Ecommerce Trends MCP server. Compare all AIOProductOS Studio alternatives.
Alternatives to AIOProductOS Studio
Same job from other publishers: the closest match first, then the best rated.
- AidemoNarrated, captioned product-demo MP4 from a storyboard.json; re-renders itself in CI at ~$0.not reviewedGrowingA
- Loki ModeAutonomous spec-to-product coding-agent CLI with an MCP server exposing 36 tools over stdio.not reviewedEstablishedB
- Ecommerce Trends MCPProduct and category demand trend volume over time, with growth signals. Free key at trendsmcp.ainot reviewedGrowingA
- COTAL actions (cotal.ai)cotal.ai actions: product overview, site search, build log, feedback, Cloud waitlist, updates, callsnot reviewedEstablishedB
- ShopwareQuery and safely manage a Shopware 6 shop: products, orders, customers, stock, audits, reports.not reviewedEstablishedB