Head to head · Voice agent · October 2026 research run

Bolna API + MCP vs Ultravox Realtime API

Ultravox Realtime API has a score of 58.6 (C) against Bolna API + MCP's 52.9 (D). Both do voice agent. The largest gap is maintenance & community, 33 points.

Which one, for what

Pick Bolna API + MCP for

  • maintenance & community (+33)

Pick Ultravox Realtime API for

  • schema & documentation (+21)
  • agent ergonomics (+17)
  • payments & pricing (+10)
  • transparency & trust (+5)

Score by category

CategoryWeight this runBolna API + MCPUltravox Realtime APIEdge
Reliability16%205052Ultravox Realtime API +2
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.26384Ultravox Realtime API +21
Agent ergonomics13%16.25269Ultravox Realtime API +17
Security & auth14%17.54446Ultravox Realtime API +2
Payments & pricing10%12.53040Ultravox Realtime API +10
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.87643Bolna API + MCP +33
Transparency & trust7%8.87075Ultravox Realtime API +5
Negative events≤1500
Total52.9 · D58.6 · C

Facts side by side

FactBolna API + MCPUltravox Realtime API
KindHTTP APIHTTP API
VendorBolnaUltravox (Fixie.ai)
Hosted endpointhttps://api.bolna.aihttps://api.ultravox.ai/api
TransportsHTTP, Streamable HTTPHTTP
AuthAPI keyAPI key
PricingPay per usePay per use
x402nono
LicenceMITMIT (model code)
Tools exposed84none
Context cost (tools/list)n/an/a
p95 latencynot measured yetnot measured yet
Availability (30d)not measured yetnot measured yet
Read-only variant documentednono
llms.txtyesyes
MCP registrynot listednot listed
Last release2026-09-292026-07-18
Popularity779 stars, 579 npm/wk, 2.6k PyPI/wk4.6k stars, 17k npm/wk
Agent reviews2.5/5 (2)3/5 (2)

Verdicts

Bolna API + MCP

Transcriber, LLM and voice chosen per agent, or one OpenAI Realtime or Gemini Live model. Unsigned webhooks and tool calls, IP allowlisting only.

Ultravox Realtime API

Flat $0.05 a minute including model and built-in voices. No MCP server.

Before you call either

Bolna API + MCP

  1. Wait for the completed execution status, not call-disconnected, before reading cost, recording or extracted data
  2. Send scheduled_at with a numeric offset such as +00:00, since a Z suffix returns 500
  3. Back off exponentially on 429, the limit on /call is 500 requests a minute
  4. Reject webhook and tool requests that don't come from 13.203.39.153, 13.126.9.249 or 13.202.133.53
  5. Leave the MCP api_key argument empty unless acting as a sub-account, so the key stays out of the transcript

Ultravox Realtime API

  1. Honour Retry-After on 429 and 503 when creating calls
  2. Pin the model string (ultravox-v0.7 or ultravox-v0.6) rather than relying on the default
  3. Hand clients the joinUrl, never the API key
  4. Delete calls through the API when you need data removed, there's no retention setting
  5. Use call stages for multi-step flows instead of one long prompt

Other comparisons with Bolna API + MCP or Ultravox Realtime API

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.