Skip to content
FLORA DocsGo to app

Batch with a coding agent

Combine FLORA MCP with any coding agent and external data sources to batch-run Techniques.

For batch jobs — 12 markets, 50 SKUs, an entire content library — pair FLORA MCP with a coding agent (Claude Code, Cursor agent mode, VS Code agent mode, Windsurf Cascade, …) and any other MCP that has your source data (Drive, Notion, GitHub, a CSV in your repo). The coding agent writes a short script that loops over the inputs and calls FLORA’s run_technique tool for each one.

Prerequisite: FLORA MCP installed in your coding agent — see Claude Code, Cursor, VS Code, or Windsurf. If you’re using external data, install the relevant MCP too (e.g. Drive, GitHub).

I need the Q3 thumbnails localized for 12 markets. Same visual direction we just locked in, but with each market’s headline. The localization sheet is in Drive — file ID 1abc...xyz. Pull the headlines and generate one thumbnail per market.

  1. Reads the localization data

    The agent uses the Drive MCP (or whichever source you named) to fetch the spreadsheet. It identifies a market_code column and a headline column.

  2. Writes a loop

    The agent drafts a short script — 8–10 lines — that iterates over the 12 rows. For each row, it calls FLORA MCP’s create_technique_run with the locked visual direction plus that market’s headline.

  3. Polls and saves

    The script polls each run, downloads each finished output, and names files by market code: thumbnail_DE.png, thumbnail_FR.png, etc.

  4. Packages the result

    The agent zips the 12 assets into q3_campaign_thumbnails.zip and shows the file tree so you can download or hand off.

A code window appears in your editor with the readable loop. A progress indicator runs from 1/12 through 12/12. When it finishes, the file tree expands to show:

q3_campaign_thumbnails.zip
├── thumbnail_DE.png
├── thumbnail_ES.png
├── thumbnail_FR.png
├── thumbnail_IT.png
├── thumbnail_JP.png
├── thumbnail_KR.png
├── thumbnail_NL.png
├── thumbnail_PT.png
├── thumbnail_PL.png
├── thumbnail_SE.png
├── thumbnail_TR.png
└── thumbnail_US.png

You never left your editor. The MCPs did all the lifting.

For reference, here’s what the loop typically looks like. Your coding agent writes this for you — you don’t need to type or maintain it.

// pseudo-code — actual implementation varies by Technique schema
const markets = await drive.readSheet("1abc...xyz");
const lockedDirection = ["<url for approved still #4>", "<url for approved still #7>"];
for (const { market_code, headline } of markets) {
const run = await flora.create_technique_run({
slug: "thumbnail-v3",
inputs: {
headline,
image_references: lockedDirection,
brief: "..."
}
});
await pollUntilDone(run.runId);
await downloadOutput(run, `thumbnail_${market_code}.png`);
}
  • From a CSV in your repo“Use markets.csv in this repo as the source.”
  • To a Project, not a zip“Attach each output to the Q3 Campaign Project in FLORA.” The agent adds an attach_project_asset call after each run.
  • With approval gate“Generate one, show it to me, only continue if I approve.” The agent stops at run 1/12 and waits.
  • Parallelize — for large batches, run N at a time instead of serially. Mention the limit you want: “Run 4 at a time.”

When to use a coding agent vs chat or background mode

Section titled “When to use a coding agent vs chat or background mode”
Inline chatBackground modeCoding agent
1–10 runsYesYes (for motion)Overkill
10–50 runs with external dataNoMaybeYes
Full automation, scheduledNoNoYes — wrap in a CI job
Approval gatesAwkwardOKEasy
  • The MCP layer is identical across surfaces. If a recipe works in chat for one item, the same FLORA tool calls will work in a coding agent for 100 items.
  • Output URLs are long-lived but not permanent. If you need archival storage, have the agent copy outputs to S3, GCS, or your own asset store as part of the loop.
  • For runs that take significant time each, parallelize. Set --max-concurrent 4 (or similar) in the script so you don’t wait serially.
  • Big batches hit credit limits faster than you’d expect. Confirm runCost × N before kicking off. The script can pre-check with retrieve_technique.