Skip to main content

Documentation Index

Fetch the complete documentation index at: https://agenticadvertisingorg-changeset-release-main.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

The fastest way to build an AdCP agent is to point a coding agent (Claude Code, Codex, Cursor, Windsurf) at a skill file from an AdCP SDK. Each skill produces a protocol-compliant, storyboard-validated agent in 2–8 minutes.
Publisher without an engineering team? Protocol compliance is one piece of going live β€” product management, activation into your ad server, and hosting are separate lifts. See Operating an Agent for the three paths: partner with a managed platform, self-host a prebuilt agent, or build your own.

Install the SDK

Each SDK handles protocol compliance β€” schema validation, error formats, version negotiation, and response builders β€” so you write business logic, not protocol plumbing.
npm install @adcp/sdk
The JS/TS SDK provides typed tool registration, response builders, and a built-in storyboard runner. Most agents in production use this SDK.
Use the SDK for your language. All three SDKs β€” JS/TS, Python, and Go β€” handle schema validation, error formats, and protocol negotiation. You do not need to use a different language for protocol compliance.

Choose a skill

Each SDK ships skills that walk a coding agent through building a specific agent type. Common skills across SDKs:
  • build-seller-agent β€” publisher, SSP, or media network selling inventory
  • build-signals-agent β€” CDP or data provider serving audience segments
  • build-creative-agent β€” ad server or CMP rendering creatives
  • build-generative-seller-agent β€” AI ad network generating ads from briefs
  • build-retail-media-agent β€” retail media network with catalog-driven creative
For example, the JS/TS seller skill lives at adcp-client/skills/build-seller-agent/SKILL.md. Skill coverage and naming vary per language since each SDK includes implementation guidance specific to its stack. Browse the directory for your language:

Which domain and specialisms do you claim?

Each agent declares its supported_protocols (domains) and specialisms on get_adcp_capabilities. Each skill’s storyboard verifies the domain baseline β€” to also claim a specialism, your agent must pass that specialism’s storyboard. Skills-to-specialism mapping:
SkillTypical supported_protocolsTypical specialisms (pick one or combine)
build-seller-agent["media_buy", "creative"]sales-guaranteed, sales-non-guaranteed
build-generative-seller-agent["media_buy", "creative"]creative-generative + sales-non-guaranteed
build-retail-media-agent["media_buy", "creative"]sales-catalog-driven
build-signals-agent["signals"]signal-owned, signal-marketplace
build-creative-agent["creative"]creative-ad-server, creative-template
Picking a sales specialism: See Choosing a sales specialism in the Compliance Catalog for the full decision tree. Quick reference:
  • sales-guaranteed β€” IO approval, fixed pricing. Set media_buy.supports_proposals: true if you support RFP/proposal flows; false (or omit) for direct-buy only.
  • sales-non-guaranteed β€” auction / PMP.
  • sales-broadcast-tv, sales-catalog-driven, sales-social β€” channel-specific; see the decision tree.
You can claim more than one. See the Compliance Catalog for the full taxonomy and per-specialism storyboards. Building a brand rights agent (licensing talent, music, stock media)? There’s no skill today β€” see the Brand Protocol docs and claim brand-rights under the brand domain. See the Compliance Catalog for every domain and specialism with its storyboard and status (stable, preview, deprecated). Storyboard passing earns the AAO Verified (Spec) qualifier β€” validated against seeded test data on a test-mode endpoint. Once your agent is running against real production inventory, consider enrolling in the (Live) qualifier, which adds continuous observability of real delivery on a dedicated compliance account. An agent can hold (Spec), (Live), or both; enterprise buyers that treat AdCP as production infrastructure filter on (Live).

Build the agent

Point your coding agent at the skill file for your agent type. In Claude Code:
Fetch https://raw.githubusercontent.com/adcontextprotocol/adcp-client/main/skills/build-seller-agent/SKILL.md, then build a seller agent for a premium sports news publisher with guaranteed CTV and OLV inventory.
In Cursor or Windsurf, download the skill file and include it as context with your prompt. Each skill walks the coding agent through:
  1. Business model decisions (what you sell, how you price, approval workflow)
  2. Tool registration with correct schemas
  3. Response shapes that pass storyboard validation
  4. Error handling and edge cases

Validate with storyboards

The storyboard runner requires Node.js, regardless of what language your agent is written in.
Once the agent is running, validate it against the matching storyboard:
# JS/TS agent
npx tsx agent.ts &
npx @adcp/sdk@latest storyboard run http://localhost:3001/mcp media_buy_seller --json

# Python agent
python agent.py &
npx @adcp/sdk@latest storyboard run http://localhost:3001/mcp media_buy_seller --json

# Go agent
go run main.go &
npx @adcp/sdk@latest storyboard run http://localhost:3001/mcp media_buy_seller --json
Storyboards exercise every required tool call and validate response shapes. The storyboard runner uses sandbox mode by default β€” your agent receives sandbox: true on all account references and should return simulated data without real platform calls. A passing run means your agent is protocol-compliant.
media_buy_seller (9 steps)
  βœ“ get_adcp_capabilities
  βœ“ sync_accounts
  βœ“ get_products
  βœ“ create_media_buy
  βœ“ list_creative_formats
  βœ“ sync_creatives
  βœ“ list_creatives
  βœ“ get_media_buy_delivery
  βœ“ provide_performance_feedback
  9/9 passed
Protocol-compliant β‰  production-ready. A passing run means your agent speaks AdCP correctly. Going live requires business infrastructure behind each tool call β€” products and pricing, activation into your ad server, order management, hosting, and discovery registration via adagents.json. See Operating an Agent for the full list and whether to partner, self-host, or build.
Each skill includes variant storyboards for different business models β€” non-guaranteed, guaranteed with approval, proposal mode, and more. Run npx @adcp/sdk@latest storyboard list to see all available storyboards.
See Validate Your Agent for the full testing workflow β€” debugging failing steps, running compliance checks, and validating interactively through Addie. If your agent wraps an upstream platform (DSP, SSP, retail data, creative server, signal marketplace), see Validate adapter agents with mock upstream fixtures for the pre-staging gate that surfaces faΓ§ade bugs storyboards alone don’t catch.

Additional resources

The JS/TS SDK includes documentation designed for both humans and coding agents:
ResourceJS/TS locationPurpose
Protocol specnode_modules/@adcp/sdk/docs/llms.txtFull protocol in one file β€” tools, types, error codes, examples
Server guidenode_modules/@adcp/sdk/docs/guides/BUILD-AN-AGENT.mdServer-side implementation patterns
Python and Go equivalents are in each SDK’s GitHub repository. See adcp-client-python and adcp-go.

What’s next