Playbook

The agent creative playbook

How to get a finished ad, video or carousel back from Claude, ChatGPT, Cursor or Codex instead of another creative brief.

14 min read, then keep it open as referenceFor AI agent operators, SaaS + startupsUpdated 2026-09-16

What is inside

  • A 40-row map of the Advibly tool surface, grouped by the job each tool does
  • 15 copy-paste agent instructions that end with a file, not a plan
  • 10 patterns for writing instructions that return creative instead of another brief
  • A 10-point human approval checklist for anything an agent made that runs publicly
  • The 9 published agent skills and exactly what each one hands back

Your agent writes the brief and then stops

Ask Claude, ChatGPT, Cursor or Codex to plan a launch and you get something genuinely good. A positioning line. Three angles worth testing. A shot list. Captions for four platforms. Then it stops, and you are back in a browser rebuilding the brand from memory in an image tool.

That stop is not a reasoning failure. The agent understands the product perfectly well. It stops because three things are missing from the environment it is working in.

First, persistent brand context. Every new chat starts from zero, so the logo, the palette, the fonts, the product truth and the claims you are actually allowed to make get re-pasted badly or not at all. The result looks like stock imagery for a company that does not exist.

Second, a production method. A creator-style video ad is a chain: angle, script, casting, storyboard, shots, voice, captions, stitch. An agent improvising that chain reinvents it every time, so nothing is repeatable and nothing is comparable.

Third, a way to hand back files. A chat window returns text. Creative work is only finished when there is an MP4 and a set of PNGs at URLs you can open, download and hand to whoever runs the ads.

This playbook closes all three. It maps the whole tool surface an agent can drive, shows the three ways to connect one, gives you the instructions that end in a file, and sets the approval boundary a human keeps. Nothing here promises a performance outcome. It promises that the work finishes.

The tool surface, grouped by job

This is the full set of tools an agent can call on your Advibly account over OAuth. Read it as a capability map: if a job is not on this list, the agent cannot do it, and an instruction that assumes it will fail politely instead of loudly. Generation tools spend credits against your balance. Tools marked free spend none.

JobToolWhat it returns
Brand context: find the brandadvibly_list_brandsEvery brand on the account with its id and brand_type (ecom_store, website, app_ios, app_android, other). Free.
Brand context: read the brandadvibly_get_brandName, domain, colors, fonts and tone, plus the research brief (personas, voice of customer, proof, angles) once research has run. Free.
Brand context: dig deeperadvibly_get_brand_dossierThe full sourced dossier: company overview, feature map, ICP, positioning, named competitors, market context, quote bank, proof, pricing. Free.
Brand context: see the style sheetadvibly_view_brandkitThe brand kit sheet (logo, palette, fonts, tone, aesthetic) rendered as an image in the conversation. Free.
Brand context: fix the identityadvibly_update_brandThe updated brand with the kit re-rendered. Only the fields you pass change, and array fields replace rather than append. Free.
Brand context: revise the researchadvibly_update_brand_documentA new saved version of the brief or dossier. History is kept and the latest version is what later generations read. Free.
Brand context: build it from a URLadvibly_onboard_brandA fully onboarded brand from one website, App Store or Play link: identity, palette, fonts, logo, imagery, product catalog, brand kit, research started. Free.
Brand context: someone else's siteadvibly_quick_brandA throwaway brand scraped from any URL, with a brand_id you can generate against immediately. Free.
Brand context: list thoseadvibly_list_quick_brandsThe quick brands you created this way, newest first, kept separate from your own onboarded brands. Free.
Products: pick the subjectadvibly_get_productsA store brand's catalog with ids, searchable, hero products first. Pass an id as product_id and the product photo is attached for you. Free.
Assets: reuse what existsadvibly_get_assetsUploaded files plus imagery scraped at onboarding, each with a url to use as a reference image or source video. Free.
Assets: send a local fileadvibly_create_upload_urlA short-lived presigned URL to PUT raw bytes to, so a file never has to be base64-encoded into the conversation. Free.
Assets: register the fileadvibly_upload_assetA reusable asset reference in the brand library for later generations. Free.
Image: make the staticadvibly_generate_imageAn on-brand image, or a pending generation id to fetch later. Model, aspect ratio, quality and reference images are all arguments.
Video: make the clipadvibly_generate_videoA short video with audio, or a pending generation id. Pass source_video_url to edit an existing clip rather than start from text.
Video: understand a clipadvibly_analyze_videoA transcript, shot list, ad breakdown, cut plan or plain answer about any video you point it at. Free.
Talking actor: castadvibly_list_actorsStock and custom actors with image and preview URLs. Stock actors come with their own voice. Free.
Talking actor: speak the scriptadvibly_generate_talking_videoA lip-synced actor video with the voice synthesized in the same call, so there is no separate voice step.
Carousel: build the deckadvibly_generate_carouselA multi-slide carousel for LinkedIn, Instagram or TikTok with a caption, from one art-directed prompt per slide.
Carousel: hand it to LinkedInadvibly_export_carousel_pdfA public PDF URL, one slide per page in order, which is LinkedIn's document post format.
Audio: narrateadvibly_generate_voiceoverA narrated MP3 from your script, via xAI TTS or Cartesia with a supplied voice id.
Audio: scoreadvibly_generate_musicA music track MP3 from a style description, instrumental by default, usable as an ad bed.
Assembly: merge clipsadvibly_stitch_videosOne continuous video from 2 to 12 finished clips, hard cuts in the order given. Free.
Assembly: build the finished adadvibly_render_compositionOne rendered video from scene clips, timed voiceover segments, background music and text overlays, in a single call.
Assembly: caption itadvibly_add_subtitlesA new video generation with styled subtitles burned in, auto-transcribed and optionally translated.
Assembly: fetch the resultadvibly_get_generationThe finished URL or URLs for any generation id, whichever type it is. Free.
Assembly: review the libraryadvibly_list_generationsFinished generations newest first in a scrollable gallery, filterable by brand and project. Free.
Projects: open oneadvibly_create_projectA project_id to pass on every generation in a pipeline, so the library shows one tile instead of thirty intermediates. Free.
Projects: find an old oneadvibly_list_projectsProjects newest activity first, with member counts and cover URLs, so an agent can continue yesterday's work. Free.
Projects: close it outadvibly_update_projectThe renamed or re-described project, with the final render set as its cover. Free.
Publishing: see the channelsadvibly_social_list_accountsConnected accounts with profile_id, platform, handle and status across Instagram, X, LinkedIn, TikTok, YouTube, Facebook and Threads. Free.
Publishing: post or scheduleadvibly_social_create_postA post built from generation ids or public URLs, sent now, scheduled for a time, or dropped in the queue.
Publishing: check the queueadvibly_social_list_postsPosts filtered by status (draft, scheduled, processing, posted, partially failed, failed, deleted), with performance once a snapshot lands. Free.
Publishing: one post in detailadvibly_social_get_postPer-platform publish results with permalinks and errors, plus post-level and per-platform metrics and the snapshot time. Free.
Publishing: change itadvibly_social_update_postThe updated draft or scheduled post. Edits are rejected close to publish time. Free.
Publishing: take it downadvibly_social_delete_postThe record removed and the schedule cancelled, or the live post removed on the networks that support it. Free.
Publishing: account analyticsadvibly_social_get_profile_statsFollowers with the 7-day change, the network's headline metrics, and top posts from the last 90 days including ones posted natively. Free.
Publishing: comment to DMadvibly_social_arm_dm_automationA keyword automation armed on an existing Instagram post: comment, DM, follow check, then the link. Free.
Credits: check the balanceadvibly_check_creditsThe account's current credit balance. Free.
Credits: top upadvibly_buy_creditsCredit packs with ready-to-use checkout links. Free.

From zero to the first returned asset

There are three ways to connect an agent, and they are not competing options. They suit different moments. Do steps 1 and 2 once, then pick whichever connection matches where you actually work.

  1. 1

    1. Create the account before you touch any agent config

    Sign up at advibly.com. New accounts get 2 free starter credits, which is enough to run a real generation and look at the output before paying for anything. Access for agents is OAuth. There is no API key to mint, copy or leak, which also means there is nothing useful to paste into a config file yet.

  2. 2

    2. Build the brand context first, because everything reads from it

    Paste your website, App Store listing, Play listing or storefront URL into onboarding. Advibly scans it for identity, palette, fonts, logo and imagery, renders a brand kit sheet, pulls the product catalog for store brands, and starts the deeper research that produces the brief and dossier. You can do this without opening the app at all: an agent that is already connected can call advibly_onboard_brand with the same URL and run the identical onboarding in chat. Skipping this step is the single most common reason agent-made creative comes back looking generic.

  3. 3

    3. Hosted MCP: the default, and the right one for a chat client

    Add the hosted endpoint at advibly.com/mcp to your MCP client. The client opens a browser, you sign in, you approve, and the tools appear. No key, no secret, no server to run. Per-client setup guides live at /mcp-setup for Claude, Claude Code, ChatGPT, Cursor, Codex, VS Code and other MCP clients. Choose this when the agent you work in is a chat or IDE client and you want the tools available in every conversation.

  4. 4

    4. The CLI: the right one for a shell, a script or a pipeline

    Run npx advibly login. The CLI is an MCP client too, so it goes through the same OAuth chain and inherits the same tools: every tool becomes a subcommand, so advibly_generate_image becomes advibly generate-image --prompt "..." --brand-id "...". Two commands are CLI-native because a browser cannot do them well: advibly upload takes a local file through a presigned PUT, and advibly download writes result URLs to disk. Pending generations are followed until they finish unless you pass --no-follow. Choose this when you want files on your filesystem, when you are scripting a batch, or when there is no chat window in the loop.

  5. 5

    5. WebMCP: the right one when the human is already in the app

    WebMCP is the in-page surface. Instead of an agent calling your account from somewhere else, it drives the tab you are already looking at, on the session and the live data the page already holds. Tool names are unprefixed there, so it is generate_image rather than advibly_generate_image, and every call moves interface a human can see. Chrome exposes the API behind chrome://flags/#enable-webmcp-testing and ChatGPT's in-app browser has it built in; elsewhere a polyfill installs it. Anything that spends credits stops on an approval card first, and declining is a normal answer rather than an error. The live inspector at /webmcp reads the real tool surface of whatever tab it is open in. Choose this when you want the agent to operate the app in front of you rather than work in the background.

  6. 6

    6. Install a skill so the agent stops improvising the pipeline

    Run npx skills add advibly/skills. Each skill packages one complete production method: concept, script, storyboard, model choice, generation order, voice, assembly and the review gates in between. That matters because the hard part of a video ad is not any single tool call, it is the order and the failure handling. Skills are free and open source. Running one spends normal credits like any other generation. Browse them at /skills.

  7. 7

    7. Prove the loop with one cheap generation

    Ask the agent: list my brands, check my credit balance, then generate one 1:1 image for brand X of the product on a plain background, and give me the URL. That single instruction exercises brand resolution, the credits read, a generation and the result fetch. If the URL comes back and opens, everything downstream in this playbook will work.

  8. 8

    8. Write the reporting rule into your instructions once

    Add a standing line to your project instructions or system prompt: always report the credit estimate and my balance before generating, and always finish by giving me every result URL in one list. An agent that has not been told to report a URL will cheerfully announce success without ever fetching one.

6 more sections

Read the rest free.

A free Advibly account unlocks the full document and the download. No card needed, and you get 2 credits to try it on your own product.

What you unlock

  • A 40-row map of the Advibly tool surface, grouped by the job each tool does
  • 15 copy-paste agent instructions that end with a file, not a plan
  • 10 patterns for writing instructions that return creative instead of another brief
  • A 10-point human approval checklist for anything an agent made that runs publicly
  • The 9 published agent skills and exactly what each one hands back

Free to start. See what a paid plan adds

Connect your agent and get the first file back

Setup guides for Claude, Claude Code, ChatGPT, Cursor, Codex and other MCP clients. OAuth, no API key, and 2 free starter credits to check the output before you pay for anything.

Set up your agent

Questions about this one

No. Agent access is OAuth. You add the hosted endpoint to your MCP client, sign in in the browser and approve it, and the tools appear. There is no key to generate, rotate or paste into a config file.
Any MCP client. Per-client setup guides are at /mcp-setup for Claude, Claude Code, ChatGPT, Cursor, Codex, VS Code and others. If you prefer a shell, npx advibly is an MCP client too and turns every tool into a subcommand. If you want the agent to drive the app in the tab you are looking at, that is the in-page WebMCP surface.
$1 equals 1 credit and the exact cost is shown before a generation commits. As approximate anchors, an 8 second 720p video is about 2.1 credits and a 1K image about 0.1 credits, varying with model, resolution, duration and quality. New accounts get 2 free starter credits. Tools that only read data, plus projects, stitching and video analysis, spend none.
No. The published skills are free and open source, installed with npx skills add advibly/skills. Running one spends normal credits for the generations it makes, the same as doing the same work by hand.
It can create posts from finished generations and schedule them to connected social accounts, and read back per-platform results and metrics. Scheduling and auto-publishing to connected accounts are on the Publish plan. Keep a human approval step before anything goes out, which is what the checklist in this playbook is for.
You do not have to. The same pipelines run as guided in-app wizards at /templates, with no agent and no connection to configure. The agent path is the faster one once it is wired up, not the only one.