Authentication
Send your publisher key in either header. They are interchangeable, and the value is the same:x-mcp-api-key is the one that is read. A request with neither is rejected with
401 Authentification failed: no_api_key.
Serve an ad
https://api.adgentek.ai/functions/v1/mcp-ad-server/get-ad is an alias for this endpoint. Both
accept the same request and return the same response, so existing integrations do not need to
change. Use /ad-server/v1/ for new ones — it matches the click_url and impression_url values
the API returns.Unknown request fields are ignored, not rejected. A misspelled or invented parameter does not
produce an error — the request succeeds and your parameter simply has no effect. Check names
against the table above rather than relying on a validation error to catch a typo.
Response
{ "ads": [] }. Render nothing — no-fill is a normal outcome on
conversational inventory.
Price fields
Both prices are CPM in USD — the price per thousand impressions, not per impression. Per-impression revenue iscleared_price_usd / 1000.
Both are always present on a filled ad.
These two fields currently carry the same number. Both are the winning ad’s clearing price.
bid_price is the name to read if you are running an auction; cleared_price_usd is the name to
read if you are reconciling revenue. Do not treat them as a bid and a separate settlement price
that might differ — today they will not.It is a cleared price, not a raw demand-side bid. The value is what the winning bid cleared
at after the auction ran, which is the price you will actually be credited for. That is normally
what an auction integration wants, but it does mean it is not the gross bid a demand partner
submitted.Rendering and tracking obligations
These three rules determine whether your impressions are billable. They are not optional. 1. Fire the impression pixel client-side, as an image request.click_url from the payload. It routes through the Adgentek redirect layer where click-quality filtering runs. Linking users directly to advertiser destinations breaks CPC billing and fails integration review.
Certification for impression-priced demand
Once your client-side impression implementation is live:- Confirm in your own DevTools that the pixel fires from the browser on render.
- Email hello@adgentek.ai with your placement IDs to request an integration review.
- On approval, Direct and Programmatic demand become eligible for your placements. Certification is per placement and revocable if server-side impression traffic appears.

