Protocol · FCS-2.1 · Stable

The FCS trust headers are the implementation surface.

Context-matched advertising needs a verifiable substrate before it needs a matching algorithm. FCS — Full-Context Signatures, an open HTTP header protocol — is that substrate: cryptographic content provenance, model lineage, and audit trails that any ad-relevance layer can build on without re-inventing trust.

What FCS is, in one paragraph

FCS is a small set of HTTP response headers (X-FCS-Version, X-FCS-Content-Hash, X-FCS-Model, X-FCS-Signature) that let a publisher attest to where AI-generated or agent-modified content came from. The headers are cryptographically verifiable: a consumer — an agent, a browser, an ad relevance engine — can check the hash against the body, verify the signature against the publisher's key, and read the model lineage as structured data. FCS-2.1 is stable. Apache 2.0 + CALT-Open 1.0.

Why this matters for advertising

Advertising on AI surfaces breaks if the surface itself is not provenance-verifiable. If an agent cannot tell that a piece of content came from a known model, signed by a known publisher, the agent cannot reliably tell whether an ad placement is appropriate — and brand-safety verification collapses into post-hoc audit instead of pre-render check.

FCS does not select ads. FCS makes it possible to know what the agent is looking at before an ad is placed against it. The match layer sits above; the trust layer sits beneath.

The header set

HeaderPurposeRequired
X-FCS-VersionDeclares FCS protocol version (currently 2.1)Yes
X-FCS-Content-HashCryptographic hash of the content body (sha256 / sha512 / blake3)Yes
X-FCS-ModelIdentifies the AI model that generated the content (provider/model:version)Yes for AI content
X-FCS-SignatureCryptographic signature of content + metadata (ed25519 / rsa2048 / ecdsa-p256)Yes

The full specification, including verification examples and key-discovery procedures, lives at the FCS-2.1 spec page linked below.

Where this fits relative to OpenAI Ads

OpenAI Ads selects ad placements against conversation intent using context hints, landing-page content, and ad copy. The product handles auction, creative serving, and the buyer-side dashboard. None of that requires FCS.

But: when an agent surface displays an ad next to AI-generated content, the question "what is this content, and can I trust its provenance?" sits underneath every brand-safety, attribution, and audit decision. FCS answers that question with cryptographic headers, neutrally, in a way no single platform owns.

OpenAI Ads can operate without FCS. Brand teams placing ads on agent surfaces benefit from FCS being present.

What FCS is not

Implementation surface

Three things to add to your origin server's response pipeline:

A reference implementation, header generator, and verification script are in the spec.