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).
What you type
Section titled “What you type”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.
What the agent does
Section titled “What the agent does”- Reads the localization data
The agent uses the Drive MCP (or whichever source you named) to fetch the spreadsheet. It identifies a
market_codecolumn and aheadlinecolumn. - 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_runwith the locked visual direction plus that market’s headline. - 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. - Packages the result
The agent zips the 12 assets into
q3_campaign_thumbnails.zipand shows the file tree so you can download or hand off.
What you see
Section titled “What you see”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.pngYou never left your editor. The MCPs did all the lifting.
Example: minimum viable script
Section titled “Example: minimum viable script”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 schemaconst 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`);}Variations
Section titled “Variations”- From a CSV in your repo — “Use
markets.csvin 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_assetcall 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 chat | Background mode | Coding agent | |
|---|---|---|---|
| 1–10 runs | Yes | Yes (for motion) | Overkill |
| 10–50 runs with external data | No | Maybe | Yes |
| Full automation, scheduled | No | No | Yes — wrap in a CI job |
| Approval gates | Awkward | OK | Easy |
- 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 × Nbefore kicking off. The script can pre-check withretrieve_technique.
Related
Section titled “Related”- Stills to motion — branching to another Technique with the same context.
- Iterate on favorites — single-shot iteration in chat.
- Authentication — your client’s OAuth token is workspace-scoped; all batch runs charge that workspace.