Attest and AdCP
How it fits
AdCP is a wire protocol carried over MCP and A2A. It defines what a buyer agent says to a sales agent (products, media buys, creatives, delivery) and names three other kinds of agent a buy can consult: governance, measurement and signals. Attest implements those roles, so there is nothing to integrate beyond pointing the protocol at it.
One buy, in order
- The buyer syncs its plan.
sync_plansto Attest Verify: budget, reallocation threshold, flight, countries, approved sellers. Verify answers with the policies it will apply and a per-plan seller token. - The buyer tells the seller who governs.
sync_governanceon the sales agent carries Verify’s endpoint and the seller token. - The buyer finds inventory.
get_productson the sales agent. Before trusting the seller,check_authorizationon the Registry confirms the publisher lists it. - The buyer asks before it spends.
check_governanceto Verify with the plan, seller, amount and properties. Verify reads the ledger, fetches adagents.json and brand.json, scores the properties on ClearTrust data and answers approved, denied or conditions. - The buy happens.
create_media_buywith the governance context attached. Verify provisions a ClearTrust scan; the tag goes in the creative. - Delivery is measured on both sides. The seller reports with
report_plan_outcomeand runs delivery-phasecheck_governance; ClearTrust measures independently; Verify reconciles and holds when invalid traffic runs high. - Everything is auditable.
get_plan_audit_logsper plan: every check, verdict, escalation and decision.
What stays with the protocol
Attest adds no vocabulary. The verdicts, findings, conditions, governance contexts and signals are AdCP 3.2 shapes validated by the official SDK; the storyboards in the SDK pass against Verify. When the spec moves, the status page shows the drift and the storyboards are re-run.
What is ours
The policy engine behind the verdicts, the bilateral authorisation check, the domain scores and the per-buy measurement, all fed by ClearTrust’s traps. Verdicts are deterministic: a model writes explanations and curates listings; it never decides.
Discovery
The house publishes brand.json naming the agents; each agent serves its own brand.json, jwks.json and, for Verify, adagents.json with the property features it holds. Once ClearTrust is enrolled at AgenticAdvertising.org, the agents are listed there too.