AgentPhone.app vs AgentPhone.to: Phone Calls vs Phone Numbers
Same Name, Different Products
If you search for "AgentPhone," you'll find two products. They solve different problems for the same audience — developers building AI agents.
AgentPhone.app (this site) is an outbound phone call API. Your AI agent sends a phone number and an objective, and gets back a completed call with outcome, transcript, and recording. Your agent makes calls.
AgentPhone.to is a phone number provisioning service. You get US and Canadian phone numbers via API, assigned to your agents. Incoming calls and SMS are transcribed and delivered to your webhook. Your agents receive calls and messages.
What Each Product Does
AgentPhone.app — Outbound Calls
Your agent needs to call a restaurant, a dentist office, an insurance provider, a vendor. It sends one API request:
curl -X POST https://agentphone.app/api/v1/calls \
-H "x-api-key: YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{
"to_phone_number": "+14155551234",
"objective": "Book a table for 2 at 7pm tonight"
}'
AgentPhone.app handles the call — dialing, conversation, speech — and returns structured JSON: outcome, summary, transcript, recording URL. Your agent parses the result and continues its workflow.
Key features:
- One API call to place an outbound phone call
- Objective-based — describe what the call should accomplish
- Structured results your agent can act on
- Works with LangChain, CrewAI, OpenAI Agents SDK, MCP
- No telephony setup, no voice configuration
AgentPhone.to — Inbound Numbers
Your agent needs a phone number — to receive calls, handle SMS, or have a persistent identity. AgentPhone.to provisions numbers via API:
Key features:
- US and Canadian phone numbers on-demand
- Unified webhook for voice and SMS
- Real-time call transcription delivered to your webhook
- MCP server support — your LLM provisions numbers through tool use
- Conversation threading and history per agent
Side-by-Side
| AgentPhone.app | AgentPhone.to | |
|---|---|---|
| Direction | Outbound — your agent calls others | Inbound — others call your agent |
| Core feature | Makes phone calls | Provides phone numbers |
| Agent interaction | Agent triggers a call via API | Agent receives calls/SMS via webhook |
| Voice handling | Fully managed — conversation handled automatically | Transcription delivered, you handle responses |
| Structured output | Outcome, summary, transcript, recording | Raw transcription + message history |
| MCP support | Yes | Yes |
| Numbers provided | No — you provide the target number | Yes — US/CA numbers on-demand |
Which Do You Need?
You need AgentPhone.app if:
- Your agent needs to call businesses, vendors, or contacts
- You want structured call outcomes (achieved/not achieved)
- Phone calls are an action your agent takes autonomously
- You don't need your agent to have its own phone number
You need AgentPhone.to if:
- Your agent needs a dedicated phone number
- You're building an agent that receives inbound calls or SMS
- You need conversation threading across multiple interactions
- Each agent needs its own identity and number
You might need both if:
- Your agent needs to both make and receive calls
- You want a persistent number for callbacks after outbound calls
- You're building a full-stack phone-capable agent
They're Complementary
These aren't competing products. AgentPhone.to gives your agent a phone number. AgentPhone.app gives your agent the ability to call. Together, your agent has full phone capabilities — it can call out and be called back.
Make outbound calls with AgentPhone.app →
Get phone numbers at AgentPhone.to →
Related
- AI Voice Agent Platforms Compared — full comparison guide
- How to Let Your AI Agent Place Phone Calls — getting started with AgentPhone.app
