Krust MCP

Drive your Krust account from Claude Code, Claude Desktop, Cursor or any MCP client: read products and facts, write briefs, film ads, remake statics, edit finished ads in words. Ads and statics made this way spend your credits exactly like the app.

The overview, example prompts and FAQ are on Make UGC ads from Claude, ChatGPT or Cursor. Plans are on Pricing.

Connect

Sign in (recommended). Add the server and, on first use, allow it in the browser window that opens. The server supports OAuth 2.1 with dynamic client registration and PKCE, so Claude Code, Claude Desktop, claude.ai connectors and Cursor all work without a key.

claude mcp add --transport http krust https://www.trykrust.com/api/mcp
# then in Claude Code: /mcp → krust → Authenticate

Or a key (scripts, agents): create one under Settings → Integrations → Krust MCP, then:

claude mcp add --transport http krust https://www.trykrust.com/api/mcp --header "Authorization: Bearer krust_live_…"

Tools

ToolSpends creditsWhat it does
get_accountNoThe active brand, its markets/language, the credit balance and the list of brands on the account. Check the balance here before make_ad or make_statics.
list_productsNoProducts with their context score (0–100, how well Krust knows the product; below 40 means ads may show it wrong).
get_product_contextNoThe fact sheet the writers and generators read (form, contents, usage, label, claims), the open questions with their ids, and the score. Drafts the facts from the product photo first if none exist (~30 s).
add_product_factNoFree text: an answer to an open question, a correction, a fact ("the can is 330 ml, the drink is clear and fizzy"). Krust reads it and updates the fact sheet; returns what changed. Use questionId to answer a specific open question.
set_product_notesNoReplaces the product's notes (up to 2,000 characters): the catch-all every writer reads, such as brand no-gos, the words the brand always uses and the moments ads must show.
list_templatesNoThe video-ad templates this account can run: id, name, family, what it films, length, credits (what one ad costs) and Keep/Skip stats. Use an id with draft_brief and make_ad.
list_audiencesNoThe confirmed audiences for a product (who, worry, messenger) and each one's angles (id, name, hook, claim). Drafts them first if there are none.
draft_briefNoWrites the ad the way make_ad would (personas and script for template × product × audience/angle) without filming. Read it, then pass it to make_ad as `brief` to film exactly this, or adjust it with your own wording.
make_adYesQueues a template ad for a product and spends credits: the template's price (credits in list_templates), charged when it queues and refused with a reason when the balance is short. count (1–5, at most the number of angles the audience has) queues one ad per angle of the audience, the chosen angle first, after checking that the balance covers all of them. Returns the ad ids; poll get_ad. Pass the brief from draft_brief (edited or not) to film that exact script (with count, the first ad films it); otherwise Krust writes one.
get_adNoStatus (pending · rendering · awaiting · ready · failed), the playable URL and poster when ready, the hook line, template and product.
list_adsNoThe account's recent template ads, newest first, with status and URLs.
edit_adOnly for re-filmed takesAsk for an edit in plain language ("cut the second sentence", "swap the second shot for a product close-up", "subtitles off"). Without apply, Krust proposes the edit ops and says what re-filming would cost. Call again with the same instruction and apply=true to re-cut the ad with that proposal (free when nothing re-films; re-filmed takes spend credits). Returns the proposal and, if applied, the render status.
list_scenesNoThe account's filmed scenes (silent clips and takes) that the editor and templates reuse.
list_static_layoutsNoThe static-ad layouts Krust can remake for a product: id, name, category, aspect ratio, the layout brief.
make_staticsYesQueues one static remake per layout id for the product, in the brand's language (or the given market). Spends credits for each image. Returns what started; poll list_static_remakes.
list_static_remakesNoRecent static remakes with status and image URLs.

A typical session

  1. get_account, list_products
  2. get_product_context; fix anything wrong with add_product_fact
  3. list_templates (each template's credits), list_audiences
  4. draft_brief; edit the script in the conversation
  5. make_ad with that brief (or count up to 5 for one ad per angle); get_ad until ready
  6. edit_ad for changes in words