We build agents all day, and the thing I keep noticing is that they almost never fail in the middle. They fail at the very last step, when something has to happen in the real world.
Ours kept dying in the same spot: a signup form that texts a six-digit code. Everything up to that point ran fine, and then it just sat there waiting for a human to go and read a text message.
I'm curious what everyone else's version of this is. Not the thing your agent does badly - the thing it does perfectly, right up until it has to stop and hand it back to you.
Verification codes? A booking that only happens by phone? A supplier who answers email once a week? Something that needs an actual human voice on the other end?
Mostly I want to know whether the wall sits in the same place for everyone, or whether it moves depending on what you're building.
Dial
Hey Product Hunt 👋
I'm Gal, founder of Dial.
Last year we were building an AI agent that needed to sign itself up for a service. It got all the way through the form, hit "we've texted you a code," and just... stopped. Dead. There was no workaround. A fully autonomous agent, defeated by six digits sent to a phone it didn't have.
This isn't an AI that answers your phone. It's a phone number that belongs to your AI.
Every agent framework has gotten very good at giving agents tools. But the moment an agent needs to exist in the physical world - verify an identity, call a human, receive a text - it hits a wall that was built for people:
- No way to provision a number programmatically
- Registration paperwork that takes weeks before the first text sends
- Per-seat pricing that makes no sense when you have 100 agents
- No way for an agent to read an inbound code
- Webhooks you have to host and route yourself
So we built the thing we wanted: one API call, and your agent has a real phone number in about 10 seconds.
What it can do:
- Place and receive voice calls, with real-time transcription, using your own LLM or ours
- Send and receive SMS in 200+ countries
- Message over iMessage from its own number, with automatic RCS/SMS fallback
- Read inbound codes, so phone-gated signups stop being a dead end
- One webhook, one format, every channel
The fastest way to see it: paste this into Claude Code, Cursor, Grok Bot, Codex or any agent -
Get yourself a Dial phone number and call me. Say hello and that setup is working, then ask if I have any questions. Follow https://getdial.ai/skills.md
It signs itself up, provisions its own number, and your phone rings. No dashboard, no human in the loop. That's the whole pitch, and you can verify it in about 30 seconds.
We'll be here all day. What's the first thing you'd have your agent call or text? Genuinely curious - the answers to this are how we've picked most of the roadmap so far.
you can also reach us directly at founders@getdial.ai
discord channel - https://discord.com/invite/tEmpesw6GW
PicWish
@galdayan brilliant solution! can I connect it to my claude code and thus I would be able to code via phone calls?
Dial
@mohsinproduct hell yeah! thats exactly how our developers work when they commute
Pretty Dope @galdayan , This is a sign we are about to go full on Sci Fi and define what the new Sci Fi looks like. I know gated estates that uses a GSM module where the ternants calls the Sim Card attached to the Entrance. Imagine if My agent can handle this when I am a ternant.
Deliveries, Visitors will be able to be handled. Ofcourse this is one of the many usecases.
Dial
@olebogeng_mbedzi this is the best use case anyone's sent me today, and the bit you picked out is exactly what makes it work.
Two things line up:
You can point a number's inbound behaviour wherever you want with
so the gate calls your Dial number and your agent picks up instead of you.
And the agent can press keypad digits mid-call. We built that for phone menus, but it's the same thing a GSM module at an entrance is waiting for. So it hears the courier, decides, presses the digit, gate opens. No integration, no new hardware, just a number the module already knows how to dial.
Deliveries and visitors sorted while you're in a meeting beats getting interrupted every time.
Hey guys, this is a super interesting product for a super real problem - makes me question the existence of AI voice agents entirely (and the whole VAD-STT-LLM-TTS stack). Are you using a speech to speech model's API for this?
Dial
@seomaxtech of course! We must maintain low latency and give it a human-like experience. we've in-house SLMs to decide what's the best s2s model to choose every turn to create a perfect experience!
@galdayan Nice!
Fuzzy AI
Love it! Can I add this to my MCP and connect it to my db?
Dial
@serenalam Absolutely! thats exactly our context mcp feature
you can just add our docs to your claude code via and it will just take it from there.
the dial wait-for message.received bit is the actual unlock, not the number itself. does the agent see the whole sms or just the extracted code?
Dial
@niveditha_patluri1 the whole sms. your agent can decide what to do next
how does the 10dlc works? do I still have to wait weeks to get approved?
Dial
@or_stav that's the beauty - no one should be a telecommunication engineer/legal. regulations are sucks. we provide fully managed 10dlc and we just launched our Self-Healing 10DLC - it gets approved in 1-3 days (instead of 10-15 days)
Interesting. I see on the website that it’s $3 per number. Is that the same in every country, or does the price vary by country?
If I don’t actually need a number but need to make calls in different countries for bookings, do you offer a calling service without having a number associated with it? If so, how much does it cost?
Dial
@natalia_iankovych not same pricing, you can contact founders@getdial.ai and we will take it from there
And yes we do offer that service