Use EchoRelay from an AI agent¶
EchoRelay is built to be driven by AI agents, not just humans. An agent can create and manage your projects, lines, endpoints and API keys, send test traffic, and inspect delivery — all through the same surfaces you'd use by hand.
There are two equivalent ways in; most agents use the first, and fall back to the second.
1. The Agent Skill (recommended)¶
We publish a public Agent Skill — a portable SKILL.md package that teaches any
capable agent (Claude, Claude Code, or anything that reads Agent Skills) how to
integrate EchoRelay end-to-end, MCP-first with a REST fallback.
- Browse it:
mcp.echorelay.dev/skill - Download the package:
mcp.echorelay.dev/skill/echorelay.zip - Discover it programmatically: it's listed in our Agent Skills index with a content digest, so an agent can find and verify it automatically.
The skill covers the core recipes: your first endpoint (project → line → endpoint → test send), zero-downtime key rotation, and debugging a failed delivery through the DLQ.
2. MCP or REST directly¶
If you'd rather wire it up yourself:
- MCP — connect the Model Context Protocol server at
mcp.echorelay.dev(JSON-RPC overPOST /).initialize,pingandtools/listare public;tools/callneeds a management Bearer token. - REST — the same operations over plain HTTP at
https://api.echorelay.dev, described by a machine-readable OpenAPI at/openapi/management.json.
Both authenticate with a project er_mcp_… Bearer token you create in the panel or
mint via the API. (That's different from the er_live_/er_test_ relay keys your
senders use against the data plane — see the skill's reference/auth.md for the full
model.)
Machine-readable discovery¶
Everything an agent needs to find our surfaces is published under
/.well-known/: an RFC 9727 API
catalog, an MCP server card, and the Agent Skills index above. Our homepage also
serves a Markdown view to clients that ask for Accept: text/markdown.
Plans, limits and pricing¶
Agent-driven usage is billed exactly like any other traffic. Rather than restate the
numbers here (they change), fetch them live — list_subscription_plans / get_billing
via MCP, or GET /billing/plans / GET /billing via REST — or see the
pricing page.