This page lists every tool the Rheos MCP server registers, with the parameters your assistant needs to know about. Each tool returns a JSON payload — the shapes shown below are summaries; call the tool and inspect the response for the full schema.Documentation Index
Fetch the complete documentation index at: https://docs.rheos.app/llms.txt
Use this file to discover all available pages before exploring further.
Almost every tool takes a
brand_id (short ID like default_f7634e61). Start any session with rheos_list_brands to discover valid IDs, or call rheos_get_context to grab brand + formulas + reference data in one call.Posts
CRUD for posts, pillars, campaigns and other Rheos records.resource_type
selects the collection.
rheos_list
List records of a given type for the user or brand.
resource_type—"posts" | "pillars" | "campaigns" | "brands" | ...brand_id(optional) — filter to one brandstatus(optional) — e.g."draft","idea","scheduled","published"limit(optional)
rheos_get
Fetch a single record by id.
resource_type— same enum asrheos_listid— record id
rheos_create
Create a record. For resource_type="posts" this is the canonical drafting
endpoint — pass brand_id, textBody, and any formula fields (intent,
hook, cta) you’ve picked from rheos_get_formulas.
rheos_update
Patch fields on an existing record. Use this after rheos_accept_idea to
write the post body, or to edit a draft before scheduling.
resource_type,id,fields— partial update object
Ideation
Formula-aware idea generation. Ideas live as posts withstatus="idea";
accepting one flips it to status="draft".
rheos_brainstorm
Calls the Genkit postBrainstormFlow. Returns a list of formula-aware ideas
suitable for picking one and writing the body yourself with rheos_create.
brand_id(required)topic(optional) — seed conceptcount(optional) — defaults to a small batch
rheos_generate_ideas
Persists a batch of new ideas (posts with status="idea") and returns their
idea_ids. Use when you want the user to pick from a queue rather than
inline-brainstorm.
brand_id(required)count,intent,hook,cta(optional) — bias toward a formula slot
rheos_accept_idea
Flips one idea from status="idea" to status="draft". After accepting,
write the body in the brand voice and save it via rheos_update.
idea_id(required)
rheos_refresh_idea
Regenerates a single idea in place — keeps the id, replaces the content.
idea_id(required)
Publishing
Move a draft to scheduled or live across one or more channels.rheos_schedule_post
Queue a post for a future time. Status moves to scheduled; the backend
cron picks it up at scheduledAt.
post_id(required)scheduledAt— ISO 8601 timestampchannels(optional) — override the post’s default channel list
rheos_publish_post
Publish immediately. Returns per-channel publishResults — inspect
results[].error if any channel fails.
post_id(required)channels(optional)
rheos_cancel_scheduled
Pull a scheduled post back to draft so you can edit or delete it.
post_id(required)
rheos_connect_platform
Returns a dashboard OAuth deep-link the user can open in a browser to
connect Instagram, LinkedIn, Facebook, etc.
platform—"instagram" | "linkedin" | "facebook" | ...brand_id(required)
Brands & identity
Read and update the brand identity document, the sources that feed it, and the metadata stored on the brand record.rheos_list_brands
List every brand in the org (both business and personal). Call this first
in any drafting flow — every subsequent tool needs a brand_id.
rheos_get_context
Bundle call: returns the brand record, identity document, pillars, audiences,
themes, and formulas in one response. Use it at the start of a drafting
session to seed the assistant with everything it needs.
brand_id(required)
rheos_view_brand_document
Read the freeform markdown identity document for a brand — the synthesised
output of all sources.
brand_id(required)version(optional) — pick an older version
rheos_view_brand_sources
List every source attached to the brand (website scrape, AI import, uploaded
docs) with status and timestamps.
brand_id(required)
rheos_view_source
Read the full content of a single source.
brand_id,source_id
rheos_update_ai_import
Write or replace the AI-import source — the one external write path into the
brand’s source set. Personal brands use this instead of rheos_scrape_website.
brand_id(required)content— markdown body
rheos_scrape_website
Scrape a URL via Firecrawl (Cheerio fallback) and populate the brand’s
website source. Business brands only.
brand_id(required)url(required)
rheos_trigger_identity_doc_flow
Synthesise all active sources into the brand identity document. Call after
populating sources via rheos_update_ai_import or rheos_scrape_website.
brand_id(required)regenerate(optional) — force a fresh synthesis even if cached
rheos_update_brand_metadata
Set structured fields on the brand record (name, tone, audience labels, etc.)
without re-running the full identity flow.
brand_id(required)fields— partial metadata patch
Images
Generate, iterate, upload and save image assets. Generated images return inline as base64; saved assets get anasset_id you pass into rheos_create.
rheos_image_generate
Generate or iterate an image inside an ephemeral session. Pass
iterate_from_generation_id to refine instead of starting fresh.
brand_id(required)prompt(required)session_id(optional) — resume an existing sessioniterate_from_generation_id(optional)
rheos_image_save_asset
Promote a generation into the brand’s asset library so it can be attached
to a post.
session_id,generation_id— from the previousrheos_image_generatecall
rheos_upload_image
Store an externally-generated image (PNG / JPEG / WebP, ≤10 MB) as a Rheos
asset. Returns an asset_id.
brand_id(required)image_base64orimage_urlalt_text(optional)
rheos_draft_post_from_image
One-shot: upload an image and draft a caption + post in a single call.
Preferred over rheos_upload_image + rheos_create when the user already
has a topic in mind.
brand_id(required)image_base64orimage_urltopic(optional)hook_type(optional) — formula hook label
Video
Session-based video editing: get the current scenes, edit them, render via AWS Lambda, then have Gemini review the MP4.rheos_video_get_session
Fetch the current scenes and metadata for a video session.
session_id(required)
rheos_video_update_scenes
Apply scene-level edits (text layers, timing, asset swaps). For AI-suggested
edits prefer rheos_video_apply_suggestions — it preserves layer ids.
session_id(required)scenes— full scene array
rheos_video_render
Kick off the Lambda render. Returns render_id + bucket_name — poll
progress with rheos_video_render_progress every 3–5 seconds.
session_id(required)
rheos_video_render_progress
Poll a render. Returns done, progress, and (when complete) the MP4 URL.
render_id,bucket_name
rheos_video_review
Send the rendered MP4 to Gemini for critique. Returns text suggestions you
can feed back into rheos_video_apply_suggestions.
session_id(required)
rheos_video_apply_suggestions
Patch scenes from a review’s suggestions. Preserves layer ids so animations
don’t reset. After applying, re-render with rheos_video_render.
session_id,suggestions— fromrheos_video_review
Search
rheos_search_posts
Substring search over a brand’s posts (drafts + scheduled + published).
brand_id(required)query(required)
rheos_search_assets
Basic text matching against the asset library (filename, alt text, prompt).
brand_id(required)query(required)
Reference
Small read-only helpers split out so they don’t bloatrheos_get_context.
rheos_get_formulas
Return the static formula tree: 8 intents × 35+ hooks × 10 CTAs. Use to seed
rheos_brainstorm or to validate fields before rheos_create.
rheos_list_audiences
Extract the union of audiences across a brand’s pillars.
brand_id(required)
rheos_list_themes
Extract the union of themes across a brand’s pillars.
brand_id(required)
rheos_get_platforms
List connected social platforms for the user with token status and expiry.
rheos_get_credits
Return the user’s current credit balance and the credit cost of common
operations.
rheos_fetch_docs
Fetch a page from rheos.app/docs as markdown — useful for grounding an
assistant in product help articles. Pass no URL to get the docs index.
url(optional) — must be onrheos.app
Conventions
- Errors come back as
{ error, hint, next_step }— thehinttells the caller which tool to invoke next (e.g. “Callrheos_list_brandsfirst”). - All timestamps are ISO 8601 in UTC.
brand_idfor personal brands is the user’suser_id; for business brands it’s the short id fromrheos_list_brands.- Credits are deducted on tool success, not invocation. A failed
rheos_image_generatewon’t charge you.

