Give your AI agents real phone numbers. Handle SMS and voice through one unified webhook. Go live in minutes.
{
"mcpServers": {
"agentphone": {
"command": "npx",
"args": ["-y", "agentphone-mcp"],
"env": {
"AGENTPHONE_API_KEY": "ap_your_key"
}
}
}
}Works with your stack
Your agent calls a restaurant, books a table, and the full transcript streams to your webhook in real time.
Initiating call...
{
"type": "call.transcription",
"call_id": "call_9xR4...",
"agent_id": "agt_demo_01",
"to": "+1 (415) 555-7890",
"transcript": [...],
"status": "in_progress"
}Initiating call...
From zero to a working AI phone agent in under 60 seconds.
Define your AI agent's identity — name, persona, and webhook endpoint.
POST /v1/agentsGet a US or Canadian phone number instantly. No paperwork, no waiting.
POST /v1/numbersPoint to your server. We deliver SMS and voice events in one unified format.
webhook_url: "https://..."Your agent is live. It can receive calls, texts, and respond through your LLM.
→ Ready to receiveUse the REST API for full control, or add AgentPhone as an MCP server and let your AI handle everything through natural language.
Python and TypeScript SDKs coming soon.
# Create an agent curl -X POST https://api.agentphone.to/v1/agents \ -H "Authorization: Bearer ap_your_api_key" \ -H "Content-Type: application/json" \ -d '"name": "Support Bot", "webhook_url": "https://api.you.com/webhook"' # Provision a phone number curl -X POST https://api.agentphone.to/v1/numbers \ -H "Authorization: Bearer ap_your_api_key" \ -H "Content-Type: application/json" \ -d '"agent_id": "agt_abc123", "country": "US"' # Make an outbound call curl -X POST https://api.agentphone.to/v1/calls \ -H "Authorization: Bearer ap_your_api_key" \ -H "Content-Type: application/json" \ -d '"to": "+14155557890", "agent_id": "agt_abc123"'
Everything you need to build phone-enabled AI agents, nothing you don't.
SMS and voice calls arrive as the same event type. One handler for everything — check the channel, process the message, respond naturally.
Every phone number belongs to an agent. Organize conversations by persona, route messages by agent, and scale to hundreds of agents effortlessly.
Get US and Canadian phone numbers on-demand via API. One call, instant activation.
Voice calls are transcribed live and delivered to your webhook with full context.
Messages auto-group by participant. Full conversation history for every interaction.
HMAC-SHA256 signatures on every request. Verify authenticity with zero guesswork.
Exponential backoff with delivery logs. Never miss a webhook delivery.
Initiate voice calls programmatically. Built-in AI conversations or bring your own webhook handler.
Phone-enabled AI for any workflow. Here are some of the most popular use cases.
Deploy AI agents that handle inbound calls and texts 24/7. Real-time transcription powers intelligent, context-aware responses.
Let your agent book, confirm, and reschedule appointments via SMS or voice. Integrates with any calendar system.
Reach out to leads automatically, qualify them with natural conversation, and route hot prospects to your sales team.
Send order updates, reminders, and alerts via SMS. Handle replies intelligently with your AI agent in the loop.
Everything you need to know about AgentPhone.
We currently offer US and Canadian phone numbers, provisioned instantly via API. More countries are on the roadmap — contact us if international numbers are a priority for your use case.
Incoming voice calls are transcribed in real-time and delivered to your webhook as text. You respond with text and we handle text-to-speech. The same webhook format is used for both SMS and voice, so you can use one handler for everything.
Twilio is a general-purpose communications API. AgentPhone is purpose-built for AI agents — with agent-first organization, a unified webhook for SMS and voice, automatic conversation threading, MCP support, and real-time transcription out of the box. What takes dozens of lines with Twilio takes three with AgentPhone.
Number porting is on our roadmap. For now, we provision new numbers instantly. If porting is critical for your use case, reach out and we'll prioritize it.
A unified JSON format for both SMS and voice events. Every webhook includes the channel type, sender, message content (or transcription), conversation context, and agent metadata. See our documentation for the full spec.
AgentPhone works as an MCP (Model Context Protocol) server. This means your LLM can provision numbers, send messages, and handle calls through native tool use — no custom integration code needed. Just add AgentPhone to your MCP config and your agent gets phone capabilities automatically.
No credit card required. Set up your first AI phone agent today.
Already have an account?