- Client — self-registers a public OAuth client at startup via Dynamic Client Registration (pin
AGENTCARD_OAUTH_CLIENT_IDto use your own instead; production apps usually pin a client). - User auth — the “Connect with Agentcard” OAuth flow with PKCE, run by a small connect/callback server in the same process, tokens persisted per user.
- MCP — a card toolset (create_card, list_cards, get_card_details, check_balance, close_card, approve_request, transactions, get_plan) called with each user’s token — cards isolated per app and user.
bun run dev), and each ships offline e2e, provider, and contract tests.
The examples
| Example | Surface |
|---|---|
| Photon | Agent-first iMessage / WhatsApp / Slack framework — the reference build |
| Sendblue | iMessage API for business |
| LoopMessage | iMessage Conversation API |
| Linq | iMessage / SMS / RCS partner API |
| BlueBubbles | Open-source self-hosted iMessage server |
| Twilio | Programmable Messaging (SMS/MMS) |
| Respond.io | Omnichannel customer conversation API |
| Hermes | Self-hosted agent messaging gateway (signed webhooks) |
| Vercel Chat SDK | AI SDK chatbot — a POST /api/chat endpoint |