Built for agents.
The plan: every Echo feature as an MCP tool and an API call. Agents will find it, try it without signing up and pay per call, with the cost shown first and a hard cap on every key.
Coming after the private beta. None of this is live yet: there are no API keys, MCP server, CLI, webhooks or agent payments today.
$ npx echo-mcp login✓ key saved · workspace: Your workspace · cap: $40/mo// your MCP client config{ "mcpServers": { "echo": { "command": "npx", "args": ["echo-mcp"] } } }$ curl -H "Authorization: Bearer $ECHO_API_KEY" \ https://api.echobrandtracker.com/v1/visibility?domain=example.org
Why agents pick Echo
Agents pick tools by reading descriptions, trying a call and checking the cost. Echo is built to win each step.
Found where agents look
Planned for the official MCP Registry and major directories, with an A2A agent card, llms.txt, OpenAPI spec and Markdown docs at standard addresses.Tool descriptions written for models
Each tool says what it does, when to use it and when not to, its cost and what it returns, in under 60 words. Verb names, typed inputs.Try before any key
A planned sandbox with realistic data on a demo brand. No signup.Output built for context windows
Summaries first, raw answers behind a link. Trim with fields=; every response has a token_estimate.Errors that say how to fix them
Each error has a code, a one-line cause, the fix and the call to retry.Predictable to run
Rate limits in headers, Retry-After on every 429, idempotency keys, cursor paging and stable IDs. 90 days’ notice before breaking changes.// how a tool describes itself to a model{ "name": "echo_visibility_get", "description": "Visibility score (0–100) for a domain across AI engines. Use to check how often a brand is named or cited in AI answers. Not for web search rankings. Free. Returns score, 30-day trend, top 3 drivers. ~400 tokens.", "input": { "domain": "string", "engines": ["chatgpt", "aio", "perplexity", "gemini", …] }, "annotations": { "readOnlyHint": true, "costCredits": 0 }}
// an error an agent can act on402 { "code": "cap_exceeded", "message": "This call needs $36.00; the key has $12.40 left this month.", "fix": "Raise the key cap, or track 2 prompts instead of 6.", "retry": "PATCH /v1/keys/k_29f { \"cap_usd\": 80 }", "docs": "https://docs.echobrandtracker.com/errors/cap_exceeded.md"}
Every capability, callable.
One data model with stable IDs across REST, MCP and webhooks.
| Capability | REST | MCP tool |
|---|---|---|
| Visibility score | GET /v1/visibility | echo.visibility |
| Prompts × engines | GET /v1/prompts | echo.prompts.list |
| Get an answer, word for word | GET /v1/answers/:id | echo.answers.get |
| Compare two reads | GET /v1/answers/:id/diff | echo.answers.diff |
| Cited sources | GET /v1/sources | echo.sources.list |
| Sentiment by engine | GET /v1/sentiment | echo.sentiment |
| Track a visibility gap | POST /v1/prompts | echo.prompts.track |
| Pause a prompt | PATCH /v1/prompts/:id | echo.prompts.pause |
| Add a client site | POST /v1/sites | echo.sites.add |
| Send a report | POST /v1/reports | echo.reports.send |
| Explain a score change | webhook visibility.changed | echo.drivers |
Three ways to connect
For assistants and coding agents
Planned: about 22 tools for any MCP client. Tools that spend credits ask first.npx echo-mcpFor custom agents and pipelines
JSON, cursor paging and an OpenAPI 3.1 spec. Answers come back word for word, with citations and model.GET /v1/prompts?site=…&engine=perplexityFor agents that react
Planned: signed events when a score moves, an answer changes, a citation is lost or won, or an engine updates its model.answer.changed citation.lostSkills your agent can run
Planned: six workflows as slash commands, with one install for the MCP server and every skill.
# Claude Code/plugin install echo@echo-dev# Codexcodex plugin add echo# any other agentnpx echo-mcp skills addPlanned. These packages aren’t published yet. Skills will be plain SKILL.md files you can edit.
Site setup
Saves brand names, competitors, key pages and goals once, for every other skill.Saves · SITE CONTEXTClient report
Writes the weekly or monthly report for one client, in your white-label template.Saves · REPORT DRAFTWhat changed
Answers that changed since the last read, with the diff and which moves beat the noise.Saves · NOTHING · READ ONLYCitation gaps
Prompts where competitors are cited and you are not, and the pages engines use instead.Saves · NOTHING · READ ONLYPrompt ideas
Turns Search Console queries and competitor gaps into prompts worth tracking.Saves · PROMPT DRAFTSLaunch check
Marks a page you published and tracks which engines pick it up over 14 days.Saves · LAUNCH NOTEAgents draft. People approve.
Agents save their work in Echo. A person approves what goes out.
Starts with site context
Brand names, competitors, key pages, goals and house rules, saved once per site. Every skill reads them first, free.echo.context freeDrafts land in the app
Report drafts, prompts to track and launch notes go to a review queue next to their data.echo.save_report echo.draft_promptsNothing goes out on its own
Nothing is sent, published or charged until someone approves it. Each key is read-only, draft or publish."status": "waiting_for_review"Safe to hand to an agent
Planned to be on by default.
Spending cap on every key
A monthly dollar cap. Calls that would exceed it fail before anything is bought.Scoped keys
Read-only, one site or full access.Preview the cost
Add dry_run=true to see the credits, rate and new monthly total. Nothing is charged.Safe to retry
Send an Idempotency-Key and a repeated call is never billed twice.Cost on every response
Every response says what it spent.Audit log
Every call by key and agent: what it read, bought or changed. Revoke a key in one click.How agents pay
Planned payment options. Nothing can be paid or charged during the private beta.
Pay per call in USDC
An agent with a wallet can use Echo without signing up. Echo replies 402 with the price; the agent pays in USDC and gets the result in the same request.USDC on Base or Solana · settles in secondsBill it to the workspace
An agent with an Echo key spends from the workspace’s monthly bill, within the key’s cap. Best for ongoing tracking.Card · invoice · monthly on the 1stSpend a person has signed off
The agent presents a signed AP2 mandate: who approved it, the limit and expiry. Echo checks it before charging.Limit · expiry · scope checked before chargingTop up, then draw down
Top up an agent’s balance with USDC or card. The key stops when it runs out.Top up with USDC or card · low-balance webhookMachine Payments Protocol (MPP) and card agent tokens
Stripe and Tempo’s MPP, Visa Intelligent Commerce and Mastercard Agent Pay, once agents use them.// 1 · ask for a read that spends creditsPOST /v1/reads { "prompt": "best fact checking sites", "engines": 7 }// 2 · Echo quotes the price402 Payment Required{ "credits": 7, "rate": 1.00, "amount": "7.00", "asset": "USDC", "networks": ["base", "solana"], "pay_to": "0xEc40…", "expires_in": 120 }// 3 · agent retries with payment attachedPOST /v1/reads X-PAYMENT: <signed payload>200 OK answers[7] · receipt: rcpt_8QW… · tx: 0x3fa…
Pricing for agents
Planned pricing for after the beta.
Tracking uses credits. Everything else is free.
A credit is one prompt, read once, on one engine, for one site. Only tracking spends credits, previewed and capped. Reads, site context, drafts and Search Console data are free.See pricing{ "prompts": 5, "engines": 7, "cadence": "daily", "cost": { "credits": 1050, "rate": 0.15, "usd_per_month": 157.50, "account_total_after": 777.90, "cap": 1500.00, "within_cap": true }, "pay_with": ["account", "x402", "ap2_mandate"], "charged": false}
Playbooks
Tested prompts for weekly agency jobs. Copy one into your agent.
Client check-in
Win it back
Prompts worth tracking
Client report
Files for machines
Planned, at standard addresses, so an agent can find, understand and pay for Echo without a web page. None are published yet.