MCP server
Motion by Frapea
com.frapea/motion
Checked 25 Oct 2026, 20:29 UTC · Connected to it and listed its tools
One sentence to a finished animation: your AI writes motion graphics as code and checks real frames.
Working at last checkVerified publisher: frapea.comAbout 3,785 tokens per request once connected20 tools
https://motion.frapea.com/mcp
At a glance
- Type
- MCP server
- Publisher
- frapea.com (verified by the MCP Registry)
- Status
- Working at last check
- Tools
- 20
- Token cost
- About 3,785 tokens per request
- Sets up in
- Claude Code, Claude Desktop, Codex, Gemini CLI, Cursor, VS Code, Antigravity, ChatGPT, OpenAI API, Grok
- Last checked
- 25 Oct 2026, 20:29 UTC
Connect it to your agent
Opens the app, which shows the server and asks you to confirm. For other apps, copy the setup below.
Claude Code
claude mcp add --transport http motion https://motion.frapea.com/mcp
Claude Desktop
Settings → Connectors → Add custom connector, and paste the URL.
Codex (config.toml)
[mcp_servers.motion] url = "https://motion.frapea.com/mcp"
Gemini CLI
{"mcpServers":{"motion":{"httpUrl":"https://motion.frapea.com/mcp"}}}
Cursor
{"mcpServers":{"motion":{"url":"https://motion.frapea.com/mcp"}}}
VS Code
{"servers":{"motion":{"type":"http","url":"https://motion.frapea.com/mcp"}}}
Antigravity
agy mcp add motion https://motion.frapea.com/mcp
ChatGPT
Settings → Apps & Connectors → Advanced settings: turn on Developer mode, then Create a connector and paste the URL. Which plans can do this varies.
OpenAI API (Responses tools)
{"type":"mcp","server_label":"motion","server_url":"https://motion.frapea.com/mcp","require_approval":"always"}
Grok (xAI API tools)
{"type":"mcp","server_label":"motion","server_url":"https://motion.frapea.com/mcp"}
Tools
check_playback~280 tokens
Plays a composition on the user's stage from the first frame to the last, through the same preview a person watches (which inspect_composition does not use), and reports whether it got to the end. Buffering is allowed; any error ends the run. Answers within about 20 s: {status:"running", at, total}close_composition~141 tokens
Closes a composition and removes it from the user's tabs; its source is not kept. Meant for drafts made along the way. Needs an explicit id and never falls back to the active composition.connect~137 tokens
Pairs this agent with a Motion browser tab using the eight-character code the user sees under the Connect MCP button (for example K7M4-P2Q9). Returns a session token that every other tool takes. The code works once; the token is what stays valid.create_composition~298 tokens
Creates a new composition from TSX source and opens it as a tab in the user's Motion page. `files` maps path to source and must include the entry (default composition.tsx). The API is specific to Motion and documented in read_skill {topic:'motion'}; design guidance is in {topic:'motion-craft'}. A pacreate_session~122 tokens
Starts a Motion session when the user has no pairing code. Compositions can be created and edited at once; the returned link opens the session in a browser. Rendering frames, playback and anything touching media need that tab open (see wait_for_tab). The scene is kept for 24 hours after the last chadelete_mediaChanges files · Deletes data · ~158 tokens
Deletes files from the user's media library by id. A copied file is gone from the browser; a linked file stays on the user's disk and only leaves the library. Compositions that use a deleted file report it as missing footage.get_composition~122 tokens
Returns one composition in full: manifest, every source file, and current prop values — the state an update_composition edit applies to.get_media~117 tokens
Returns the raw bytes of one file, base64, capped at about 600 KB. For larger files and for video, inspect_media describes the content at a fraction of the size.get_problems~281 tokens
Lists what went wrong in the user's tab: frames that failed to render (with the frame and the engine's message), a preview that stopped moving and why, compositions that would not load, clips that will not decode, missing footage, failed exports, a page the browser killed — plus warnings. Works whilinspect_composition~301 tokens
Renders frames of a composition in the user's tab and returns them as one labelled contact sheet; nothing is saved or changed. atFrames takes up to 12 frames; omitted, the sheet is an even spread plus the joins between scenes (labelled "end of a scene", "start of a scene", "mid transition"). One frainspect_media~160 tokens
Looks inside an image or video and returns one contact sheet: each requested moment as a labelled cell in a single image. atSec takes up to 12 timestamps in seconds; omitted, the moments are spread evenly over the clip.list_compositions~85 tokens
Lists the compositions open in the session, and which one is on screen.list_mediaChanges accounts · ~156 tokens
Lists the user's media library: folders, and files with id, name, kind, size and folder. `storage` says whether a file is 'linked' (still on their disk) or 'copied' (held by the browser); a linked file can need the user to re-grant access after a reload.organize_media~195 tokens
Moves files and manages folders. action: 'move' (ids + toFolder), 'createFolder' (name + optional parent), 'deleteFolder' (folder; the files inside move up one level, nothing is deleted). Deleting files is delete_media.put_media~270 tokens
Adds a file to the library as a new item; nothing existing is replaced. With `url`, the user's browser fetches it, so only public https hosts that send CORS headers work. `data` takes base64 bytes and is limited to about 700 KB, for small generated assets. Larger files on the caller's disk can be seread_skill~239 tokens
Returns one of Motion's authoring guides as text. 'motion' is the API contract: what compiles, resolves and renders — compositions written without it usually fail. 'motion-craft' covers timing and design so results do not look generated; 'motion-text' typography; 'motion-effects' named looks; 'motioset_props~117 tokens
Sets prop values on a composition, the same values the user's controls change. Merged by key; keys sent replace their current values.tell_user~302 tokens
Shows one short status sentence in the user's Motion tab while work is in progress, so they can tell progress from a stall. kind 'done' marks the job finished and 'problem' marks a blocker; step and of draw a progress bar. Changes nothing else. How it fits the workflow: read_skill {topic:'motion-worupdate_composition~200 tokens
Edits an existing composition. Each file sent replaces the file at that path; files not sent are kept. Changing the schema keeps prop values that still have a matching field.wait_for_tab~104 tokens
Waits until the user's Motion tab connects to the session, for example after they open the link from create_session. Returns as soon as it connects, or after about 25 seconds with tabConnected false. Tools that render or touch media need the tab.
Related MCP servers
- Frapea
A video editor in your browser that your AI drives: cuts, captions, multicam, motion titles, export. - CueFrame
Turn footage into finished video: reframing, captions behind the subject, motion graphics, renders. - Screenrove
Real product UI captures for design reference, competitor analysis, and coding agents. - PageToVid
Turn any web page into a narrated video: films the real site, writes, voices and captions it - cuttingfloor
Video editing for AI agents: cuts, captions, audio, motion graphics, previews, and exports. - Designers
Checks, prompts and skills for designers working with AI: contrast, a11y, heuristics, critique. - motionprompts
Plan pages, pick GSAP motion components and get their build prompts and composition rules. - Renderball
Designed, animated, editable presentations your AI writes on Renderball. No account needed to try.
Badge for your README
[](https://aptlynx.net/servers/com.frapea/motion)
Listing text is written by the maker; AptLynx lists tools and does not vouch for them. Find another tool · Browse by topic · For agents