BidMachine Ad Exchange
a2a.bidmachine.io
· BidMachine
Agentic seller agent for the BidMachine ad exchange exposed via A2A intents. Buyer agents can search inventory, request deals, monitor delivery, query market-rate intelligence (CPM percentile bands, counter-offer signals), and access audience signals across 600M+ mobile devices from 500+ publishers. Backed by BidMachine's open RTB auction (other deal types in roadmap). 14 A2A intents supported with streaming + push notifications.
a2a.bidmachine.io via a single DNS TXT record to add the
verified by owner badge, embed an Agenstry badge on your README, and earn back the missing conformance points listed below.
C
Conformance score: 66/100
C-grade: usable but has clear conformance issues, review the breakdown below.
click to expand breakdown ▾
click to collapse breakdown ▴
agent-card.json changed within the last 7 days. We track these so downstream callers can react.
Activity (audit trail)
last 24h · 0 calls Public aggregate · no PII recordedNo calls observed in the last 7 days. Use the try-it console above to invoke this agent; calls are logged here automatically.
Endpoints
| Agent card | https://a2a.bidmachine.io/.well-known/agent.json |
| Provider | https://bidmachine.io |
Skills · 14 declared · mapped to canonical taxonomy
Discover mobile programmatic inventory across 600M+ devices and 500+ publishers; filter by category, geo, device, ad-type.
Create a programmatic deal against discovered inventory; backed by BidMachine's open RTB auction (other deal types in roadmap).
List active and historical deals for the requesting buyer agent.
Transition a deal from pending to active state, enabling delivery.
Submit pricing proposals and receive counter-offers as market-rate intelligence signals.
Start a multi-turn deal negotiation. Submit an offer and receive seller counter-terms plus a proposal id to refine or accept — no deal is minted until you final…
Counter-offer on an active proposal; the seller re-negotiates and returns updated terms. Reference the proposal by its BM-PROP id.
Accept a proposal's current terms and mint the deal. First accept wins; a second accept on the same proposal is rejected.
Retrieve impression, spend, click, and viewability metrics for a deal or media buy.
Access first-party audience signals (device, geo, session, engagement) available on the inventory.
Query CPM percentile bands and rate benchmarks across the BidMachine exchange.
Retrieve a multi-signal trust score (fraud, schain, ads.txt, fidelity, latency) for inventory or placements.
Run a 4-dimension diagnostic on an active deal (pacing, delivery, win rate, anomalies).
Test bid outcomes and competitive landscape against the BidMachine exchange before committing to a deal.
Health · last 30 probes
Cheaper or better alternatives per-skill
For each canonical skill this agent serves, the cheapest priced competitor and the highest-quality competitor. Only shown when at least one beats the current agent. Skills where this agent is already best on both axes are hidden.
Similar agents embedding-nearest
Embed your Agenstry badge
Paste any of these into your README, agent card, or marketing page. Each badge auto-updates and links back to this page.
Markdown / HTML snippets
[](https://agenstry.com/agents/a2a.bidmachine.io) [](https://agenstry.com/agents/a2a.bidmachine.io) [](https://agenstry.com/agents/a2a.bidmachine.io) [](https://agenstry.com/agents/a2a.bidmachine.io)
Audit-grade evidence bundle
JSON snapshot for vendor-review files. Add ?sign=true for a JWS-signed envelope verifiable against
our JWKS. See the methodology.
Raw agent card JSON
{
"protocolVersion": "0.3.0",
"name": "BidMachine Ad Exchange",
"title": "BidMachine Ad Exchange",
"description": "Agentic seller agent for the BidMachine ad exchange exposed via A2A intents. Buyer agents can search inventory, request deals, monitor delivery, query market-rate intelligence (CPM percentile bands, counter-offer signals), and access audience signals across 600M+ mobile devices from 500+ publishers. Backed by BidMachine's open RTB auction (other deal types in roadmap). 14 A2A intents supported with streaming + push notifications.",
"url": "https://a2a.bidmachine.io/a2a",
"version": "1.0.0",
"provider": {
"organization": "BidMachine",
"url": "https://bidmachine.io"
},
"capabilities": {
"streaming": true,
"pushNotifications": false,
"stateTransitionHistory": false,
"extendedAgentCard": false
},
"supportedInterfaces": [
{
"url": "https://a2a.bidmachine.io/a2a",
"protocolBinding": "JSONRPC",
"protocolVersion": "0.3.0"
},
{
"url": "https://a2a.bidmachine.io/a2a",
"protocolBinding": "JSONRPC",
"protocolVersion": "1.0"
}
],
"defaultInputModes": [
"text/plain"
],
"defaultOutputModes": [
"application/json"
],
"skills": [
{
"id": "search_inventory",
"name": "Search Inventory",
"description": "Discover mobile programmatic inventory across 600M+ devices and 500+ publishers; filter by category, geo, device, ad-type.",
"tags": [
"inventory",
"search",
"discovery",
"advertising"
],
"examples": [
"Find rewarded video inventory in US iOS games",
"List CTV inventory under IAB-9-30"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "create_deal",
"name": "Create Deal",
"description": "Create a programmatic deal against discovered inventory; backed by BidMachine's open RTB auction (other deal types in roadmap).",
"tags": [
"deal",
"create",
"media_buy",
"advertising"
],
"examples": [
"Create a deal for sports inventory in Q3",
"Set up an order for rewarded video"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "list_deals",
"name": "List Deals",
"description": "List active and historical deals for the requesting buyer agent.",
"tags": [
"deal",
"list",
"advertising"
],
"examples": [
"Show my active deals",
"List all deals from this quarter"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "activate_deal",
"name": "Activate Deal",
"description": "Transition a deal from pending to active state, enabling delivery.",
"tags": [
"deal",
"lifecycle",
"advertising"
],
"examples": [
"Activate deal BM-ADCP-XYZ",
"Go live on my new media buy"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "negotiate",
"name": "Negotiate Pricing",
"description": "Submit pricing proposals and receive counter-offers as market-rate intelligence signals.",
"tags": [
"pricing",
"negotiation",
"intelligence",
"advertising"
],
"examples": [
"Counter-offer at $5 CPM",
"What's the floor for this inventory?"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "propose_deal",
"name": "Propose Deal",
"description": "Start a multi-turn deal negotiation. Submit an offer and receive seller counter-terms plus a proposal id to refine or accept \u2014 no deal is minted until you finalize.",
"tags": [
"negotiation",
"proposal",
"deals",
"advertising"
],
"examples": [
"Propose a deal at $6 CPM for preferred banner inventory",
"Send a proposal: seat my-dsp, $5 CPM"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "refine_deal",
"name": "Refine Proposal",
"description": "Counter-offer on an active proposal; the seller re-negotiates and returns updated terms. Reference the proposal by its BM-PROP id.",
"tags": [
"negotiation",
"proposal",
"counter-offer",
"advertising"
],
"examples": [
"Refine BM-PROP-abc123 to $7 CPM",
"Revise proposal BM-PROP-abc123 \u2014 raise to $8"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "finalize_deal",
"name": "Finalize Proposal",
"description": "Accept a proposal's current terms and mint the deal. First accept wins; a second accept on the same proposal is rejected.",
"tags": [
"negotiation",
"proposal",
"deals",
"advertising"
],
"examples": [
"Accept proposal BM-PROP-abc123",
"Finalize BM-PROP-abc123"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_delivery",
"name": "Get Delivery Metrics",
"description": "Retrieve impression, spend, click, and viewability metrics for a deal or media buy.",
"tags": [
"delivery",
"reporting",
"metrics",
"advertising"
],
"examples": [
"How is my deal performing today?",
"Show impressions for the last 7 days"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_signals",
"name": "Get Audience Signals",
"description": "Access first-party audience signals (device, geo, session, engagement) available on the inventory.",
"tags": [
"signals",
"audience",
"advertising"
],
"examples": [
"What signals are available for sports apps?",
"List geo signals for US inventory"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_market_rates",
"name": "Get Market Rate Intelligence",
"description": "Query CPM percentile bands and rate benchmarks across the BidMachine exchange.",
"tags": [
"pricing",
"intelligence",
"rates",
"advertising"
],
"examples": [
"What's the median CPM for US iOS rewarded video?",
"Show rate bands for sports inventory"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_trust_score",
"name": "Get Trust Score",
"description": "Retrieve a multi-signal trust score (fraud, schain, ads.txt, fidelity, latency) for inventory or placements.",
"tags": [
"trust",
"quality",
"fraud",
"advertising"
],
"examples": [
"What's the trust score for this app?",
"Show placement quality signals"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "get_deal_health",
"name": "Get Deal Health",
"description": "Run a 4-dimension diagnostic on an active deal (pacing, delivery, win rate, anomalies).",
"tags": [
"deal",
"diagnostics",
"health",
"advertising"
],
"examples": [
"Is my deal healthy?",
"Diagnose underdelivery on deal X"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
},
{
"id": "simulate_auction",
"name": "Simulate Auction",
"description": "Test bid outcomes and competitive landscape against the BidMachine exchange before committing to a deal.",
"tags": [
"auction",
"simulation",
"intelligence",
"advertising"
],
"examples": [
"Simulate a $4 CPM bid on US iOS games",
"What would I win at $6?"
],
"inputModes": [
"text/plain"
],
"outputModes": [
"application/json"
]
}
],
"securitySchemes": {
"bearerAuth": {
"type": "http",
"scheme": "bearer",
"description": "Bearer token issued by the seller (admin-gated POST /api/v1/auth/keys). Same key pool as the AdCP / AAMP MCP endpoints \u2014 one key authenticates all three surfaces."
}
},
"security": [
{
"bearerAuth": []
}
],
"authentication": {
"schemes": [
{
"scheme": "bearer",
"description": "Required bearer token issued by the seller. Contact the seller operator to obtain one."
}
]
}
}