Required tasks by protocol
Each AdCP protocol defines tasks that agents implement depending on their role. This page consolidates the requirements from each protocol specification into a single reference. Legend: Required — the specification mandates implementation. Conditional — required when the agent has a specific capability. Optional — the specification recommends but does not mandate. Some tasks span protocols. For example,sync_creatives is defined in the Creative Protocol but may also be implemented by Media Buy sales agents. Canonical format discovery itself is no longer a shared task: each owning surface publishes its declaration directly.
Shared
Every AdCP agent, regardless of protocol, implements:
Caller-scope RBAC introspection is not a standalone task. Sellers that support scope introspection return a per-account
authorization object on sync_accounts and list_accounts responses. See Accounts Protocol — Caller authorization.
AdCP task lifecycle state is application-layer state, not MCP-native or A2A-native task state. 3.x sellers MAY advertise non-colliding AdCP aliases for polling and reconciliation: get_task_status for legacy tasks/get, and list_tasks for legacy tasks/list. These aliases remain optional compatibility surfaces generally in 3.x; callers MUST continue to support the legacy names through the 3.x line. The AdCP A2A Profile Extension v3 is the scoped exception: an agent that can return an AdCP Submitted response on that profile MUST expose get_task_status, and the A2A caller uses that non-colliding task. Alias and legacy request payloads use the same snake_case shape, including the optional account scope used to keep task visibility within the caller’s authenticated account + principal pair.
Media Buy Protocol
Sales agent (seller)
Sales agents MUST also support at least one transport (MCP or A2A) and declare
media_buy in supported_protocols.
Reference: Media Buy Specification · Seller integration guide
Orchestrator (buyer)
Orchestrators are not MCP/A2A servers — they call sales agent tasks. Conformant orchestrators MUST:- Authenticate with sales agents
- Include required fields per request schemas
- Handle asynchronous task-level responses (
submitted,working,input-required) and webhook delivery of completion artifacts - Use
media_buy_idfor all subsequent operations - Respect
creative_deadlinefor creative uploads
Creative Protocol
Creative agent
Creative agents MUST publish accurate canonical capability declarations. Exact publisher-format claims carry publisher identity; generic claims carry an honest parameter envelope.
Reference: Creative Specification
Signals Protocol
Signal agent
Signal agents MUST enforce access control for private signals and activation keys.
Reference: Signals Specification
Brand Protocol
Brand agent
Brand agents MUST declare
brand in supported_protocols.
Creative approval is delivered to the approval_webhook declared by
acquire_rights; its
creative-approval-request.json shape is a webhook payload, not an AdCP task.
Reference: Brand Protocol · Building a brand agent
Accounts Protocol
Any agent accepting accounts
Agents MUST implement at least one of
sync_accounts or list_accounts depending on their account model. An agent MAY implement both. Buyer-declared-account sellers SHOULD implement both: sync_accounts establishes the relationship, while list_accounts lets a stateless buyer recover the seller’s acknowledged (brand, operator, sandbox) portfolio without already possessing the natural keys it lost. A buyer-declared seller that exposes only list_accounts is conformant only when it lazily provisions on the first natural-key account-scoped request and can determine every required account setting without additional buyer input.
Reference: Accounts Protocol
Governance: Campaign
Governance agent
Reference: Campaign Governance Specification
Governance: Property
Governance agent
Reference: Property Governance Specification
Governance: Collection
Governance agent
Reference: Collection Governance
Governance: Content Standards
Content standards agent
Reference: Content Standards
Governance: Creative
Creative governance agent
Reference: Creative Governance
Sponsored Intelligence Protocol
Brand agent
Brand agents MUST declare
sponsored_intelligence in supported_protocols.
Reference: Sponsored Intelligence Specification