Introducing
AdFlow
MCP
❯
enter ↵
MCP handshake
Fetching campaign context
reading audience, budget, policy and creative constraints
0.0s
01import { campaign } from "@adflow/mcp";
02
03const plan = await campaign.create({
04 objective: "qualified demand",
05 markets: ["DE", "JP", "US", "AU"],
06 dailyBudget: 2400,
07 guardrail: "efficiency-first",
08});
09await plan.validate();
❯
✓Plan accepted · orchestration started
markets
signals
Market routing04 live
DEGermany / ready
JPJapan / ready
USUnited States / ready
AUAustralia / ready
Autonomous delivery
One brief.
Inspectable
decisions.
01Resolve audience intentdone
02Map creative constraintsdone
03Allocate protected budgetdone
04Launch market variantslive
05Open measurement looplive
Four markets coordinated · twelve audience cells live · delivery verified in 18.4 seconds · budget guard active
01const stream = campaign.observe();
02
03stream.on("signal", adaptAudience);
04stream.on("spend", protectBudget);
05stream.on("result", scoreOutcome);
06
07await stream.sync();
Performance,continuously re-scored.
Measurement loop
Fetching new performance signals
joining spend, visits, conversions and policy state0.0s
01window: "live-02"
02qualifiedVisits: 14_280
03conversionRate: 0.073
04costPerAction: 41.20
05protectedSpend: 18_600
06status: "ahead"
STATUS AHEADDAILY BUDGET $2,400 PROTECTEDQUALIFIED VISITS +38.4%CPA −21.0%POLICY CLEAR
❯
Agent recommendation / confidence 94%
Move 18% of protected budget toward high-intent mobile cohorts · expected CPA improvement 12–16% · keep policy guard active
Projected gain +14.2%Risk level lowGuardrail preserved
❯
Result window 04
Measured change,
not guesswork.
Stayahead.
AdFlow MCP
inspectable campaign orchestration