Generate images & videos
inClaude withReelMe

  • Free to connect
  • You approve the price before each run
  • Runs use your ReelMe credits
  • Top up link when you run out
Image to videoOne still, animated with Seedance 2.0.
Canvas templateFilm
Image editKeep the subject, change everything around it.
Canvas templateAds

Skills your AI gets

Playbooks ReelMe hands your AI app for each kind of job, so it plans the canvas the way our own Canvas Agent does.

Build well on the ReelMe canvas (read first)canvas-craftRead before building anything non-trivial on a canvas — how wires, references, models, node tools and Sequences really behave on ReelMe, the principles and techniques that get better, more consistent, cheaper results, and a decision table.Nano Banana 2Nano Banana ProGPT Image 2Seedance 2.0Seedance 2.5Kling O3 ProGemini Omni Flash 1.1MiniMax H3 Max - Reference
Canvas recipes — node graphs for common jobscanvas-recipesReady node graphs for common jobs (product ad, UGC, fashion, food, real estate, music video, explainer, short film, key art, carousel, character series, before/after, end card, localisation) — which nodes, wires, tools and models, and what each costs roughly.Nano Banana ProGPT Image 2Seedance 2.0Seedance 2.0 FastKling O3 Pro
Clone a video — same camera, timing and story, new character / product / placeclone-and-swapUse for the "Clone & swap" chip and whenever the user has a clip and wants the same video with someone or something else in it — replace the main character with their photo, swap the product, restyle the place — keeping the original performance, camera movement, timing and composition. One price card, no questions.Seedance 2.5Seedance 2.0Kling O3 ProGPT Image 2.5 Flare
Write image prompts for keyframes, characters and productsimage-promptingUse when you write the prompt of a ReelMe image node — a body or face plate, a location or prop plate, a look frame, a storyboard keyframe, or an edit of an existing image wired in as reference.GPT Image 2.5 FlareGPT Image 2.5 SunburstGrok Image v2Nano Banana 2Seedream V5 ProGPT Image 2
Animate an image (motion and camera)image-to-videoUse when the user wants an existing or generated image to move — wire the image into a video node and write a motion-only prompt, optionally with a start and end frame.Seedance 2.0Seedance 2.0 FastSeedance 2.5Kling O3 ProGemini Omni Flash 1.1MiniMax H3 MaxGemini Omni Flash - ReferenceMiniMax H3 Max - Reference
Make a long video from many clips (sequence)long-videoUse when the user wants a video longer than one clip (30 s to a few minutes) — a short film, story, explainer or music-style montage built from ordered clips joined into a Sequence.Seedance 2.0Seedance 2.5Seedance 2.0 FastNano Banana 2Nano Banana Pro
Make a cinematic product adproduct-adUse for the "Product Ad" chip and any polished, commercial-style product video (hero reveal, feature in action, closing hero frame) from the user's product photo. Picks a content type (TVC by default), one price card, no questions.GPT Image 2.5 FlareGPT Image 2.5 SunburstGrok Image v2Nano Banana 2Seedance 2.0Seedance 2.5Kling O3 Pro
Turn an idea into a shot-by-shot script on the canvasscript-writerUse first when the user has an idea, topic or product but no script — write the beat sheet, dialogue/voice lines and per-shot durations, put it in a Script text node, and lay out one node per shot.
Write video prompts for ReelMe (Seedance structure)seedance-promptingUse whenever you write or fix the prompt of a ReelMe video node — text-to-video or image-to-video, single shot or multi-shot, with or without native audio.Seedance 2.0Seedance 2.0 FastSeedance 2.0 MiniSeedance 2.5Kling O3 ProGemini Omni Flash 1.1MiniMax H3 Max
Keep characters, products and places consistent across shotsstoryboard-consistencyUse when a story, ad or film has more than one shot with the same person, product or location — build anchor nodes, wire them into every shot, and lock identity in the prompts.Nano Banana 2Nano Banana ProSeedance 2.0
Make a UGC ad (a real creator filming on a phone)ugc-adUse for the "UGC Ad" chip and any TikTok / Reels / Shorts ad that should look filmed by a real person on a phone — selfie talk, unboxing, routine, reaction, before/after — featuring the user's product. One price card, no questions.GPT Image 2.5 FlareNano Banana 2Seedance 2.0Seedance 2.5
Image-first: get every image right before any videoimage-firstMUST READ before the images of a film or ad — the 10 gated steps from intake and Film Bible to look frame, plates, keyframes and video, plates vs keyframes, keyframe = the starting frame of the move, and the two ways a keyframe goes into Seedance.GPT Image 2.5 FlareGPT Image 2.5 SunburstGrok Image v2Nano Banana 2Seedream V5 ProSeedance 2.0Seedance 2.5
Camera language for video prompts (one move per shot)camera-languageMUST READ before writing any video prompt — shot sizes, one camera move per shot and what each move means, angles, lenses as visible results, coverage (180°, eyeline, screen direction) and emotion → camera picks.Seedance 2.0Seedance 2.0 FastSeedance 2.0 MiniSeedance 2.5Kling O3 Pro
Direct a film or ad on the canvas (story, coverage, continuity)film-directorMUST READ before making any film, story, ad or multi-shot video — the director's process, beat sheets for 30 s / 60 s / 2 min, clips and shots, coverage, continuity, light and colour, dialogue and sound, references (tested on ReelMe) and the blockout mode.Seedance 2.0Seedance 2.0 FastSeedance 2.0 MiniSeedance 2.5Kling O3 ProNano Banana 2

Every canvas model, insideClaude

The image and video models of the ReelMe canvas, picked per node by your AI.

Nano Banana 2Image
Nano Banana ProImage
GPT Image 2Image
GPT Image 2.5 FlareImage
GPT Image 2.5 SunburstImage
Seedream V5 ProImage
ReelMe Soul 2.0Image
ReelMe CinemaImage
Seedream 5.0 LiteImage
Nano Banana 2 LiteImage
Recraft V4.1Image
Seedance 2.0Video
Seedance 2.0 FastVideo
Seedance 2.0 MiniVideo
Seedance 2.5Video
Gemini Omni Flash 1.1Video
MiniMax H3 MaxVideo
Kling O3 ProVideo
ReelMe GenjutsuVideo
OpenAI Sora 2Video
Google VeoVideo
Kling 3.0Video
FLUX.3 VideoVideo

Add manually

Claude: what to put in each field. Keep the defaults unless you have a reason.

WhereCustomize → Connectors → Add custom connector
Namereelme-dev
Remote MCP server URLhttps://reelme.dev.aperogroup.ai/api/mcp
AuthenticationSign in now (detected) — or Sign in when needed
OAuth clientClaude's published identity (detected) — leave as is
Own OAuth client (only if you pick it)Client ID reelme-claude · Client secret empty
TransportStreamable HTTP

Keep the defaults: Sign in now + Claude's published identity + Streamable HTTP. "No sign-in" can't work: ReelMe always needs your account. SSE isn't supported.

Fewer "Allow?" prompts

WhereCustomize → Connectors → reelme-dev → Tool permissions
Read-only toolsAlways allow
Write/delete toolsAlways allow the canvas edits; keep Needs approval on run_confirmed, run_workflow, render_sequence, run_node_tool, delete_node
In the chatOr pick "Always allow" the first time Claude asks for a tool

On Team / Enterprise plans an owner may need to turn on "Allow 'Always allow' for connector tools" first.

Troubleshooting

I pasted the page URL (…/mcp) or just the siteIt works: ReelMe answers MCP on those too. The standard URL ends in /api/mcp.
"Sign-in doesn't work on this address"You used http:// or 127.0.0.1. Use the https URL shown above (locally https://localhost:3000/api/mcp).
"Unknown OAuth client ID"Clear the OAuth client ID / secret fields in your app (or use reelme-claude / reelme-chatgpt / reelme-codex, no secret).
The app says sign-in is required / 401Set authentication to OAuth / Sign in — ReelMe has no no-auth mode.
"Use Streamable HTTP" / connection fails on SSEPick Streamable HTTP (or http) as the transport.
It worked yesterday, now asks to sign inYour ReelMe session ended (sign-in expired, account changed or the server key rotated): connect again and press Allow.
Signing out of the ReelMe websiteDoesn't disconnect your AI app — it has its own session. To disconnect, remove ReelMe from the app's connectors.
ChatGPT has no "Apps & Connectors" or Developer modeChatGPT calls them Plugins now: add ReelMe at chatgpt.com/plugins → Add ▾ (Upload plugin archive or Create MCP App); set its permissions in chatgpt.com/settings/plugins-settings.
ChatGPT keeps asking "Allow?"In chatgpt.com/settings/plugins-settingsset Default permission to "Allow low-risk tools", or change ReelMe's own permission.
ChatGPT rejects the iconIt takes a PNG up to 10 KB: use /icons/mcp-chatgpt-256.png, or leave the icon empty.
Out of creditsYour AI shows a Top up link that opens ReelMe's paywall on your canvas.

What your AI can do

The tools ReelMe hands your AI app — the same canvas actions Canvas Agent uses in the app.

Read · free

List skillslist_skillsPlaybooks for jobs on ReelMe (script writing, product ads, image→video, long videos…): name, title, when to use, models. Read one with get_skill before starting that job.
Read a skillget_skillThe playbook for one skill from list_skills — model choice, prompt patterns and the tool steps. A long one lists its sections; read one with section (its id).
How to build on ReelMeget_workflow_instructionsCall first: how to lay out a storyboard on a ReelMe canvas with these tools — the order to call them in, and how paid runs and credits work.
What ReelMe can doget_capabilitiesCall when the user asks what ReelMe / this connector can do, or right after connecting: the features by group with things to try, the user's credits and latest canvas, and suggested next steps.
Who am I signed in aswhoamiThe ReelMe account this connection acts for (name, email).
List canvaseslist_canvasesThe user's ReelMe canvases (storyboards), newest first. Each has a canvasId used by every other tool.
Read a canvasget_canvasNodes (id, kind image|video|audio|text, name, prompt, model, status, refs = ids wired into it, previewUrl of its result) and wires of one canvas, plus its rev. Read this before editing.
List models and priceslist_modelsModels an image, video or audio node can use (the ids set_model takes), with the credits one output costs at the catalog's default settings. That is NOT what a node will cost (its own resolution / duration / audio change the price), and each row is priced at ITS OWN defaults (priceAt): a row that looks dearer may just default to a longer or higher-resolution output, so compare rows only at the same settings. Never quote or estimate a total from these — price with quote_run or the run_workflow plan. Video: create models (modes t2v / i2v; i2vInput "frames" = start + end frame, "references" = up to maxImages), and the Edit Video / Motion Control models (modes edit / motion — a video wired into the node; set_model with that mode). Edit rows say the source clip length they take (sourceSeconds), how many reference images, and whether the output follows the clip. Audio: voice-over (group speech), music, sound effects, and sound made for a wired video; each row lists its settings, its text limit (maxChars) and its voices; the price depends on the text length (voice-over) or the length asked.
Plan a job (graph, model, price)plan_jobRead-only. Ranks 1–3 ways to do a job (goal clone_swap | ugc_ad | product_ad) from the real model limits and catalog: each option has its node graph, model, the credits one output costs at the node's default settings (pricedAt says which: an Edit node's length is its own setting), why it fits and what is weak; models that don't fit say why (whyNot), and when none fits it says how to split. clone_swap needs sourceSeconds (the source clip's length) and refs (character images). Call it BEFORE building when the user asks which model / how much / how to swap or remake. Prices are estimates: only quote_run on the built nodes gives the confirmable total. Charges nothing, writes nothing; asking twice gives the same answer.
Look at a node's pictureview_nodeSEE a node's picture yourself — free, charges nothing, no describe run. Returns the image of up to 4 nodes (an image node's picture; a video's poster frame) as images you can look at, shrunk to ≤ 1280 px. Use it BEFORE describe / analysis (those cost credits): look first to check identity, framing, text, hands; run describe / analysis only when you need the picture written out. Audio and empty nodes have nothing to see (the answer says why). A video with no poster has nothing to see: frame capture is on the ReelMe canvas only (the node's Capture button, free) — ask the user to capture a frame there, then view the new image node; or use describe / analysis (they cost credits: ask first). Only nodes of the given canvas.
Credit balanceget_balanceThe user's ReelMe credit balance.
Credits and planget_plansThe user's ReelMe credit balance, their plan (or none), and — with neededCredits — how far a job is short. Shows a card with ReelMe's own Top up credits / See plans buttons. Call it when a tool answers no_credit or the user has no plan. Plan tiers and prices are only on ReelMe's pricing page: never invent them.
Run statusget_run_statusStatus of a run started by run_confirmed. When it has finished, the result is written onto its node (previewUrl) so the canvas and get_canvas show it. Pass waitSeconds (up to 45) to hold until it finishes; repeat in the same turn until allDone is true.
List canvas templateslist_templatesReady-made ReelMe storyboards (the /canvas Templates tab): key, title, type, thumbnail. Open one with use_template.
Workflow statusget_workflow_statusAdvance and report the canvas's workflow run: each step's state and result. Pass waitSeconds (up to 45) to hold until every step is done / failed; repeat in the same turn until allDone is true.
Sequence render statusget_sequence_statusReport the canvas's sequence render (one run: rendering / done / failed). Pass waitSeconds (up to 45) to hold until it finishes; repeat in the same turn until allDone. When done it returns the joined video's previewUrl, also written onto its node.
Node toolslist_node_toolsThe canvas node toolbar's tools for one node (image: multiAngle, upscale, removeBg, faceSwap, sketch, crop, describe · video: clip, edit, analysis, extractAudio (its sound as an mp3 audio node), addSound (a copy with AI sound) · text: runText): which can run now, each one's live price in credits and its params. Every result is a NEW node wired from this one; nothing is charged here.

Edit the canvas · free

Create a canvascreate_canvasCreate a new, empty ReelMe canvas and return its canvasId and link.
Add a nodeadd_nodeAdd an image, video, audio or text node. Image/video nodes start on the default model; give them a prompt with set_prompt. An audio node (voice-over, music, sound effect) takes its words / description with set_prompt and a model with set_model (list_models {kind: audio}). Placed right of `after` (or of the board). `media` = an https URL to show an existing image/video in the node.
Set a promptset_promptSet the prompt of an image/video node, or the body (markdown) of a text node.
Set a node's modelset_modelPick the model of an image/video/audio node (an id from list_models; for audio {kind: audio}). Optional settings hints are matched to that model's options; ones it doesn't offer stay on Auto.
Wire two nodesconnectWire `from` into `to`: an image feeds another node as a reference (a video node with an image in runs Image to Video); a text node feeds its text as the prompt (into an audio node: the words it says); a video into an audio node = sound made for it; an audio node into a video that already has a file = put it on the video, into an EMPTY Seedance video node = an audio reference, into a Sequence = its soundtrack.
Apply several editsapply_batchUp to 20 add_node / set_prompt / set_model / connect calls saved as ONE change — use it to lay out a storyboard. Prefer it over the single edit tools, even for one or two edits: one tool to allow means fewer permission prompts for the user. Give add_node an "arguments.ref" label and point later calls at "@label".
Update a nodeupdate_nodeRename, re-prompt, change the model or settings (selection: axis → value from quote_run / list_models; null = Auto), a video node's choices (mode, extendDirection, joinMode, joinAudio, firstFrame — the settings picked stay), or move one node.
Delete a nodedelete_nodeRemove a node and its wires from the canvas (a group's members stay). The user can undo from the open tab's history only while it's open; otherwise it's gone.
Tidy the boardtidy_canvasAuto-arrange the board like the canvas's Tidy up: wired nodes in columns left to right by what feeds what, unwired ones in a grid below; groups move as one block. Give `nodeIds` (2+) to tidy only those, else every top-level node. Call it once at the end of a build so the user opens a readable board.
Group nodesgroup_nodesWrap 2+ nodes that belong together (one scene, one shot and its references) in a named group. They must share the same parent (or none); a group's frame grows to hold them.
Start from a templateuse_templateLay a template's nodes on a new canvas (or to the right of `canvasId`'s board) — nothing runs, 0 credits. Returns the input slots to fill (upload_media into them), its brief, and a run_workflow hint.
Upload an image or videoupload_mediaPut an image, video or audio file (mp3 / wav / m4a / aac / ogg / flac) onto the canvas from an https URL (or small base64 ≤ 4 MB): uploaded to the user's ReelMe library, then shown in `nodeId` (e.g. a template slot or an empty node) or in a new node.
Stopcancel_runStop the canvas's workflow and its sequence render: steps not started yet don't start (like the Stop button), a planned join doesn't happen. A generation already running can't be stopped — ReelMe has no cancel — it finishes and is charged.

Generate · uses credits, only after you approve the price

Quote a generationquote_runPrice generating image/video nodes (at most 4 outputs in total). Returns the total in credits and a confirmToken, and shows a confirm card where the user can change prompt / model / settings. The user must have explicitly said yes to this total before you call run_confirmed (a multi-stage job: one run_workflow with joinNodeIds instead, so there is one quote). Nothing is charged here. Out of credits → the answer carries a paywallUrl to show the user.
Start a quoted generationrun_confirmedStart the runs of a quote the user approved (spends credits). Only call after the user explicitly said yes to this quote's total. Results land on their nodes by themselves; to use them in this turn call get_run_status {waitSeconds: 45} per runId until allDone, then carry on with the plan — never end the turn asking the user to say "continue".
Run the workflowrun_workflowRun a whole canvas (or `nodeIds` / groups) in wire order, like /canvas's Run workflow: mode "all" or "changed" (only steps whose input changed). Images not generated yet are priced and run before the videos they feed, so one plan covers keyframes + clips. Give `joinNodeIds` (2–8 clips, in order) to also join them into one video when they're done — priced into the same total (the Sequence Render row for that many clips). Without confirmToken it returns the plan and ONE total — show it and get ONE yes; call again with confirmToken to start. The approved chain then runs by itself on ReelMe (no polling needed): poll get_workflow_status {waitSeconds: 45} to report progress, or end the turn saying it keeps running and check once when the user is back.
Render a sequencerender_sequenceJoin generated videos into one video, like the canvas's Sequence Render: ONE server run (trims, joins, mixes the audio) priced by its template's price row for this many clips and audio — at most 8 clips and 3 audio. A clip in another frame is cropped to fill the first clip's frame (a portrait clip after a landscape one loses its top and bottom). Audio nodes with a file wired into the Sequence are laid over the film at their start, mixed with the clips' sound. Give `nodeIds` (2 or more generated videos, in order) to create the Sequence node, or `sequenceId` for an existing one. Without confirmToken it returns the total in credits and a confirmToken — it needs the user's explicit yes to this total; call again with confirmToken to start (spends credits). It then renders by itself on ReelMe; get_sequence_status {waitSeconds: 45} reports progress and, when done, the video's previewUrl. Out of credits → the answer carries a paywallUrl.
Run a node toolrun_node_toolRun one toolbar tool on a node (tool + params from list_node_tools). Crop is free and runs at once. Every other tool: without confirmToken it returns the price and a confirmToken — show the price, get the user's explicit yes, then call again with the SAME params and confirmToken (spends credits). The result lands in a new node wired from the original by itself; get_run_status {waitSeconds: 45} returns it. Out of credits → no_credit (call get_plans).

Please rotate your device

This app works best in portrait mode.