MCP Quick Start
The Hosted MCP runtime owner has certified this production endpoint as the
fixed AON v1.0 projection. Its evidence is MCP-body based:
initialize.serverInfo.version="1.0.0" and tool-response
data.protocol_version="1.0". MCP clients do not send an
AON-Protocol-Version HTTP selector and the endpoint does not promise that
REST response header.
Use this guide after MCP access is provisioned for your account, only when an
issued API key can successfully authenticate /v1/mcp. The snippets then show
client configuration and an offer-search request while keeping credentials out of this public site.
Need a bounded test path?
MCP requires an issued key. If access is not provisioned for your account, use the non-billable Public Test Sandbox to exercise the raw Query API contract. The sandbox does not configure MCP access or create application credentials.
API key required
<YOUR_AON_API_KEY> with an issued key from the Developer Portal. Keep live keys in local environment variables or secret storage, never in source control.1. Your first search — one curl
curl -s -X POST https://api.aon.pro/v1/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <YOUR_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
}' | python3 -m json.toolThe result's content[0].text is a JSON document. The parts that matter:
{
"code": "SUCCESS",
"data": {
"offers": [
{
"offer_info": { "title": "Crypto.com: Buy BTC, ETH & CRO" },
"entity": { "name": "Foris DAX MT" },
"action": {
"type": "open_url",
"name": "Sign Up",
"payload": { "url": "https://aon.link/3AN6AbHv" }
}
}
],
"request_id": "01a00beb-...",
"protocol_version": "1.0"
},
"extra": {}
}Each offer's action.payload.url is a live, trackable link — open it and
you land on the real product. When present, data.engagement holds follow-up
suggestions the Usage Guide shows you how to act on.
Results are relevance- and geo-aware: supply differs by country, so a
different query can genuinely return an empty list with data.empty_reason —
that is an honest answer, not a failure. Try another category or use
aon_resolve_category to find where the inventory is.
Curious what else the server exposes? List its tools:
curl -s -X POST https://api.aon.pro/v1/mcp \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <YOUR_AON_API_KEY>" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}' | python3 -m json.tool2. Connect your client
All four configurations below use the same explicit API key placeholder.
Claude Code
Claude Code is production-verified by the owner smoke evidence for this runtime. That evidence is specific to Claude Code and this certified endpoint.
# One command — Claude Code stores the server in your project's .mcp.json
claude mcp add --transport http aon https://api.aon.pro/v1/mcp \
--header "Authorization: Bearer <YOUR_AON_API_KEY>"Then just ask: "find me noise-cancelling headphones under $300".
Claude Desktop
Configuration reference only — Claude Desktop has not been independently tested with this release.
Claude Desktop cannot send custom HTTP headers to a remote server, so the
config bridges through mcp-remote
(needs Node.js installed). Restart Claude Desktop after saving.
// claude_desktop_config.json
// macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
// Windows: %APPDATA%\Claude\claude_desktop_config.json
//
// Claude Desktop cannot attach custom HTTP headers itself, so the entry
// bridges through the mcp-remote package (the header is passed via env to
// survive argument splitting on every platform).
{
"mcpServers": {
"aon": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.aon.pro/v1/mcp",
"--header",
"Authorization:${AON_AUTH}"
],
"env": {
"AON_AUTH": "Bearer <YOUR_AON_API_KEY>"
}
}
}
}Cursor
Configuration reference only — Cursor has not been independently tested with this release.
Save the file, then enable the server under Settings → MCP.
// .cursor/mcp.json (project) or ~/.cursor/mcp.json (global)
{
"mcpServers": {
"aon": {
"url": "https://api.aon.pro/v1/mcp",
"headers": {
"Authorization": "Bearer <YOUR_AON_API_KEY>"
}
}
}
}VS Code
Configuration reference only — VS Code has not been independently tested with this release.
Save the file, then start the server from the MCP view or when prompted.
// .vscode/mcp.json
{
"servers": {
"aon": {
"type": "http",
"url": "https://api.aon.pro/v1/mcp",
"headers": {
"Authorization": "Bearer <YOUR_AON_API_KEY>"
}
}
}
}3. Use an issued key
Use the issued AON API key for the enabled account you are configuring. The Developer Portal manages existing application-owned Live Keys; this public guide does not create an application, issue a key, or change account availability.
- Replace the placeholder in your client configuration with the issued key.
- Store the key server-side and only enter it where a client keeps secrets.
- Preserve returned actions and tracking data according to the integration contract.
MCP completion check
Complete this connection only after your issued API key successfully
authenticates /v1/mcp, the selected client configuration connects,
tools/list returns discovery results; one tools/call returns a success
result. The Public Test Sandbox is not MCP access proof. If your issued key
cannot authenticate the endpoint, stop here: this documentation has no
publicly documented entitlement, OAuth, M2M, or application-request action.
Next steps
- Tools Reference — full argument surface of the five tools
- Usage Guide — the guidance loop and session continuity
- Rate Limits & FAQ