streamable-httpupdated 14d ago
Give any MCP-capable agent the ability to recommend real, buyable products and services — live pricing and a trackable link on every offer, drawn from the Agent Offer Network.
What can you do with AON — Agent Offer Network?
AON MCP Server
Give any MCP-capable agent the ability to recommend real, buyable products and services — live pricing and a trackable link on every offer, drawn from the Agent Offer Network.
- Endpoint:
POST https://api.aon.pro/v1/mcp - Transport: Streamable HTTP (stateless JSON-RPC 2.0 — no SSE, no session handshake)
- Auth:
Authorization: Bearer <AON API key>— free keys at the Developer Portal - Try it now: a shared public demo key is published in the Quick Start — one curl, no signup
- Docs: docs.aon.pro/mcp
Tools
| Tool | What it does |
|---|---|
aon_search_offers |
Search offers by natural-language intent. Arguments are an AgentOffer Query request object — the same shape as the REST API. Returns offers with pricing, a tracking link each, and an engagement block of pre-validated follow-up suggestions the agent can act on. |
aon_resolve_category |
Turn free text ("hiking boots", "team chat software") into AON Taxonomy v1 category ids — the model never has to memorize or invent them. |
aon_get_category_schema |
Get the decision factors buyers weigh inside a category, to ask the right clarifying question before searching. |
aon_submit_feedback |
Record an explicit "dismissed" / "not interested" from the user on an offer — never inferred from silence. Early scaffold: the call is acknowledged with success, but feedback is not persisted yet; the workflow behind it is rolling out. |
aon_manage_watch |
Restore (watch) or cancel (unwatch) the default watch on an offer or category when the user explicitly asks. Early scaffold: acknowledged with success, watch state not persisted yet. |
Design notes agents benefit from:
- Forgiving by design — invalid values never fail a search; they are
treated as "not sent" and corrected in
extra.hints[]. Only bad auth, invalid JSON, a missingintent.content, or an oversized body hard-fail. - Relevance-gated — an empty result list is a real answer, never filler.
- Guidance loop — follow-up suggestions carry an RFC 7386
request_patchthat merges straight into the next call, plus anoriginto echo back for adoption attribution.
Quick start
curl -s -X POST https://api.aon.pro/v1/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $AON_API_KEY" \
-d '{
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"name": "aon_search_offers",
"arguments": {
"intent": {
"content": [
{ "type": "input_text", "text": "credit card with cashback" }
]
}
}
},
"id": 1
}'
No key yet? Copy the shared demo key from the
Quick Start into $AON_API_KEY.
Client setup
Ready-to-paste configs live in examples/:
| Client | Config |
|---|---|
| Claude Code | examples/claude-code |
| Claude Desktop | examples/claude-desktop (via mcp-remote) |
| Cursor | examples/cursor |
| VS Code | examples/vscode |
| Plain curl | examples/curl |
Rate limits
/v1/mcp allows 60 tools/call requests per minute per key; handshake
calls (initialize, tools/list, notifications/*) are never counted. An
over-limit tools/call returns HTTP 200 with JSON-RPC error -32000 so the
model can read the retry advice. Details:
Rate Limits & FAQ.
Monetization & attribution
Every offer carries a tracked destination link (action.payload.target).
Surface it verbatim — clicks and conversions attribute to your API key's
application, which is the basis for developer revenue share. Reporting lives
in the Developer Portal.
Registry manifest
server.json is the MCP registry manifest for this server
(schema 2025-12-11, namespace pro.aon — DNS-verified against the aon.pro domain).
Related repositories
protocol— AgentOffer Protocol specs (normative)schema— JSON Schemas, TypeScript types, taxonomyexamples— HTTP / SDK / agent integration examplesrfcs— protocol evolution proposals
License
Install
Add AON — Agent Offer Network to your client. Pick the one you use.
claude mcp add --transport http aon-agent-offer-network https://api.aon.pro/v1/mcpcodex mcp add aon-agent-offer-network --url https://api.aon.pro/v1/mcp{
"mcpServers": {
"aon-agent-offer-network": {
"url": "https://api.aon.pro/v1/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"aon-agent-offer-network": {
"type": "http",
"url": "https://api.aon.pro/v1/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"aon-agent-offer-network": {
"url": "https://api.aon.pro/v1/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"aon-agent-offer-network": {
"serverUrl": "https://api.aon.pro/v1/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
5 tools
AON — Agent Offer Network exposes 5 tools to a connected agent.
- aon_search_offers
- Search offers by natural-language intent. Arguments are an [AgentOffer Query](https://github.com/agentoffernetwork/protocol) request object — the same shape as the REST API. Returns offers with pricing, a tracking link each, and an `engagement` block of pre-validated follow-up suggestions the agent can act on.
- aon_resolve_category
- Turn free text ("hiking boots", "team chat software") into AON Taxonomy v1 category ids — the model never has to memorize or invent them.
- aon_get_category_schema
- Get the decision factors buyers weigh inside a category, to ask the right clarifying question before searching.
- aon_submit_feedback
- Record an explicit "dismissed" / "not interested" from the user on an offer — never inferred from silence. *Early scaffold: the call is acknowledged with success, but feedback is not persisted yet; the workflow behind it is rolling out.*
- aon_manage_watch
- Restore (`watch`) or cancel (`unwatch`) the default watch on an offer or category when the user explicitly asks. *Early scaffold: acknowledged with success, watch state not persisted yet.*
Score
68 / 100
Good
- Documentation25/25
- Maintenance19/25
- Trust6/20
- Capability6/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 7 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 5 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 0.3.0Latest | Aug 25, 2026 |