inReels for agents

Turn your agent into an ad studio

Connect inReels to Claude, Cursor, Codex, Muse or ChatGPT and generate ad creatives, UGC ads and faceless videos from chat — rendered, with audio, as files you can run.

https://www.inreels.ai/api/mcp
17 tools·28 image, video and speech models·OAuth or API key

One URL. Nothing to install.

  1. 1

    Add the server

    Streamable HTTP, straight from the terminal.

    claude mcp add --transport http --scope user inreels https://www.inreels.ai/api/mcp
  2. 2

    Sign in

    Run /mcp, pick inreels, and complete the browser sign-in.

  3. 3

    Ask

    "Make me a 15-second UGC ad for this product." The tools describe themselves, so Claude picks the model, writes the prompt and hands you the file.

What the agent gets

Capabilities — a finished deliverable

These choose the model, apply our craft rules and return a file. Creative controls only.

create_ad_videosensitive writespends credits

A finished ad from a product image, with native audio. Add a creator (actor_id or image) and it becomes a UGC ad; leave it out for a product-led one. Supply a script and it sets the length — write to the budget: up to 10 words for 5s, 20 for 10s, 30 for 15s. Over budget and the line gets clipped, so cut words rather than hoping. Omit the script and pass a brief instead, and the model writes its own line to fit. Ask for up to 3 variations to test angles. The model is chosen for you; use generate_video to pick one yourself. Needs a paid plan. Docs: https://www.inreels.ai/connect

create_faceless_videosensitive writespends credits

Render a complete faceless video — script to scenes to narration to captions to a finished MP4 — and return a run id. Generation then rendering takes roughly 5-10 minutes in total; poll get_run_status until it reports completed, and only then is output_url an MP4. Credits are charged by the pipeline on completion, not at submit.

Primitives — one asset, your choice of model

Full parameter surface across 28 image, video and speech models.

generate_imagesensitive writespends credits

Render an image and return a run id. Poll get_run_status for the URL. Call quote first if the budget matters.

generate_videosensitive writespends credits

Render a clip and return a run id. Text-to-video, or image-to-video by passing image_url. Several models produce native audio — set generate_audio and check list_models for which support it. Takes minutes; poll get_run_status.

generate_speechsensitive writespends credits

Speak a line in a named voice and return a run id. Poll get_run_status for the audio URL.

Discovery, pricing and runs

get_accountreadfree, read only

Confirm the connection works and read the credit balance. Call this first if anything is failing.

list_modelsreadfree, read only

Every image, video and speech model, with what each accepts and its price. Read this before naming a model — an id that is not listed is rejected.

list_voicesreadfree, read only

Named voices available to generate_speech.

quotereadfree, read only

Price a generate_image, generate_video or generate_speech call without spending anything. The number returned is exactly what the matching call will charge.

get_run_statusreadfree, read only

Check a submitted run. Pass wait:true to block up to 45 seconds, which usually returns a finished image in one call. Always poll before giving a user an output URL. Video runs keep going after the scenes are made — rendering the MP4 takes a few more minutes, so keep polling until status is completed and tell the user it is rendering rather than handing over the watch_url as the finished thing.

list_runsreadfree, read only

The most recent runs on this account, newest first.

list_stylesreadfree, read only

The valid values for create_faceless_video. Read this before submitting — an unlisted style or music id is rejected, not substituted.

list_actorsreadfree, read only

The curated faces available for create_ad_video, with filters. Pick deliberately — the actor is most of what makes a UGC ad read as real. To use a face of your own instead, call upload_image and pass its URL.

upload_imagewritefree

Bring your own product shot or creator photo in, by URL or base64, and get back an inReels URL the generation tools accept. Free. PNG, JPEG or WebP, up to 10MB. Docs: https://www.inreels.ai/connect

refresh_asset_urlreadfree, read only

Output and upload URLs are signed and expire after 24 hours. Pass the s3_key to get a fresh link for the same file.

quote_ad_videoreadfree, read only

Price an ad without making it. Returns the model chosen, the duration the script implies, and the total for all variations.

quote_faceless_videoreadfree, read only

Estimate a full faceless video without submitting it. A short topic gets expanded into a script at submit, so for short inputs this is a floor rather than an exact figure.

How it behaves

  • Every generating tool returns a run id immediately. Nothing blocks.
  • Quote first — the price you are shown is the price you are charged.
  • Failed runs are refunded in full, so a failure never costs credits.
  • An unlisted model is rejected, never quietly substituted.
  • Video keeps going after the scenes are made: the MP4 is rendered next, and the run only reports completed once the file exists.
  • Every option we expose is validated against the provider's live schema before it ships, so an agent cannot be handed a combination that fails.
  • No rate limits beyond the account's credit balance. Any number of runs may be in flight; get_run_status with wait blocks up to 45 seconds.

Tool classification

Each tool above is tagged read, write or sensitive write.

  • read — retrieves information. Changes nothing, spends nothing.
  • write — creates or changes data. Spends nothing.
  • sensitive write — spends the user's credits. Irreversible, so a host should ask the user each time rather than taking blanket permission.

Errors

400  invalid_request        rejected before any charge; the message names the fix
401  unauthorized           WWW-Authenticate points at the OAuth metadata
402  insufficient_credits   includes required and available
403  subscription           the capability needs a paid plan
404  not_found              unknown tool, or a run on another account
405  method_not_allowed     a spending tool was called with GET
500  internal_error         failed on our side; nothing was charged

Get a key

One key works across MCP, REST and the CLI. Credits are shared with your inReels account.

Problems or questions — support.

Questions? Chat with us

We typically reply instantly