AO Router · one key for agents

One key.Every tool your agent needs.

Models, media, web data, SEO, social networks, Google, domain names and app hosting. One API key, one MCP server, one prepaid wallet. Your agent searches, reads the price, calls.

REST and MCPPrice shown before every callNever below zero
Your API keyBearer ••••3f9x
ModelsChat, text, judgement
MediaImage, video, audio, avatars
Web dataSearch, scrape, crawl
SEOSERPs, keywords, backlinks
SocialPublic data and your accounts
GoogleAnalytics and Search Console
CommunitiesSlack and Telegram
DomainsSearch, register, DNS
HostingDeploy and serve apps

Nine capability families behind a single key

InstagramTikTokYouTubeXLinkedInRedditGoogle AnalyticsSearch ConsoleSlackTelegram

Stop collecting keys.
Start calling tools.

Every family lives in one catalog, with the same call shape and the same wallet.

Models

OpenAI-compatible chat on /v1, text generation with public model aliases, and structured AI judgement.

/v1/chat/completions · text.generate · ai.judge

Media

Images, video, voice and talking avatars. Search a model by name, read its schema, generate.

image.generate · video.generate · audio.generate · avatar.animate

Web data

Search results, clean page extracts, screenshots, structured data, whole-site crawls.

web.scrape · web.search · web.crawl · web.structured

SEO

Search results, keyword volumes, backlinks and AI-search mentions, as jobs you can poll.

seo.backlinks · seo.bing.serp.organic · seo.job-status

Social

Public profiles, posts, comments and transcripts, plus the accounts you connect and publish to.

public.tiktok.search-creators · social.send · social.inbox

Google

Connect Analytics and Search Console once, then query reports with the selected property.

ga.connect · gsc.url-inspection

Communities

Read and post in Slack, follow public Telegram channels and their comments.

community.slack.message.send · community.telegram.*

Domains

Search, register, renew and manage DNS for domain names, paid from the wallet.

domain.search · domain.register · domain.dns.set

Hosting

Deploy a site, an edge function or a container and serve it on your own domain.

app.deploy · app.domain.attach · app.logs

Three moves.
Every capability.

Whatever the tool does, it works the same way over HTTP and over MCP.

Discover

Search the catalog in plain words. Read the exact input, the method and the price before anything runs. Discovery is free.

GET /catalog/search?q=scrape a page

Call

One endpoint for every capability. Paid calls carry an Idempotency-Key, and writes need confirmed: true.

POST /call/web.scrape

Follow

Long jobs answer 202 with a call id. Poll it until the status is final, with the settled cost attached.

GET /calls/

Plug in any agent.
One MCP server.

Claude, Cursor or your own agent: paste this config and the whole catalog is one tool call away.

MCP configuration
{
  "mcpServers": {
    "ao-router": {
      "type": "http",
      "url": "https://apis.ao.me/mcp",
      "headers": { "Authorization": "Bearer <your API key>" }
    }
  }
}

Five tools reach everything.

No per-capability plugins. The agent searches, reads the price, calls and follows.

  • catalog_searchfind capabilities and models
  • catalog_getexact schema and price
  • callrun one, with an idempotency key
  • call_statusfollow a job to its final status
  • connections_listaccounts this key may use

One wallet.
No surprise invoice.

Top up once. Each call is debited at the price shown when it started, and a price never moves afterwards.

WalletIllustrative balance · example prices
23.47USD
web.scrape−0.01 USD
image.generate−0.04 USD
domain.register−11.48 USD
app.deploy · first month−5.00 USD
Price first

The catalog shows the price before the call; the response returns the actual cost.

Never below zero

An empty wallet stops paid calls with 402 instead of running a tab.

Pending isn't failed

Jobs are followed, never resubmitted, so nothing is paid twice.

One format

Every amount reads the same everywhere: 1.80 USD.

Buy the domain.
Ship the app.

The same key takes a project from an idea to a live address, billed to the same wallet.

Domain names

Search availability and yearly prices, register with a price cap, manage DNS, renew automatically.

  • domain.searchavailability and price per year
  • domain.registercapped by max_price_usd
  • domain.dns.setrecords, nameservers, contact
  • domain.renewor auto-renew 30 days before expiry

App hosting

Send a built site, an edge function or a Dockerfile. It goes live at a generated address; attach your domain for HTTPS on your own name.

  • app.uploadthen curl -T project.zip
  • app.deploylive at k3f9x2m7qa4b.ao.page
  • app.domain.attachautomatic HTTPS
  • app.secrets.setlogs, rollback, delete

Before you plug in your agent.

Do I need a separate account for each tool?

No. One AO Router key reaches every capability your account has enabled, over REST or MCP. You never manage vendor keys or dashboards.

How do I know what a call costs?

Every capability shows its price in the catalog before you call it, and each response returns its actual cost in the X-Router-Cost-USD header. Amounts are always written like 1.80 USD.

What happens when my wallet runs out?

Paid calls stop with 402 insufficient_balance and hosted apps pause until you top up. Your balance never goes below zero, so there is no surprise invoice.

Can my agent learn the platform by itself?

Yes. Point it at apis.ao.me/llms.txt: one document that explains every rule, tool and operation.

Your agent is ready.
Give it the keys to everything.

One key, one wallet, every capability. Start with your first call.

Get started with AO Router