npm @aioproductoscom/mcp-studiostdioMITupdated 1mo ago
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.
What can you do with AIOProductOS Studio?
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
| Tool | What it does |
|---|---|
studio_start |
open a themed recording browser (viewport, brand colors, logged-in state) |
studio_goto |
navigate behind a designed title card โ no loading flashes on tape |
studio_click / studio_type |
cursor glides to the target; typing is human-paced |
studio_scroll |
cubic-eased scroll, never a jump cut |
studio_caption |
bottom-left storyline caption (the "voiceover" in text) |
studio_narrate |
spoken voice-over with NO on-screen caption; holds the shot under the line |
studio_highlight |
accent ring + label callout around any element or visible text |
studio_zoom |
smooth camera punch-in on a metric, button, or result |
studio_hold |
hold the shot (micro-drift keeps frames flowing) |
studio_end_card |
closing glass card: title, subtitle, CTA URL |
studio_screenshot |
high-DPI PNG of the frame, an element, or the full page |
studio_finish |
stop, auto-remove dark frames, export MP4 (+ optional GIF) |
studio_cancel |
abandon the take |
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 storage_state_path: "auth.json" to studio_start.
Keeping junk off the tape
- Cookie banner? Pass your consent cookie via
cookiesso it never mounts. - Chat bubble / dev overlay? List selectors in
hide_selectorsโ hidden from frame 1. - Wrong flash color on page loads? Set
theme.bgto 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
- Website: aioproductos.com
- The product behind it: AIOProductOS โ the product OS that joins feedback, revenue, work, and code on one customer record. Studio is free; it's how our own launch videos get made.
- Our other MCPs:
@aioproductoscom/mcp(the workspace connector) ยท@aioproductoscom/mcp-agent(assignable coding teammate) - Support: office@aioproductos.com โ a human founder answers every email.
MIT ยฉ AIOProductOS Inc.
Install
Add AIOProductOS Studio to your client. Pick the one you use.
claude mcp add mcp-studio -- npx -y @aioproductoscom/mcp-studiocodex mcp add mcp-studio -- npx -y @aioproductoscom/mcp-studioamp mcp add mcp-studio -- npx -y @aioproductoscom/mcp-studio{
"mcpServers": {
"mcp-studio": {
"command": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"mcp-studio": {
"command": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"mcp-studio","command":"npx","args":["-y","@aioproductoscom/mcp-studio"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"mcp-studio": {
"command": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"mcp-studio": {
"command": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"mcp-studio": {
"command": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"mcp-studio": {
"type": "local",
"command": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"mcp-studio": {
"command": {
"path": "npx",
"args": [
"-y",
"@aioproductoscom/mcp-studio"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y @aioproductoscom/mcp-studioRun `goose configure`, choose **Add Extension โ Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance22/25
- Trust16/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 42 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint โ no local install
Version history
| Versions | Published |
|---|---|
| 0.2.3Latest | Jul 21, 2026 |
| 0.1.1 | Jul 11, 2026 |
| 0.1.0 | Jul 11, 2026 |