# AdCP Signals Adaptor

Spec-conformant open-source signals data provider for the Ad Context Protocol — the open standard for agentic advertising. Production demo at adcp.signal-stack.io, code on GitHub, MIT-licensed.

> Markdown twin of https://nofluffadvisory.com/building/adcp-signals-adaptor/ — text extracted from the page. Project registry: https://nofluffadvisory.com/building/

← Building

Standards contribution · AdCP Signals & Measurement WG

# AdCP Signals Adaptor.

Reference implementation for the AdCP Signals & Measurement working group.

GitHub →

Live demo ↗

Discovery JSON

Verified in the AAO agent registry ↗

Running this agent feeds work back upstream — see the protocol contributions (merged schema fields, conformance-suite fixes, open RFCs).

- **Status** — Production · live demo
- **License** — MIT — open source
- **Spec** — AdCP 3.1.0 (GA)
- **Runtime** — Cloudflare Workers
- **Role** — Reference seller implementation
- **Author** — Founding member · AdCP S&M WG

Inside this page

- Why this matters
- What it ships
- Stack
- Industry context
- Related writing

Why this matters

## The fragmentation tax finally has a settlement.

For two decades the ad-tech industry has lived with a fragmentation tax — OpenRTB for bidding, AdCOM for creative, GPP for privacy, OpenDirect for guaranteed buys. Each one a real standard. Each one its own island. Each one requiring custom bridges. As AI buyer agents enter the stack, the bridges become the bottleneck.

The Ad Context Protocol (AdCP) is the open standard designed to reduce that tax. Built on top of Anthropic's Model Context Protocol, it gives AI agents a single, secure way to discover and transact with advertising platforms — audience activation, curation, and media buy. One spec, many platforms.

The signals adaptor is the reference seller-side implementation of the protocol's data provider role. It serves AdCP spec 3.1.0 (additive over 3.0, so a 3.0 integration keeps working untouched), ships as MIT-licensed code, and runs as a live demo other adopters can probe.

One spec, many platforms. The bridges were the bottleneck.

AdCP design thesis

What it ships

## A production worker. The full provider surface.

A production Cloudflare Worker that implements the full AdCP signals provider surface — eight capability surfaces, every payload schema-validated against a vendored copy of the AdCP corpus, and a conformance harness running against the official storyboard scenarios on every push.

- **get_signals** — Signal discovery — Discover signals across 14 verticals and 5 signal types — exposed to any AdCP-enabled buyer agent.
- **activate_signal** — Signal activation — Turn a discovered signal into bookable inventory inside the seller catalog.
- **query_signals_nl** — Natural-language query — Translate buyer intent into a structured signal lookup — no agent prompt-engineering required.
- **list_creative_formats · get_products** — Creative + product surface — Expose the seller's products and creative formats so buyer agents can plan media buys.
- **check_governance** — Governance check — Trust + compliance gate before activation — applied as a pre-condition, not an audit.
- **create_media_buy · get_operation_status** — Media-buy primitive — Idempotent buy creation + status tracking. Idempotency-key handling for safe retries.
- **/.well-known/adagents.json** — Discovery endpoint — Publisher-discovery endpoint per AdCP convention — buyer agents find the provider by URL pattern.
- **X-AdCP-Spec-Version** — Spec versioning — Response header pinned to the latest released patch — buyer agents pin compatibility.

Architecture

## Input. Process. Output.

A buyer-side agent issues an MCP request; the worker validates against the spec corpus, looks up signals, translates between MCP and AdCP, and ships a spec-compliant response back to the seller catalog.

Stack

## Built for the edge.

- **Runtime** — Cloudflare Workers · TypeScript · wrangler
- **Storage** — D1 (SQLite) · KV namespace
- **Protocol** — MCP (Anthropic) · AdCP 3.1.0 · OpenRTB hooks
- **CI / CD** — GitHub Actions · auto-deploy · spec-version smoke tests
- **Schemas** — Vendored AdCP corpus · cosign-verified tarball
- **License** — MIT

Live surfaces

## Probe it yourself.

- **GitHub repo** — https://github.com/EvgenyAndroid/adcp-signals-adaptor — MIT open source — Source + history + issues. Pull requests welcome.
- **Live demo** — https://adcp.signal-stack.io — Production — Running adaptor — call it, inspect headers, probe the catalog.
- **Discovery JSON** — https://adcp.signal-stack.io/.well-known/adagents.json — Endpoint — Publisher-discovery endpoint per AdCP convention.
- **Related writing** — /writing/adcp-the-open-standard-for-agentic-advertising/ — Essay — "AdCP: The Open Standard for Agentic Advertising" — thesis behind the code.
- **Standards working group** — https://agenticadvertising.org/ — AgenticAdvertising.org — AdCP Signals & Measurement WG — co-lead.

Industry context

## A founding member's contribution.

AdCP is a project of AgenticAdvertising.org, a neutral consortium advancing open standards for AI-powered advertising. Founding members include Optable, PubMatic, Scope3, Swivel, and Triton Digital, with a supporting roster of AccuWeather, Butler/Till, Classify, Raptive, The Weather Company, Newton Research, Bidcliq, and Samba TV.

I serve as a founding member and co-lead the Signals & Measurement working group (alongside Triton Digital's Spencer Morris). The signals adaptor is one of the reference seller implementations the working group uses to anchor protocol decisions.

The open question in front of the working group now is dimensional. Today’s signal types carry two dimensions of a moment — who and what. The where and the when have no native signal in the stack, and the embeddings that encode them (Google’s PDFM on the spatial axis; hour-of-week as the newer frontier) live in a different geometry from the text embeddings the current signals ride on. Similarity across two geometries is undefined until a spec defines it — which makes bridging them a standards question, not an integration. The Context Economy lays out the argument.

It's also registered on the public agent registry at agenticadvertising.org as a No Fluff Advisory signals provider.

Related writing

## The thesis behind the code.

Whitepaper · PDF

Agentic Audiences Powered by the Universal Content Protocol

A technical whitepaper on embeddings-based agent-to-agent advertising.

Essay · The concept

Read the concept: Signal Containerization

The framework behind this prototype: packaging buyer intent into governed, executable signal objects.

Essay · The comparison

AdCP vs AAMP: The Retrofit and the Greenfield

Repository-level comparison with IAB Tech Lab's AAMP — where the two stacks genuinely compete, verified against both codebases.

Essay

AdCP: The Open Standard for Agentic Advertising

Essay

The Missing Link in Ad Tech: How UCP & AdCP Are Finally Unifying the Alphabet Soup

Essay

AI Agents in Ads Need a Common Language

Essay

Embeddings: The Next Frontier in Advertising?

Essay

The Context Economy

The moment has four dimensions — and where + when have no native signal in the stack yet.

Topic

Embeddings in Advertising

Column · AdExchanger

Data-Driven Thinking

On agentic measurement and audience decisioning.

Talk standards

## Integrating AdCP? Building a provider? Want to contribute?

Get in touch →
