Early access sandbox: numbers and calls are simulated today. Join the waitlist for live access.
Early access · waitlist open

Phone numbers and calls for AI agents

One API call buys your agent a real US number. Calls arrive as a two-way audio stream your agent can listen to and speak into, or as SIP to the voice stack you already run. Dialing out unlocks once a human has verified who's behind the account.

◆ Powered by NT Connect and used across the *Craft family of products

Runs on the same carrier network we operate for military, maritime and enterprise customers. Part of the NT Connect platform.

python
sc = httpx.Client(base_url="https://sipcraft.dev",
                 headers={"authorization": f"Bearer {API_KEY}"})

# give your agent a number of its own
num = sc.get("/v0/numbers/search", params={"area_code": "415"}).json()["numbers"][0]
sc.post("/v0/numbers", json={"e164": num["e164"], "confirm": True})

# calls stream to your agent over a WebSocket
sc.patch(f"/v0/numbers/{num['e164']}", json={
    "route_type": "websocket",
    "route_target": "wss://agent.example.com/media"})
How it works

A number, a stream, an agent

SIPCraft is the telephony layer underneath your agent. It isn't a voice-agent builder. Bring any model and any framework; we handle the numbers, the signalling, the audio and the paperwork.

Buy a number

Search by area code or state and buy with confirm: true. Your first number is free. Inbound is live the moment the purchase returns.

Point it at your agent

Route calls to a wss:// media stream (G.711 µ-law, 8 kHz, 20 ms frames), a SIP URI on LiveKit, Pipecat or your own PBX, or a CallCraft agent.

Verify, then dial out

Calling phone numbers needs a one-time Get Verified check powered by Didit (ID, liveness and AML; KYB for businesses) and a consent attestation on every call.

MCP quickstart

Your agent can run its own phone line

A remote MCP server (Streamable HTTP) with 30 tools. Anything that spends money takes an explicit confirm: true. Tools that dial phone numbers refuse until you Get Verified, and they say why. Responses are short JSON, not dumps.

mcp.json
{
  "mcpServers": {
    "sipcraft": {
      "url": "https://sipcraft.dev/mcp",
      "headers": { "Authorization": "Bearer sk_..." }
    }
  }
}
tools
# read
account_overview  get_usage  get_compliance_status
search_numbers  list_numbers  list_calls  get_call
get_recording_url  list_events  get_verification_status
# write (purchases need confirm:true)
buy_number  release_number  configure_number
set_cnam  set_e911_address  create_sip_trunk
set_webhook  test_webhook  get_verified
# on-net, free: no number, no verification
create_endpoint  list_endpoints  call_endpoint
# live calls (phone numbers need Get Verified + consent)
place_call  hangup_call  transfer_call  send_dtmf
start_recording  stop_recording
The API

Numbers, calls and events, over HTTP

REST under /v0 with RFC 9457 problem responses, Idempotency-Key on every write, and scoped API keys. The OpenAPI document is published at /openapi.json.

endpoints
GET    /v0/numbers/search?area_code=
POST   /v0/numbers
PATCH  /v0/numbers/{id}
PUT    /v0/numbers/{id}/e911
POST   /v0/calls
POST   /v0/calls/{id}/hangup|transfer|dtmf
POST   /v0/calls/{id}/recording/start|stop
GET    /v0/calls/{id}
GET    /v0/events?since=
POST   /v0/webhooks
POST   /v0/verification   # Get Verified
POST   /mcp
curl · outbound call
curl https://sipcraft.dev/v0/calls \
  -H "Authorization: Bearer $SIPCRAFT_KEY" \
  -H "Idempotency-Key: 6f1c…" \
  -d '{
    "from": "+14155550123",
    "to":   "+12125550199",
    "stream_url": "wss://agent.example.com/media",
    "consent_attestation": {
      "has_consent": true,
      "basis": "prior_express_consent"
    }
  }'
# 201 {"id":"call_…","status":"in_progress"}
# webhook: SIPCraft-Signature: t=…,v1=HMAC-SHA256
Architecture

What happens when your number rings

The control plane runs on Cloudflare's edge. Signalling and media run on NT's carrier-grade SIP core, with a media bridge that turns each call's audio into a WebSocket your agent can hold.

PSTN caller ──▶ inbound DID carrier ──SIP──▶ NT SIP core  (routing, per-tenant CPS/concurrency)
                                                │
                     route lookup ◀─────────────┤──▶ RTP relay ──RTP──▶ media bridge
                     (SIPCraft API)                                          │
                                                                  wss:// µ-law 8k, 20 ms, mark/clear
                                                                         ▼
                                                                    your agent
Your agent ──POST /v0/calls──▶ SIPCraft ── verified? consent? cap? ──▶ NT SIP core ──▶ outbound carrier
                                   │                                              STIR/SHAKEN signed
       CDR ──▶ queue ──▶ rating ──▶ usage ──▶ prepaid credit ledger
                          └──▶ webhook signed · event log GET /v0/events
Compliance

Verified outbound, or no outbound

An AI that can dial phones is a robocall risk until proven otherwise. These controls are on by default and agents can't switch them off.

◆ Get Verified before dialing

Hosted verification powered by Didit: government ID, liveness and AML screening for individuals; KYB plus signer ID for businesses. outbound_enabled stays false until it passes. NT staff review edge cases.

◆ Consent on every call

Each outbound call carries a consent attestation (basis and timestamp), stored with the CDR. The FCC treats AI-generated voices as "artificial" under the TCPA, so prior express consent applies.

◆ Limits that start small

New accounts get 100 outbound calls a day, low concurrency and a $25 monthly spend cap. Premium-rate and international destinations are blocked. Short-call and failure spikes are flagged for review.

◆ Signed, traceable calls

Outbound calls from verified accounts are signed under STIR/SHAKEN by NT Connect as the originating provider. We answer industry tracebacks.

◆ E911

Register a service address on any number that will place calls ($1/mo). Calls to 911 route to the PSAP for that address.

◆ Recording law

Recording is off until your agent asks for it. In two-party-consent states your agent must say so on the call, and the docs show you how.

Pricing

One price per agent minute

An agent minute is the carrier leg plus the audio stream to your agent, inbound or outbound, rated in 6-second increments. You bring the model. No platform fee and no seat fee. Calls between SIPCraft addresses are free. Usage is pay-as-you-go, drawn from prepaid credit: buy a credit pack, and minutes and number fees come out of your balance.

On-net

Free
SIPCraft to SIPCraft, no phone number
  • ◆ A SIP address for every agent and person
  • ◆ Agent-to-agent calls
  • ◆ Agent to your human on the SIPCraft app or NT Connect App Planned
  • ◆ No verification, no card
  • ◆ Fair use: 1,000 min/mo, 3 calls at once, 10 endpoints
Join the waitlist

Starter

$0
to start, no card
  • ◆ $5 credit (about 190 agent minutes)
  • ◆ First local number free
  • ◆ Inbound calls straight away
  • ◆ Another $5 credit after verification
Join the waitlist

Pay as you go

$0.026 / agent minute
in or out, US & Canada
  • ◆ Local number $1.00/mo
  • ◆ E911 address $1.00/mo per number
  • ◆ Drawn from prepaid credit packs
  • ◆ Outbound after Get Verified
  • ◆ Spend caps you set
Join the waitlist

Volume & SIP

Talk to us
Planned
  • ◆ Raw SIP trunking rates
  • ◆ Toll-free and porting
  • ◆ Higher CPS and concurrency
  • ◆ Committed-use discounts
Early access · talk to us

Prepaid credit packs

Top up in fixed packs; credit never expires while your account is open. Monthly number fees come out of the same balance. Turn on auto top-up to buy a pack when your balance drops below a threshold. Outbound stops at $0 by default so you can't overspend. Payments coming soon

$5
≈ 190 agent min
$10
≈ 380 agent min
$20
≈ 770 agent min
$50
≈ 1,920 agent min
$100
≈ 3,840 agent min

How it compares

SIPCraftTwilioTelnyxVapi
What you getNumber + carrier leg + audio stream to your agentProgrammable Voice (carrier leg only)Elastic SIP (carrier leg only)Hosted voice-agent platform
Per minute (US)$0.026 in or out$0.014 out · $0.0085 in1$0.005 out · $0.0032 in2$0.05 platform fee, before telephony, STT, LLM and TTS3
Local number$1.00/mo, first one free$1.15/mo1$1.00/mo2Via the telephony provider you connect3

Competitor prices are list prices from public pricing pages as of November 2026 and don't include taxes or fees. The products aren't identical: Twilio and Telnyx charge for the carrier leg and leave the agent bridge to you, and Vapi charges its fee on top of the providers you pick. 1 twilio.com/en-us/voice/pricing/us · 2 telnyx.com/pricing/elastic-sip · 3 vapi.ai/pricing. SIPCraft is pre-launch and prices may change before general availability.

Planned

What exists and what doesn't yet

NT Connect

Part of the *Craft family

SIPCraft is the raw telephony layer. CallCraft is the finished voice agent built on top of it. They share one account and one bill through Prism.

Early access

Get a number for your agent

We're opening access in small batches. You'll get one email when your account is ready. No drip campaign.