AgentAds by Oasy · An entry for the OpenAI WebMCP Challenge

The web runs on ads. Agents don’t see ads.

As browsing shifts to agents, every publisher’s ad revenue quietly disappears — agents don’t scroll past banners. AgentAds is one script tag that sells the surface agents do use: a sponsored slot in a page’s WebMCP tools, priced by an auction where quality beats money.

How it works

  1. A site exposes WebMCP tools. This site is the demo: an editorial publisher whose articles are readable by people and callable by agents — list_articles, read_article, search_articles. Open the ⚙ panel in the corner; that is the exact tool list an agent sees.
  2. One script tag runs an auction. <script src="/agentads-sdk.js"> reads the page’s context and asks the marketplace which advertiser gets the sponsored tool slot. Ranking is rankScore × bid — the money is only half the argument.
  3. The winner becomes one extra tool. It is registered next to the site’s own tools, never in their place, and its description opens with the sponsor’s name. The agent decides whether it’s worth calling — nothing is injected into content.
  4. The site owner is paid per call. The winner pays a quality-weighted second price — just enough to beat the runner-up — and 70% of every call goes to the publisher, ticking up live on the page.

rankScore = 0.7 × call-through + 0.3 × conversions, blended with a prior that fades as impressions accumulate

adRank = rankScore × bid  ·  winner pays adRank₂ ÷ rankScore₁

rankScore isn’t asserted, it’s measured: the auction logs an impression each time it serves a tool, the SDK reports every call, and attribution links count conversions. A tool agents ignore loses its slot on its own — and a 10% exploration share lets losing bidders earn the data to climb.

The auction, live

Pick a page context. This runs the same endpoint the article pages use, with the same bidders and the same math.

Running the auction…

Why quality has to win

An agent is a perfect ad-blocker: it reads every tool description and calls only what helps its task. Attention sold to an optimizer is worth nothing — being the tool an optimizer chooses is worth everything. That is why the auction weighs measured usefulness above the bid, and why the whole thing is shown openly: the bidder table, the price paid, the publisher’s earnings, every call. An ad market for agents survives only if nobody has to be tricked.

Try it yourself

And this page eats its own dog food — the ad unit below is live, auctioned for this page like on any article:

This site is a fictional demo publisher, built for this entry by Oasy — the advertising layer for the AI era. The people in its articles, the advertisers and the prices are invented; the auction, the payments ledger and the telemetry are real code.