Reelpen
Build editable 3D scenes for AI video, storyboarding and previsualization.
What it can do
- Reelpen Capabilities: Targeted detail and fallback orientation. Not a required first call. Task map: topic discover. Help: recipes(recipeIds), schema(commandOps), params(assetIds), assets, errors, tim
- Reelpen Read: Read the current scene summary and documentRevision from the ONE editor tab the user allowed for this connection. Always the LIVE document (unsaved work included); this connection has no
- Reelpen Validate Scene: Offline preflight. Provide exactly one of plan OR text (Turkish Kur shorthand). Max 150 objects; optional bounded terrain in world Y-up. Strict errors never partially build. Gr
What data it sees
Do you need an account
No: the server works without sign-in
Build editable 3D scenes for AI video, storyboarding and previsualization. Arrange characters and props, direct movement and camera shots, and export visual references.
Reelpen’s authenticated remote MCP connection lets compatible AI assistants inspect and edit an explicitly allowed scene. Read the scene first, review changes in the editor, and preview the complete shot before exporting. Live editor, saved-project and film-board permissions are separate. Builder coverage is evolving.
Connect: https://beta.reelpen.ai/guides/connect-your-ai
MCP endpoint: https://beta.reelpen.ai/mcp (Streamable HTTP with OAuth)
Public documentation and example prompts: https://github.com/viscountsparrow-cloud/reelpen-mcp
Watch the introduction: https://www.youtube.com/watch?v=MnRJVpZwn2A
Free beta; no payment card required. External AI assistants and video generators have separate access rules and charges. Reelpen produces references; final AI video generation happens in a separate service. The linked repository contains documentation, not application source code.
How to connect
How to connect Reelpen to Claude
The server address to paste into Claude settings:
https://reelpen--admin-p02g.run.tools
- Open Claude (claude.ai or the desktop app).
- Go to Settings → Connectors.
- Click Add custom connector.
- Paste the server address copied below into Remote MCP server URL and click Add.
- In a chat, click + → Connectors and switch the new connector on.
Custom connectors are available on Free, Pro, Max, Team and Enterprise plans (Free is limited to one). On Team and Enterprise an organization Owner adds the connector first under Organization settings → Connectors.
Authorization
After you click Add, a sign-in window for the service opens. Sign in with your own account and approve access. Claude never sees your password.
How to connect Reelpen to ChatGPT
The server address to paste into ChatGPT settings:
https://reelpen--admin-p02g.run.tools
- Open ChatGPT in a browser (chatgpt.com). A Plus, Pro, Business, Enterprise or Edu plan is required.
- Turn on developer mode once: Settings → Apps → Advanced settings → Developer mode.
- Open Settings → Connectors and click Create.
- Fill in the form: Name (anything), Description (one line about what the service does), MCP server URL (copy it below).
- Under Authentication choose OAuth if the service requires sign-in, otherwise None. Click Create.
- In a new chat open + → Apps/Connectors and enable the connector.
OpenAI has renamed this section before (Connectors → Apps/Plugins). If the label differs, search settings for "developer mode". On Business/Enterprise workspaces an admin must allow custom connectors first.
Authorization
On first use ChatGPT opens the service's sign-in window. Sign in and approve access.
How to connect Reelpen to Cursor
The server address to paste into Cursor settings:
https://reelpen--admin-p02g.run.tools
Fastest: click Open in Cursor below and confirm the prompt.
Manually:
- In Cursor open Settings → Cursor Settings → MCP and click Add new global MCP server.
- Paste the JSON copied below into
~/.cursor/mcp.json(per project:.cursor/mcp.jsonin the repo root). - Save the file. The server appears in the MCP list; authorize it there if asked.
Authorization
If the service needs sign-in, an authorize button appears next to the server in the MCP list.
Server tool list (16)
Raw names from tools/list. Only developers need these.
| reelpen_capabilities | Targeted detail and fallback orientation. Not a required first call. Task map: topic discover. Help: recipes(recipeIds), schema(commandOps), params(assetIds), assets, errors, timing, tools, session. page/pageSize for lists. Refresh when capabilityDigest changes. No scene or credentials required. |
| reelpen_read | Read the current scene summary and documentRevision from the ONE editor tab the user allowed for this connection. Always the LIVE document (unsaved work included); this connection has no stored-project read, so source:"saved" is refused. Objects carry id, name, asset, at, yaw, size, color, params, route, look. Paged; ids:[...] narrows. |
| reelpen_validate_scene | Offline preflight. Provide exactly one of plan OR text (Turkish Kur shorthand). Max 150 objects; optional bounded terrain in world Y-up. Strict errors never partially build. Groups/relative are build-time only; top supports box/wall/cylinder. Reports approximate overlaps. No browser or writes. |
| reelpen_build_scene | Build an EMPTY scene atomically in the user's allowed editor tab as ONE Undo step. Exactly one of plan OR text. Needs documentRevision + unique requestId; pending/uncertain outcomes resolve through reelpen_status. |
| reelpen_export | Complete native scene JSON (live tab when allowed, otherwise the stored project; the reply says which). Can be megabytes: not a routine check. |
| reelpen_preflight | Simulate an edit batch using the same compiler and command fields as reelpen_apply. Requires edit permission and current revision; never changes scene, assets, Undo or storage. Returns field differences, warnings and conflicts. |
| reelpen_apply | Apply up to 40 semantic commands atomically in the user's allowed editor tab as ONE Undo step. Read documentRevision first; reuse requestId only for the identical retry. Locked items stay protected; explicit dependency-checked delete; no implicit reset/unlock; set_lock is explicit. The reply distinguishes applied (editor) from saved (server); pending/uncertain resolve through reelpen_status. |
| reelpen_status | Outcome of a write batch by requestId: status queued|claimed|applied|failed|expired|uncertain|cancelled, documentRevision after apply, saved receipt (storageRevision, verified) and the next action. Use after a pending/uncertain reply or a lost connection instead of resending. |
| reelpen_preview | One clean 640x360 frame rendered by the user's allowed editor tab from a camera at a time. Never re-runs a mutation. Needs a live tab. |
| reelpen_playback | Control playback in the allowed tab: play, pause or seek to time. Same UI transport, no authored keys added. Requires edit permission. Stop recording before use. |
| reelpen_undo | Revert (or re-apply) ONE batch in the user's allowed editor tab using the editor's own Undo, as one step. Name the batch by its requestId and the documentRevision it produced; if it is no longer the latest change the answer is HISTORY_MISMATCH and nothing moves. Needs a live tab and edit permission. |
| reelpen_view | Move the user's WORKSPACE view in the allowed editor tab so they can see what you mean. Nothing about the produced video changes: output cameras, keyframes, cuts, duration and the documentRevision stay exactly as they were. Needs a live tab and edit permission. |
| reelpen_preview_clip | Record a short (max 8 s) playable clip from one camera in the user's allowed editor tab, so real motion can be judged. Default 480p, refused above 4 MB. Takes real time to record; the scene is restored and unchanged. Needs a live tab. |
| reelpen_file | Transfer files to/from the allowed tab. upload: id, name, bytes, mime, sha256; chunk: id, offset (bytes), base64 data (<=192 KiB decoded); identical chunks replay. status reports nextOffset. Read finished output with read/id/offset; response is base64 with nextOffset and eof. cancel discards a transfer/job. export: id, format png|video|zip|json, revision; optional camera/from/to. Poll status until done then read. One output at a time; keep tab visible for video. Transfers expire after 30 min; tab close discards them. Does not alter scene. Requires edit permission; no external URLs. |
| reelpen_import | Import a completed verified reelpen_file upload into the allowed scene, atomically as ONE Undo. kind=image requires imageId (surface_ prefix) and objectId, binds object reference or face in the same import; kind=glb creates objectId with name,size (longest metres),quarterTurns,at; kind=scene replaces only with replace:true after preserving Undo. Requires revision, requestId and account targetContext. No external URLs. |
| reelpen_form_preview | D0: one front/side/three-quarter contact sheet and same-revision measurements of 1–8 existing objects (compound ids expand). No scene/camera/Undo changes. Pass returned frameId to lock comparison cameras. Explicit pairs/symmetryPairs; unknown is not PASS. No FormSpec creation. |