ManyMotions MCP for any AI agent.
Connect ManyMotions to your agent and generate images and video — and drive the Media Studio editor — straight from your prompts. One hosted endpoint, your credits.
https://manymotions.com/api/mcpMedia Studio is the single home for every piece of creative work.
Every ad, VSL, and source element — scenes, takes, overlays, captions, and audio stems (music and voice on separate tracks) — lives in a project as individually editable clips on a timeline. Agents (over this MCP) and humans (in the dashboard) edit the same project, by clip id, deterministically: swap a clip, replace an end-card, split music from voice, retime a caption — without re-rendering the whole thing from scratch.
The loop is always generate or upload → it lands in the library → place it on the timeline → refine by id → export. Bulk-load a whole back-catalog once, then every future tweak is a few calls, not a rebuild. Large files skip the request body entirely via presigned upload.
Bulk-load a folder onto a timeline
Large files skip the request body via a presigned upload. Loop: request_upload → PUT the bytes →add_reference → add_clip. Then export.
import requests, os, glob
API = "https://manymotions.com/api/mcp"; KEY = "cw_live_…"
def tool(name, args):
r = requests.post(API, json={"jsonrpc":"2.0","id":1,"method":"tools/call",
"params":{"name":name,"arguments":args}},
headers={"Authorization": f"Bearer {KEY}"})
return r.json()["result"] # {content:[{text}]} → parse the JSON text
pid = tool("video_editor_create_project",
{"name":"My video","aspect_ratio":"9:16"})["project_id"]
for path in sorted(glob.glob("clips/*.mp4")):
up = tool("video_editor_request_upload",
{"filename": os.path.basename(path), "content_type":"video/mp4"})
requests.put(up["upload_url"], data=open(path,"rb").read(),
headers={"Content-Type":"video/mp4"}) # no size cap
asset = tool("video_editor_add_reference",
{"project_id": pid, "url": up["file_url"]})
tool("video_editor_add_clip", # LIBRARY → TIMELINE
{"project_id": pid, "asset_id": asset["asset_id"], "track":"video"})
tool("video_editor_get_timeline", {"project_id": pid}) # verify durations
tool("video_editor_export", {"project_id": pid}) # → video_urlSmall files (< ~6 MB) can skip the presign and use video_editor_upload_file with base64. Audio goes on track:"voice"|"music"|"sfx"; images become stills via duration_sec.
Connect in three steps.
Create an API key
Grab a cw_live_ key from /dashboard/api-keys. (Claude connectors and other OAuth clients skip this — you just sign in.)
Add the connector
Point your agent at the ManyMotions endpoint below and pass the key as a Bearer header.
Connect & create
Sign in, then ask your agent to generate — it runs on your account's credits.
Settings → Connectors → Add custom connector → URL: https://manymotions.com/api/mcp → Connect → sign in to ManyMotions
OAuth handles the rest — Claude registers itself and asks you to sign in once.
claude mcp add manymotions \ --transport http https://manymotions.com/api/mcp \ --header "Authorization: Bearer cw_live_…" # or skip the key and use OAuth: # omit --header, then run /mcp → authenticate
{
"mcpServers": {
"manymotions": {
"url": "https://manymotions.com/api/mcp",
"headers": { "Authorization": "Bearer cw_live_…" }
}
}
}Just describe it. ManyMotions builds it.
Generate images
"5 product shots of my serum, soft studio lighting, 1:1"
Generate video
"a 15-second skincare UGC ad with captions"
Edit in Media Studio
"add scene 2, crossfade between clips, then export"
Build a full ad
"script → scenes → voiceover → lip-sync → one MP4"
The toolset
Generation + the full Media Studio editor. The endpoint self-briefs on connect, so agents learn these automatically.
list_modelsModel catalog with capabilities. Call first — never guess a model_id.
media_forge_generateGenerate video or image. Async → returns a job_id.
job_statusPoll a job until completed, then read result.video / result.images.
video_editor_create_projectCreate a project (shared library + timelines).
video_editor_list_projectsList the user's projects.
video_editor_create_videoAdd another video to a project.
video_editor_get_stateInspect a video's timeline + library + context.
video_editor_set_contextSet the creative brief the agent reads each turn.
video_editor_instructOne natural-language instruction (generate a scene, add subtitles, set a transition…).
video_editor_add_clipPlace a library asset on the timeline by id.
video_editor_add_referenceImport a public image/video/audio URL into the library.
video_editor_upload_fileUpload raw file bytes into the library.
video_editor_exportStitch the timeline into one MP4. Returns a video_url.
list_models → pick an exact model id
video_editor_create_project → { project_id }
video_editor_instruct "scene 1: …" → generates + places a clip
video_editor_instruct "scene 2: …, continue the look"
…add subtitles / set a transition
video_editor_get_state(video_id) → verify the timeline
video_editor_export → { video_url }Apps for Claude, Muse and Kimi
Three focused apps on the same ManyMotions account and credits, each with its own endpoint. In Claude, add the Claude URL under Settings → Connectors → Add custom connector; Muse lists the Muse URL as a connector; Kimi plugins use the Kimi URL as their MCP server.
Logo concepts from a brand brief. Adjust colors, style, ratio and the number of concepts in an interactive panel, then render up to four PNG concepts. Raster output only: no vector export or trademark checks.
https://manymotions.com/api/claude/logomaker/mcphttps://manymotions.com/api/muse/logomaker/mcphttps://manymotions.com/api/kimi/logomaker/mcpprepare_logo_project · render_logo_widget · generate_logo · get_logo_job
Text-to-image and text-to-video with the Media Forge models. Review model, ratio, resolution and duration before rendering; the finished media comes back as a link.
https://manymotions.com/api/claude/mcphttps://manymotions.com/api/muse/mcphttps://manymotions.com/api/kimi/mcpprepare_media_forge_project · render_media_forge_widget · generate_media_forge · get_media_forge_job
A short UGC-style video ad from a product brief: strategy, script, AI presenter scenes with voice and a final cut, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/ugc/mcphttps://manymotions.com/api/muse/ugc/mcphttps://manymotions.com/api/kimi/ugc/mcpprepare_ugc_video_ad · generate_ugc_video_ad · get_ugc_video_ad
- Preparing a project is free and needs no sign-in.
- The first render asks you to sign in to ManyMotions (OAuth). Rendering uses the account's credits and needs verified paid access; failed jobs are refunded.
- Claude shows an interactive panel for images, videos and logos; Muse and Kimi work in text and return links to the results.
- Prompts and settings are stored in your ManyMotions account and sent to the generation providers. See the privacy policy; for help, support.
Single-purpose apps for Claude, Kimi and Muse
One job each, on the same ManyMotions account and credits. In Claude, add the Claude URL under Settings → Connectors → Add custom connector; Kimi plugins and Muse connectors use their own URL and work in text. Preparing is free and needs no sign-in; the first render asks you to sign in and uses the account's credits.
A cinematic text-to-video shot: describe the scene and pick one of 61 named camera moves (dolly, crane, orbit, crash zoom, dolly zoom, FPV drone, bullet time…), shot size, lighting, look, format and a cinema video model (Veo, Kling, Seedance, Wan). Review it in the panel, then render.
https://manymotions.com/api/claude/cinematic-video/mcphttps://manymotions.com/api/kimi/cinematic-video/mcphttps://manymotions.com/api/muse/cinematic-video/mcpprepare_cinematic_video · render_media_forge_widget · generate_media_forge · get_media_forge_job
An explainer, lesson or self-introduction spoken to camera by an AI presenter with an AI voice. Not an ad: no pitch and no call to action. Script, keyframes, scene videos and final cut, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/ai-avatar-presenter/mcphttps://manymotions.com/api/kimi/ai-avatar-presenter/mcphttps://manymotions.com/api/muse/ai-avatar-presenter/mcphttps://avatar.manymotions.com/api/chatgpt/ai-avatar-presenter/mcpprepare_presenter_video · generate_video · get_video
An animated short from a story idea: anime, flat cel, chibi, cartoon, storybook or 3D look held across every scene, with recurring characters, dialogue and narration, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/anime-story-video/mcphttps://manymotions.com/api/kimi/anime-story-video/mcphttps://manymotions.com/api/muse/anime-story-video/mcphttps://anime.manymotions.com/api/chatgpt/anime-story-video/mcpprepare_anime_story · generate_video · get_video
A scary story short for faceless channels: psychological, paranormal, creature, folklore, found-footage or thriller, built through restraint and narrated, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/horror-story-video/mcphttps://manymotions.com/api/kimi/horror-story-video/mcphttps://manymotions.com/api/muse/horror-story-video/mcphttps://horror.manymotions.com/api/chatgpt/horror-story-video/mcpprepare_horror_story · generate_video · get_video
A travel guide, journey diary or short documentary about a destination, narrated over generated scenes of the place, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/travel-video/mcphttps://manymotions.com/api/kimi/travel-video/mcphttps://manymotions.com/api/muse/travel-video/mcphttps://travel.manymotions.com/api/chatgpt/travel-video/mcpprepare_travel_video · generate_video · get_video
A personal birthday, anniversary or milestone tribute from the memories you describe, closing on a wish spoken to camera. The people are generated from your description, not from photos. Returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/birthday-video/mcphttps://manymotions.com/api/kimi/birthday-video/mcphttps://manymotions.com/api/muse/birthday-video/mcphttps://birthday.manymotions.com/api/chatgpt/birthday-video/mcpprepare_birthday_video · generate_video · get_video
A narrative short film from a logline: drama, sci-fi, thriller, romance, mystery or fantasy, with characters, dialogue and a film look across several scenes, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/short-film-maker/mcphttps://manymotions.com/api/kimi/short-film-maker/mcphttps://manymotions.com/api/muse/short-film-maker/mcphttps://film.manymotions.com/api/chatgpt/short-film-maker/mcpprepare_short_film · generate_video · get_video
A short comedy skit from a premise: deadpan, absurd, parody, observational or slapstick, built to land one joke, with original characters, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/comedy-skit-video/mcphttps://manymotions.com/api/kimi/comedy-skit-video/mcphttps://manymotions.com/api/muse/comedy-skit-video/mcphttps://comedy.manymotions.com/api/chatgpt/comedy-skit-video/mcpprepare_comedy_skit · generate_video · get_video
An invitation video for a church service, holiday celebration, conference, retreat or community gathering: a warm welcome, what the event is, when and where, and an open invitation spoken to camera. Returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/church-event-video/mcphttps://manymotions.com/api/kimi/church-event-video/mcphttps://manymotions.com/api/muse/church-event-video/mcphttps://church.manymotions.com/api/chatgpt/church-event-video/mcpprepare_church_event_video · generate_video · get_video
A workout or training short from the exercise or routine you describe, in a gym, outdoors or at home, with an AI athlete and narration, returned as an MP4. 250 credits per scene.
https://manymotions.com/api/claude/fitness-video/mcphttps://manymotions.com/api/kimi/fitness-video/mcphttps://manymotions.com/api/muse/fitness-video/mcphttps://fitness.manymotions.com/api/chatgpt/fitness-video/mcpprepare_fitness_video · generate_video · get_video
Questions, answered.
Which agents are supported?
Key or login?
cw_live_ Bearer key. OAuth clients — including Claude's custom connectors — just have you sign in: discovery, dynamic client registration and PKCE are all automatic via /.well-known/oauth-protected-resource/api/mcp.How do I connect?
Whose credits does it use?
What can it actually do?
Does it self-explain?
initialize response returns an instructions guide the agent reads automatically (auth, when to use each tool, the editor flow).