AI Voice Connector · REST + MCP

Outbound AI calls,
as one API call

Send a task and a list of numbers. Our platform dials, an AI agent holds the conversation, hangs up when the goal is met, and posts structured results — matching your JSON schema — back to your CRM via signed webhooks.

Sandbox included — test the full pipeline without placing a single real call

from $0.09/minall-in: AI + telephony, one bill
REST + MCPnative tool for Claude & AI agents
Your schemaresults extracted to your JSON
Own carrierno reseller stack, exotic destinations OK

How it works

You define the outcome. The platform does the calling.

Create a campaign

POST a task (plain text or structured spec), contacts with your CRM ids, and a result schema — e.g. {"will_attend": "boolean"}. Our compiler turns your task into a guarded system prompt: the bot introduces itself, discloses recording, stays on script, resists prompt injection.

The dialer works the list

Deterministic dialer (not an LLM) handles calling windows, timezones, retries on busy/no-answer, concurrency caps and do-not-call lists. The AI only talks; the engine decides who to call and when.

Structured results flow back

After each call: transcript, outcome, and your schema filled with evidence-grounded values (no hallucinated answers — unsupported fields come back null). Signed webhooks: call.ended, call.analyzed, campaign.completed.

The API, in 20 seconds

Create → start → receive webhooks. That's the whole integration.

# 1. Create a campaign
curl -X POST $BASE/v1/campaigns \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{
    "name": "webinar reminders",
    "company_display_name": "Acme",
    "consent_confirmed": true,
    "raw_prompt": "Remind about tomorrow'\''s 3pm webinar, ask if they will attend.",
    "contacts": [{"phone": "+15551234567", "metadata": {"crm_lead_id": "L-42"}}],
    "result_schema": {"type": "object", "properties": {
      "will_attend": {"type": "boolean"},
      "outcome": {"type": "string", "enum": ["confirmed", "declined", "unclear"]}}},
    "callback_url": "https://crm.acme.com/aipbx/webhook"
  }'

# 2. Start it
curl -X POST $BASE/v1/campaigns/$ID/start -H "Authorization: Bearer $TOKEN"

# 3. Receive signed webhooks
{
  "event_type": "call.analyzed", "api_version": "v1",
  "data": {"call": {
    "metadata": {"crm_lead_id": "L-42"},
    "extracted": {"will_attend": true, "outcome": "confirmed"}
  }}
}
MCP native

A tool your AI agents can call

13 MCP tools over streamable-HTTP: create_campaign, start_call, get_campaign, manage_dnc and more. Plug it into Claude, agent frameworks or your orchestrator — your agent literally makes phone calls.

Sandbox

Test without telephony

test_mode=simulated + magic numbers run the entire pipeline — compiler, dialer, extraction, webhooks — with zero real calls and zero spend. Your integration is proven before the first ring.

What's in the box

Campaign engine

Calling windows per timezone, retry matrix per outcome, concurrency caps, circuit breaker, crash-safe state machine.

Prompt compiler

Your task → guarded system prompt. Recording disclosure, guardrails, injection resistance — enforced, not optional.

Result extraction

Conversation → your JSON schema, evidence-grounded. Verbal opt-outs automatically land in the DNC list.

Signed webhooks

HMAC-SHA256 per-tenant signatures, exactly-once event keys, 8 retries with backoff. Verification snippets included.

Agent hangs up

The AI ends the call when the goal is met — no zombie calls billing minutes while nobody talks.

Own telephony underneath

Our trunks, our DIDs, our routing. That's why all-in pricing works — and why hard destinations are on the menu. Need trunking only?

Pilot pricing

One number on the bill: AI + telephony together. Typical AI-voice stacks land at $0.15–0.36/min once you add up platform, LLM, voice and carriage.

from $0.09/min all-in

AI conversation + telephony

  • Per-second billing after the first minute
  • Destination-based — exact quote in 24h
  • Volume discounts from day one
$0 platform fee for pilots

Concierge pilot

  • We help write your first campaign
  • Sandbox + test tenant in a day
  • Direct engineer support

FAQ

How is this different from Vapi / Retell / Bland?

Three things. (1) We own the telephony — no reseller markup, and destinations others don't offer. (2) Results, not recordings: you define a JSON schema, we return it filled and evidence-grounded. (3) Concierge model: an engineer sets up your pilot with you instead of leaving you alone with docs.

Which languages can the agent speak?

Conversations run on Google Gemini realtime voice — strong in English, Russian, and most major languages. Tell us your target market and we'll validate it in your pilot.

What about robocall compliance?

The compiled prompt always discloses it's an automated call and honors opt-outs (straight into DNC). You bring consent for your contact list; onboarding includes a compliance checklist for your jurisdiction. We refuse use cases that can't be run clean.

Can I bring my own CRM?

Any system that can POST JSON and receive webhooks integrates in a day — we ship signature-verification snippets (Python/Node) and correlation ids (your CRM lead id round-trips through every event).

Inbound calls?

Outbound is production today. Inbound (AI receptionist on a DID) is on the roadmap — mention it in the form and we'll loop you into the beta.

Get pilot API access

Tell us your use case — you get a test tenant, sandbox access and an engineer to walk your first campaign with you.

No spam, no drip campaigns. One engineer reads this and replies once.