Tools

Classic formats

The older layout engine. Only used when you ask for it by name.

ReelFarm's older layout engine. Agents only use it when you name a classic format or ask for create_post.

create_post

1 slideshowShows in chat

Make a slideshow with a classic format and return its preview images.

Parameters

textstring

Your finished copy (a tweet, a paragraph, a long post). It is split across the slides in order, keeping your wording; it's only trimmed where a sentence can't fit. The number of body slides follows the text's length unless slide_count is set.

contentstring

Source material to rewrite into a post (notes, an article excerpt). Its meaning is kept, but the copy is rewritten in the format's style. Use text instead to keep your wording.

topicstring

A prompt for what to write, e.g. "make it about 5 habits that changed my mornings, funny tone". Use this when you don't have the text yet.

formatstring

Format id (fmt_123) or exact name from list_formats. Defaults to the account's default format.

slidesobject[]

The preferred input: exact text per slide that you wrote (or split from the user's copy) to fit the format's slots and word limits, keyed by slot name, in order: hook slides, then body, then CTA. Skips ReelFarm's AI writing, so it's faster. Example: [{"hook":"..."},{"body":"..."}]

slide_countnumber

Total number of slides. Must be within the format's range.

images"auto" | string[]

"auto" (default) uses the format's image setup or finds matching images. Or a list of public https image URLs, used for slides in order.

tonestring

Override the format's writing tone, e.g. "witty and blunt".

languagestring

Language to write in natively, e.g. "Spanish". Defaults to the format's language, else English.

waitboolean

Wait for the rendered previews before returning (default true). If false, returns immediately; poll get_post.

content_type"slideshow"

Only "slideshow" for now.

get_post

FreeShows in chat

Read a classic post's status, slides and preview images.

Parameters

post_idstringrequired

The post id returned by create_post, e.g. "post_48213".

edit_slide

FreeShows in chat

Change one slide's text, placement, size, style, color, overlay or image.

Parameters

post_idstringrequired

The post id returned by create_post, e.g. "post_48213".

slidenumber | stringrequired

Which slide: a 1-based number, "first", "last", or a slide_id from get_post.

itemnumber | string

Which text item: a slot name (e.g. "hook", "body"), a 1-based number, or an item_id. Leave out to change every item on the slide, or for slide-level changes.

textstring

New text for the item. Must fit the slot's word limit.

rewritestring

An instruction for the AI to rewrite the item's text within its limit, e.g. "make it punchier".

alignstring

Horizontal placement of the text and its box.

leftcenterright
positionstring

Vertical placement of the slide's whole text block (slide-level; leave out item).

topcenterbottom
sizestring

small, medium, large, xl, or a pixel size like "18px".

widthstring

narrow, medium, wide, full, or a percentage like "60%".

stylestring

A style preset: classic, bubble_white, bubble_black, soft_white, plain_white, headline, serif, serif_italic.

colorstring

Text color from the palette (white, black, yellow, pink, red, ...), keeping the current style.

overlaystring

Darkening over the image. Applies to every slide in this slide's section (hook, body or CTA).

nonelightmediumdark
image_urlstring

Replace the slide's image with this public https URL.

waitboolean

Wait for the new preview before returning (default true).

list_formats

Free

List the classic formats: yours and ReelFarm's built-ins.

Parameters

include_builtinboolean

Include ReelFarm's built-in formats (default true).

save_format

Free

Save a classic post's layout as a reusable format.

Parameters

post_idstringrequired

The post id returned by create_post, e.g. "post_48213".

namestringrequired

Name for the format. Must be unique on the account.

when_to_usestringrequired

One sentence on what content this format suits. Agents use it to pick formats.

slot_namesobject

Rename slots, e.g. {"body": "tip", "body_2": "explanation"}.

limitsobject

Word limits per slot, e.g. {"hook": {"max_words": 8}}. Defaults come from the post's current text.

purposesobject

What each slot should contain, by slot name.

tonestring

Writing tone for posts made with this format.

body_template_slidenumber

Which body slide's layout to use when body slides differ (1-based).

make_defaultboolean

Use this format when create_post is called without one.

Classic formats - ReelFarm MCP docs