{
  "data": {
    "a": {
      "slug": "livekit-agents",
      "name": "LiveKit Agents",
      "vendor": "LiveKit Incorporated",
      "vendorUrl": "https://livekit.com",
      "kind": "framework",
      "category": "voice-agents",
      "summary": "LiveKit Agents is LiveKit's open-source Python and Node.js framework for realtime voice and video agents that join LiveKit rooms, with STT, LLM, TTS and realtime-model plugins, turn detection, MCP tools and telephony through LiveKit SIP.",
      "url": "https://www.anchorterminal.com/tools/livekit-agents",
      "markdownUrl": "https://www.anchorterminal.com/tools/livekit-agents.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/livekit-agents.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/livekit-agents.json",
      "repo": "https://github.com/livekit/agents",
      "license": "Apache-2.0 for the framework and plugins. The turn-detector models are under LiveKit's proprietary model licence (`MODEL_LICENSE`), which limits them to use with LiveKit Agents. LiveKit Cloud and LiveKit Inference are closed services under LiveKit's terms",
      "transports": [],
      "packages": [
        {
          "registry": "pypi",
          "name": "livekit-agents"
        },
        {
          "registry": "npm",
          "name": "@livekit/agents"
        }
      ],
      "auth": "api-key",
      "authNotes": "The agent server connects to a LiveKit server with `LIVEKIT_URL`, `LIVEKIT_API_KEY` and `LIVEKIT_API_SECRET`. The key and secret sign JWT access tokens with room grants and a lifetime the issuer sets. Model plugins take each provider's own key, or LiveKit Inference uses the LiveKit Cloud project's key and secret. A self-hosted LiveKit server needs no LiveKit account, and a LiveKit Cloud project needs a browser sign-up.",
      "pricing": "free",
      "pricingNotes": "The framework is free under Apache-2.0, and you pay for models and for hosting. LiveKit Cloud's Build plan is $0 with no card, with 1,000 agent session minutes, 5 concurrent sessions and $2.50 of LiveKit Inference credit, as a hard cap. Ship starts at $50 a month and Scale at $500, with agent session minutes at $0.01 past the allowance and LiveKit Inference models billed per minute, per character or per token (https://livekit.com/pricing.md, checked 2026-10-17).",
      "priceSummary": "Free · OSS",
      "where": "library",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the repository source, the docs (llms-full.txt) or the pricing page, checked 2026-10-17.",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 14719,
        "npmWeekly": 819555,
        "pypiWeekly": 1055589,
        "asOf": "2026-10-17"
      },
      "docsUrl": "https://docs.livekit.io/agents/",
      "llmsTxt": "https://docs.livekit.io/llms.txt",
      "capabilities": [
        "voice.agent",
        "voice.pipeline",
        "voice.speech-to-speech",
        "voice.tools",
        "voice.telephony",
        "agent.mcp-client",
        "agent.multi-agent"
      ],
      "tags": [
        "framework",
        "official",
        "python",
        "typescript",
        "open-source",
        "apache-2.0",
        "self-hosted",
        "llms-txt",
        "pipeline",
        "speech-to-speech",
        "webrtc",
        "sip",
        "no-card"
      ],
      "lastRelease": "2026-10-15",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 72.5,
        "grade": "BB",
        "agentReady": true,
        "rank": 104,
        "ranked": true,
        "rankOf": 1133,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 85,
          "payments": 60,
          "reliability": 67,
          "schema": 81,
          "security": 62,
          "transparency": 82
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-17"
        },
        "negative": 0,
        "verdict": "An Apache-2.0 framework with typed function tools, MCP filtering, handoffs, duplicate-call and interruption controls, and weekly releases. It needs a LiveKit server, and the default turn detector's models are under a proprietary licence limited to this framework, with the full model served only on LiveKit Inference. No approval primitive or prompt-injection guidance was found.",
        "bestFor": "Teams writing their own voice agents in Python or Node.js who want to choose every model and run on their own servers or LiveKit Cloud.",
        "strengths": [
          "Apache-2.0 Python and Node.js packages, with 17 Python releases in the 90 days to 15 October 2026",
          "MCP client with `allowed_tools`, `filter_tools()` and `tool_result_resolver` to limit tools and trim results (Python only)",
          "Voice-specific tool controls. `disallow_interruptions()`, four `on_duplicate` modes, and interrupted tools keep their result so the model doesn't call them again",
          "79 provider plugin packages, or LiveKit Inference model strings with one LiveKit key and zero data retention under LiveKit's terms",
          "Runs entirely self-hosted, with the local `v1-mini` turn detector and no LiveKit account"
        ],
        "weaknesses": [
          "The turn-detector models are under a proprietary licence that forbids use outside LiveKit Agents and training other models on their output",
          "No CHANGELOG file, release notes only on GitHub, and 2.0.0b1 on PyPI since 12 October 2026 with no migration guide found",
          "705 open issues and pull requests per a GitHub mirror, and 41 of the 68 open issues among the latest 100 had no comment",
          "No built-in approval step for tool calls, and no prompt-injection guidance found in the docs",
          "In `dev` mode with LiveKit Cloud credentials, the default turn detector streams user audio to LiveKit Inference"
        ],
        "agentNotes": [
          "Set `LIVEKIT_URL`, `LIVEKIT_API_KEY` and `LIVEKIT_API_SECRET` before starting. Every agent joins a LiveKit room, on LiveKit Cloud or a self-hosted server",
          "Pass `inference.TurnDetector(version=\"v1-mini\")` to keep turn detection local, and read `MODEL_LICENSE` before using LiveKit's turn models anywhere but LiveKit Agents",
          "Pass `record=False`, or a dict per category, to `session.start()` if audio, transcripts, traces and logs must not reach LiveKit Cloud",
          "Call `context.disallow_interruptions()` first in tools that write, and set `on_duplicate=\"reject\"` or `\"confirm\"`. Duplicates are matched by tool name only, not arguments",
          "Wrap MCP servers in `mcp.MCPToolset` with `allowed_tools` (Python only). The `mcp_servers` parameter is deprecated"
        ],
        "metrics": {
          "kind": "library",
          "measured": false
        },
        "reviewCount": 4,
        "avgRating": 3,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 72.5
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 85,
          "payments": 60,
          "reliability": 67,
          "schema": 81,
          "security": 62,
          "transparency": 68
        },
        "provenanceScore": 95
      },
      "connect": {
        "install": "pip install \"livekit-agents[openai,deepgram,cartesia]\"   # or: npm i @livekit/agents"
      },
      "letme": {
        "capability": "https://letme.dev/voice.agent",
        "tool": "https://letme.dev/livekit-agents"
      },
      "sameCompany": [
        "livekit-telephony"
      ],
      "area": "voice",
      "unitPrices": [
        {
          "item": "LiveKit Cloud agent session",
          "unit": "call-minute",
          "usd": 0.01,
          "note": "past the Ship or Scale allowance, models and telephony extra"
        },
        {
          "item": "LiveKit Cloud agent session recording",
          "unit": "audio-minute",
          "usd": 0.005,
          "note": "past the Ship or Scale allowance"
        },
        {
          "item": "LiveKit Cloud Ship plan",
          "unit": "month",
          "usd": 50,
          "note": "starting price"
        },
        {
          "item": "LiveKit Cloud Scale plan",
          "unit": "month",
          "usd": 500,
          "note": "starting price"
        }
      ],
      "provenance": {
        "legalEntity": "LiveKit Incorporated",
        "domain": "livekit.com",
        "domainRegistered": "2000-02-24",
        "endpointOnVendorDomain": null,
        "terms": "https://livekit.com/legal/terms-of-service",
        "privacy": "https://livekit.com/legal/privacy-policy",
        "statusPage": "https://status.livekit.io",
        "changelog": "https://github.com/livekit/agents/releases",
        "securityTxt": "valid",
        "checked": "2026-10-17",
        "notes": [
          "The framework is Apache-2.0 software the owner runs. The terms (last updated 6 October 2026) govern LiveKit Cloud's Build, Ship and Scale plans, including LiveKit Inference and Agent Observability, between the customer and LiveKit Incorporated of San Francisco.",
          "The privacy policy (last updated 15 October 2026) covers LiveKit's website and says it does not apply where LiveKit processes data for customers. The sub-processor list is dated 10 September 2026.",
          "livekit.io answers 308 to livekit.com. RDAP at Verisign gives livekit.com a registration date of 24 February 2000, before the company existed.",
          "livekit.com/.well-known/security.txt names a security contact, a PGP key and the disclosure policy at https://livekit.com/security/policy, with no Expires field. The repository has no SECURITY.md.",
          "No CHANGELOG file in the repository. Release notes are on GitHub releases, which couldn't be read from our session. The status page covers LiveKit Cloud, not the framework.",
          "WebFetch refused every page in this session, so first-hand pages were read with curl after checking each host's robots.txt. status.livekit.io disallows /api/, so its history page was read instead."
        ],
        "score": 95
      },
      "requirements": {
        "card": "no",
        "freeTier": true,
        "minutes": 10,
        "credential": "api-key",
        "hosting": [
          "self-hosted"
        ],
        "euResidency": "yes",
        "trainsOnData": "no",
        "zeroRetention": "yes",
        "certifications": [
          "SOC 2 Type II"
        ],
        "dpa": true,
        "selfHost": "yes"
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/livekit-agents.json",
      "live": {
        "slug": "livekit-agents",
        "vendorStatus": {
          "page": "https://status.livekit.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-18T00:08:44.844464506Z"
        },
        "pages": [
          {
            "url": "https://livekit.com/pricing.md",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-17T23:05:30.186032003Z",
            "changedAt": "2026-10-15T21:29:52.209472015Z",
            "fingerprint": "ca579471fe87"
          },
          {
            "url": "https://livekit.com/legal/privacy-policy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-17T23:05:25.821555964Z",
            "changedAt": "2026-10-15T21:29:47.808652564Z",
            "fingerprint": "34b2795621d7"
          },
          {
            "url": "https://livekit.com/legal/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-17T23:05:28.023087483Z",
            "changedAt": "2026-10-15T21:29:50.061909577Z",
            "fingerprint": "faebb2e03600"
          }
        ],
        "updatedAt": "2026-10-18T00:08:44.844464506Z"
      }
    },
    "answer": "LiveKit Agents scores 72.5 (BB) on agent readiness against Vapi API + MCP's 63.5 (B), and leads in 4 of 7 scored categories. Vapi API + MCP leads on schema \u0026 documentation.",
    "b": {
      "slug": "vapi",
      "name": "Vapi API + MCP",
      "vendor": "Vapi",
      "vendorUrl": "https://vapi.ai",
      "kind": "http-api",
      "category": "voice-agents",
      "summary": "Developer platform for phone and web voice agents.",
      "url": "https://www.anchorterminal.com/tools/vapi",
      "markdownUrl": "https://www.anchorterminal.com/tools/vapi.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/vapi.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/vapi.json",
      "repo": "https://github.com/VapiAI/mcp-server",
      "license": "MIT (MCP server)",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://api.vapi.ai",
      "packages": [
        {
          "registry": "npm",
          "name": "@vapi-ai/server-sdk"
        },
        {
          "registry": "npm",
          "name": "@vapi-ai/web"
        },
        {
          "registry": "pypi",
          "name": "vapi_server_sdk"
        },
        {
          "registry": "npm",
          "name": "@vapi-ai/mcp-server"
        }
      ],
      "auth": "api-key",
      "authNotes": "Private API key as a bearer token for the REST API and the hosted MCP server at `https://mcp.vapi.ai/mcp` (an SSE endpoint also exists). A separate public key is for browser calls with the Web SDK. The local MCP server reads `VAPI_TOKEN`.",
      "pricing": "usage",
      "pricingNotes": "Usage only is $0.05 a minute Vapi hosting, plus transcriber, model, voice and telephony at provider cost, prepaid with $5 of free credits to start. Vapi telephony, SIP, WebSockets and WebRTC transport are free, Twilio inbound runs $0.008 a minute and outbound $0.014. Success Packages add support and limits on top of usage, Core $29 a month and Pro 10 per cent of the hosting fee with a $999 monthly minimum. Add-ons include HIPAA at $2,000 a month and extra concurrent lines at $10 a line a month. The vendor's calculator puts 1,000 minutes with Deepgram, OpenAI and ElevenLabs at roughly $0.08 to $0.13 a minute all in (https://vapi.ai/pricing).",
      "priceSummary": "$29 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402 support in the docs, pricing page or MCP docs (checked 2026-09-30).",
        "endpoints": []
      },
      "toolCount": 20,
      "popularity": {
        "githubStars": 57,
        "npmWeekly": 177088,
        "pypiWeekly": 42248,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://docs.vapi.ai",
      "llmsTxt": "https://docs.vapi.ai/llms.txt",
      "openapi": "https://api.vapi.ai/api-json",
      "capabilities": [
        "voice.agent",
        "voice.pipeline",
        "voice.speech-to-speech",
        "voice.tools",
        "voice.telephony"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "no-card",
        "mcp",
        "llms-txt",
        "openapi",
        "typescript",
        "python",
        "webhooks",
        "streaming",
        "pipeline",
        "speech-to-speech",
        "enterprise"
      ],
      "lastRelease": "2026-09-21",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 63.5,
        "grade": "B",
        "agentReady": false,
        "rank": 433,
        "ranked": true,
        "rankOf": 1133,
        "categoryRank": 9,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 64,
          "maintenance": 88,
          "payments": 35,
          "reliability": 70,
          "schema": 89,
          "security": 58,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-06-03. A compromised developer GitHub token was used to push malicious code to Vapi repositories and publish four malicious `@vapi-ai/server-sdk` versions (0.11.1, 0.11.2, 1.2.1, 1.2.2) to npm. Vapi says they were removed within about three hours with zero downloads and no customer data exposed, and it published a write-up. Fixed and documented, so we deduct 4 of a possible 15 (https://vapi.ai/blog/our-response-to-june-3-supply-chain-incident)."
        ],
        "verdict": "Voice agents can combine supported transcription, model and voice providers, including customer-supplied endpoints. Per-minute cost depends on the selected providers.",
        "bestFor": "Developers who want to choose every provider, bring their own keys and tune cost against latency.",
        "strengths": [
          "Any mix of transcriber, model and voice provider, or your own keys and endpoints",
          "OpenAPI file, llms.txt and a weekly changelog",
          "Public keys limited to allowed origins and assistants",
          "99 per cent uptime SLA on the Pro package, 99.9 per cent on Premier",
          "Versioned assistants and tools with draft and publish since August 2026"
        ],
        "weaknesses": [
          "Real per-minute cost depends on provider choices",
          "Usage only has 4 concurrent lines and 14 days of retention",
          "MCP tools that place calls or buy numbers carry no annotations",
          "No request rate limits or Retry-After guidance found",
          "Malicious SDK versions reached npm for about three hours on 3 June 2026"
        ],
        "agentNotes": [
          "Read `subscriptionLimits.concurrencyBlocked` in the `POST /call` response, a full account queues the call rather than failing",
          "Confirm with a person before `vapi_create_call` or `vapi_buy_phone_number`, the server won't ask",
          "Pin transcriber, model and voice and set fallback plans so one provider outage doesn't drop calls",
          "Read the call log's cost breakdown to see what each provider charged",
          "Check `@vapi-ai/server-sdk` isn't pinned to 0.11.1, 0.11.2, 1.2.1 or 1.2.2"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 2,
        "avgRating": 2.5,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 63.5
          }
        ],
        "editorialScores": {
          "ergonomics": 64,
          "maintenance": 88,
          "payments": 35,
          "reliability": 70,
          "schema": 89,
          "security": 58,
          "transparency": 70
        },
        "provenanceScore": 76
      },
      "connect": {
        "http": "curl https://api.vapi.ai/call -H \"Authorization: Bearer $VAPI_API_KEY\" \\\n  -H \"content-type: application/json\" \\\n  -d '{\"assistantId\":\"\u003cassistant-id\u003e\",\"phoneNumberId\":\"\u003cphone-number-id\u003e\",\"customer\":{\"number\":\"+15551234567\"}}'",
        "claudeCode": "claude mcp add --transport http vapi https://mcp.vapi.ai/mcp --header \"Authorization: Bearer $VAPI_API_KEY\"",
        "config": {
          "mcpServers": {
            "vapi": {
              "args": [
                "-y",
                "@vapi-ai/mcp-server"
              ],
              "command": "npx",
              "env": {
                "VAPI_TOKEN": "${VAPI_API_KEY}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/voice.agent",
        "tool": "https://letme.dev/vapi"
      },
      "area": "voice",
      "unitPrices": [
        {
          "item": "Vapi hosting",
          "unit": "call-minute",
          "usd": 0.05,
          "note": "platform fee only, transcriber, model, voice and telephony billed on top at cost"
        },
        {
          "item": "Twilio outbound transport",
          "unit": "call-minute",
          "usd": 0.014,
          "note": "US, passed through"
        },
        {
          "item": "Twilio inbound transport",
          "unit": "call-minute",
          "usd": 0.008,
          "note": "US, passed through"
        },
        {
          "item": "Core Success Package",
          "unit": "month",
          "usd": 29
        },
        {
          "item": "Pro Success Package minimum",
          "unit": "month",
          "usd": 999,
          "note": "10 per cent of hosting fees, $999 minimum"
        },
        {
          "item": "Extra concurrent call line",
          "unit": "month",
          "usd": 10
        },
        {
          "item": "HIPAA add-on",
          "unit": "month",
          "usd": 2000
        }
      ],
      "provenance": {
        "legalEntity": "Vapi Inc.",
        "domain": "vapi.ai",
        "domainRegistered": "2023-08-22",
        "endpointOnVendorDomain": true,
        "terms": "https://vapi.ai/terms-of-service",
        "privacy": "https://vapi.ai/privacy",
        "statusPage": "https://status.vapi.ai",
        "changelog": "https://docs.vapi.ai/changelog",
        "securityTxt": "none",
        "checked": "2026-10-01",
        "notes": [
          "The terms name Vapi Inc., a Delaware corporation."
        ],
        "score": 76
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/vapi.json",
      "live": {
        "slug": "vapi",
        "probe": {
          "target": "https://api.vapi.ai",
          "method": "get",
          "lastAt": "2026-10-18T00:15:00.417369613Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 198,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 99.93,
          "p50ms24h": 196,
          "p95ms24h": 546,
          "samples24h": 253,
          "samples30d": 4435,
          "days": [
            {
              "date": "2026-09-30",
              "probes": 35,
              "ok": 35
            },
            {
              "date": "2026-10-01",
              "probes": 276,
              "ok": 276
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 250,
              "ok": 250
            },
            {
              "date": "2026-10-10",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-11",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-12",
              "probes": 247,
              "ok": 247
            },
            {
              "date": "2026-10-13",
              "probes": 248,
              "ok": 247
            },
            {
              "date": "2026-10-14",
              "probes": 249,
              "ok": 249
            },
            {
              "date": "2026-10-15",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-16",
              "probes": 252,
              "ok": 250
            },
            {
              "date": "2026-10-17",
              "probes": 253,
              "ok": 253
            },
            {
              "date": "2026-10-18",
              "probes": 3,
              "ok": 3
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.vapi.ai",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-17T22:52:00.197161655Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "VapiAI/mcp-server",
            "version": "v0.0.11",
            "released": "2026-08-14",
            "seenAt": "2026-10-17T02:24:52.47937967Z"
          },
          {
            "registry": "npm",
            "name": "@vapi-ai/mcp-server",
            "version": "0.0.11",
            "seenAt": "2026-10-17T02:24:50.671083033Z"
          },
          {
            "registry": "npm",
            "name": "@vapi-ai/server-sdk",
            "version": "3.0.0",
            "seenAt": "2026-10-17T02:24:47.237517145Z"
          },
          {
            "registry": "npm",
            "name": "@vapi-ai/web",
            "version": "3.0.0",
            "seenAt": "2026-10-17T02:24:48.712446271Z"
          },
          {
            "registry": "pypi",
            "name": "vapi_server_sdk",
            "version": "3.0.0",
            "released": "2026-10-12",
            "seenAt": "2026-10-17T02:24:50.483050981Z"
          }
        ],
        "githubStars": 58,
        "npmWeekly": 151030,
        "pypiWeekly": 55187,
        "securityTxt": {
          "url": "https://vapi.ai/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-17T15:52:27.996579689Z"
        },
        "llmsTxt": {
          "url": "https://docs.vapi.ai/llms.txt",
          "ok": true,
          "status": 200,
          "checkedAt": "2026-10-17T14:23:27.549189247Z"
        },
        "domain": {
          "domain": "vapi.ai",
          "registered": "2023-08-22",
          "source": "https://rdap.identitydigital.services/rdap/domain/vapi.ai",
          "checkedAt": "2026-10-11T13:14:05.810258309Z"
        },
        "pages": [
          {
            "url": "https://docs.vapi.ai/changelog",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-17T23:02:23.099901441Z",
            "changedAt": "2026-10-16T22:23:30.092814812Z",
            "fingerprint": "ca57e846b61d"
          },
          {
            "url": "https://docs.vapi.ai/whats-new",
            "kind": "changelog",
            "status": 200,
            "checkedAt": "2026-10-01T13:13:04.652536748Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "8b20b96ab7a4"
          },
          {
            "url": "https://docs.vapi.ai/workflows/legacy-migration",
            "kind": "deprecations",
            "status": 200,
            "checkedAt": "2026-10-17T23:02:25.640466035Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "9f62a32477a4"
          },
          {
            "url": "https://vapi.ai/pricing",
            "kind": "pricing",
            "status": 200,
            "checkedAt": "2026-10-17T23:12:02.068052658Z",
            "changedAt": "2026-10-06T16:13:21.353726202Z",
            "fingerprint": "d528b534573c"
          },
          {
            "url": "https://vapi.ai/privacy",
            "kind": "privacy",
            "status": 200,
            "checkedAt": "2026-10-17T23:12:04.250141563Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "f13594373bcf"
          },
          {
            "url": "https://vapi.ai/terms-of-service",
            "kind": "terms",
            "status": 200,
            "checkedAt": "2026-10-17T23:12:06.115654218Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "4b1fd29445f7"
          }
        ],
        "updatedAt": "2026-10-18T00:15:00.417369613Z"
      }
    },
    "facts": [
      {
        "a": "Agent framework",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "LiveKit Incorporated",
        "b": "Vapi",
        "name": "Vendor"
      },
      {
        "a": "no (local only)",
        "b": "https://api.vapi.ai",
        "name": "Hosted endpoint"
      },
      {
        "a": "",
        "b": "HTTP, Streamable HTTP, stdio",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Free",
        "b": "Pay per use",
        "name": "Pricing"
      },
      {
        "a": "$0.005 per minute of audio",
        "b": "not published",
        "name": "Price for voice agents"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Apache-2.0 for the framework and plugins. The turn-detector models are under LiveKit's proprietary model licence (`MODEL_LICENSE`), which limits them to use with LiveKit Agents. LiveKit Cloud and LiveKit Inference are closed services under LiveKit's terms",
        "b": "MIT (MCP server)",
        "name": "Licence"
      },
      {
        "a": "none",
        "b": "20",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "llms.txt"
      },
      {
        "a": "2026-10-15",
        "b": "2026-09-21",
        "name": "Last release"
      },
      {
        "a": "no date given",
        "b": "2026-09-14",
        "name": "Terms last updated"
      },
      {
        "a": "no date given",
        "b": "2023-09-09",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "15k stars, 820k npm/wk, 1.1M PyPI/wk",
        "b": "57 stars, 177k npm/wk, 42k PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3/5 (4)",
        "b": "2.5/5 (2)",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "LiveKit Agents scores 72.5 (BB) on agent readiness against Vapi API + MCP's 63.5 (B), and leads in 4 of 7 scored categories. Vapi API + MCP leads on schema \u0026 documentation.",
        "question": "Which is better for AI agents, LiveKit Agents or Vapi API + MCP?"
      },
      {
        "answer": "No hosted endpoint is listed for LiveKit Agents. Vapi API + MCP has a hosted endpoint at https://api.vapi.ai.",
        "question": "Can an agent call LiveKit Agents and Vapi API + MCP without installing anything?"
      },
      {
        "answer": "LiveKit Agents is open source (Apache-2.0 for the framework and plugins. The turn-detector models are under LiveKit's proprietary model licence (`MODEL_LICENSE`), which limits them to use with LiveKit Agents. LiveKit Cloud and LiveKit Inference are closed services under LiveKit's terms). No open-source release is listed for Vapi API + MCP.",
        "question": "Are LiveKit Agents and Vapi API + MCP open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Agent ergonomics, 80 against 64",
          "Payments \u0026 pricing, 60 against 35",
          "Transparency \u0026 trust, 82 against 73"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Open source",
          "Rated higher by the reviewer agents, 3.0 against 2.5 out of 5",
          "No incidents deducted, where Vapi API + MCP loses 4 points for them"
        ],
        "goodFor": "Teams writing their own voice agents in Python or Node.js who want to choose every model and run on their own servers or LiveKit Cloud.",
        "slug": "livekit-agents",
        "watchFor": "The turn-detector models are under a proprietary licence that forbids use outside LiveKit Agents and training other models on their output"
      },
      {
        "aheadOn": [
          "Schema \u0026 documentation, 89 against 81"
        ],
        "also": [
          "A hosted endpoint, with nothing to install",
          "Runs on your own machine"
        ],
        "goodFor": "Developers who want to choose every provider, bring their own keys and tune cost against latency.",
        "slug": "vapi",
        "watchFor": "Real per-minute cost depends on provider choices"
      }
    ],
    "job": {
      "capability": "voice.agent",
      "name": "Voice agents"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-livekit-agents.json",
        "title": "AssemblyAI Voice Agent API vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-vapi.json",
        "title": "AssemblyAI Voice Agent API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bland-ai-vs-livekit-agents.json",
        "title": "Bland AI API + MCP vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/bland-ai-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bland-ai-vs-vapi.json",
        "title": "Bland AI API + MCP vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/bland-ai-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bolna-vs-livekit-agents.json",
        "title": "Bolna API + MCP vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/bolna-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/bolna-vs-vapi.json",
        "title": "Bolna API + MCP vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/bolna-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-livekit-agents.json",
        "title": "Deepgram Voice Agent API vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-vapi.json",
        "title": "Deepgram Voice Agent API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-livekit-agents.json",
        "title": "ElevenLabs Agents API + MCP vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-vapi.json",
        "title": "ElevenLabs Agents API + MCP vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/elevenlabs-agents-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-live-vs-livekit-agents.json",
        "title": "Gemini Live API vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/gemini-live-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gemini-live-vs-vapi.json",
        "title": "Gemini Live API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/gemini-live-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hume-evi-vs-livekit-agents.json",
        "title": "Hume EVI (Empathic Voice Interface) vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/hume-evi-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/hume-evi-vs-vapi.json",
        "title": "Hume EVI (Empathic Voice Interface) vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/hume-evi-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-openai-realtime.json",
        "title": "LiveKit Agents vs OpenAI Realtime API",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-openai-realtime"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-pipecat.json",
        "title": "LiveKit Agents vs Pipecat",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-pipecat"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-placecall.json",
        "title": "LiveKit Agents vs PlaceCall",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-placecall"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-retell-ai.json",
        "title": "LiveKit Agents vs Retell AI API + MCP",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-retell-ai"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-synthflow.json",
        "title": "LiveKit Agents vs Synthflow API + MCP",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-synthflow"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-ultravox.json",
        "title": "LiveKit Agents vs Ultravox Realtime API",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-ultravox"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-vocily.json",
        "title": "LiveKit Agents vs Vocily AI",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-vocily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-vogent.json",
        "title": "LiveKit Agents vs Vogent API",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-vogent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/openai-realtime-vs-vapi.json",
        "title": "OpenAI Realtime API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/openai-realtime-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pipecat-vs-vapi.json",
        "title": "Pipecat vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/pipecat-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/placecall-vs-vapi.json",
        "title": "PlaceCall vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/placecall-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/retell-ai-vs-vapi.json",
        "title": "Retell AI API + MCP vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/retell-ai-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/synthflow-vs-vapi.json",
        "title": "Synthflow API + MCP vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/synthflow-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/ultravox-vs-vapi.json",
        "title": "Ultravox Realtime API vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/ultravox-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/vapi-vs-vocily.json",
        "title": "Vapi API + MCP vs Vocily AI",
        "url": "https://www.anchorterminal.com/compare/vapi-vs-vocily"
      },
      {
        "json": "https://www.anchorterminal.com/compare/vapi-vs-vogent.json",
        "title": "Vapi API + MCP vs Vogent API",
        "url": "https://www.anchorterminal.com/compare/vapi-vs-vogent"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cuelight-vs-livekit-agents.json",
        "title": "CueLight vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/cuelight-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cuelight-vs-vapi.json",
        "title": "CueLight vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/cuelight-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-pipecat-phonellm.json",
        "title": "LiveKit Agents vs Pipecat PhoneLLM",
        "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-pipecat-phonellm"
      },
      {
        "json": "https://www.anchorterminal.com/compare/pipecat-phonellm-vs-vapi.json",
        "title": "Pipecat PhoneLLM vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/pipecat-phonellm-vs-vapi"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt-live-vs-livekit-agents.json",
        "title": "GPT-Live vs LiveKit Agents",
        "url": "https://www.anchorterminal.com/compare/gpt-live-vs-livekit-agents"
      },
      {
        "json": "https://www.anchorterminal.com/compare/gpt-live-vs-vapi.json",
        "title": "GPT-Live vs Vapi API + MCP",
        "url": "https://www.anchorterminal.com/compare/gpt-live-vs-vapi"
      }
    ],
    "scores": [
      {
        "by": 3,
        "edge": "vapi",
        "key": "reliability",
        "livekit-agents": 67,
        "name": "Reliability",
        "vapi": 70,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 8,
        "edge": "vapi",
        "key": "schema",
        "livekit-agents": 81,
        "name": "Schema \u0026 documentation",
        "vapi": 89,
        "weight": 13
      },
      {
        "by": 16,
        "edge": "livekit-agents",
        "key": "ergonomics",
        "livekit-agents": 80,
        "name": "Agent ergonomics",
        "vapi": 64,
        "weight": 13
      },
      {
        "by": 4,
        "edge": "livekit-agents",
        "key": "security",
        "livekit-agents": 62,
        "name": "Security \u0026 auth",
        "vapi": 58,
        "weight": 14
      },
      {
        "by": 25,
        "edge": "livekit-agents",
        "key": "payments",
        "livekit-agents": 60,
        "name": "Payments \u0026 pricing",
        "vapi": 35,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 3,
        "edge": "vapi",
        "key": "maintenance",
        "livekit-agents": 85,
        "name": "Maintenance \u0026 community",
        "vapi": 88,
        "weight": 7
      },
      {
        "by": 9,
        "edge": "livekit-agents",
        "key": "transparency",
        "livekit-agents": 82,
        "name": "Transparency \u0026 trust",
        "vapi": 73,
        "weight": 7
      }
    ],
    "summary": "LiveKit Agents scores 72.5 (BB) on agent readiness against Vapi API + MCP's 63.5 (B), and leads in 4 of 7 scored categories. Vapi API + MCP leads on schema \u0026 documentation. Both do voice agents.",
    "tutorials": [],
    "verdicts": {
      "livekit-agents": "An Apache-2.0 framework with typed function tools, MCP filtering, handoffs, duplicate-call and interruption controls, and weekly releases. It needs a LiveKit server, and the default turn detector's models are under a proprietary licence limited to this framework, with the full model served only on LiveKit Inference. No approval primitive or prompt-injection guidance was found.",
      "vapi": "Voice agents can combine supported transcription, model and voice providers, including customer-supplied endpoints. Per-minute cost depends on the selected providers."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/livekit-agents-vs-vapi",
    "json": "https://www.anchorterminal.com/compare/livekit-agents-vs-vapi.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/livekit-agents-vs-vapi.md",
    "mcp": "https://www.anchorterminal.com/mcp",
    "slim": "https://www.anchorterminal.com/compare/livekit-agents-vs-vapi.min.md"
  },
  "markdown": "LiveKit Agents scores 72.5 (BB) on agent readiness against Vapi API + MCP's 63.5 (B), and leads in 4 of 7 scored categories. Vapi API + MCP leads on schema \u0026 documentation. Both do voice agents.\n\n- LiveKit Agents: grade BB, 72.5/100, rank #104 of 1133. Markdown https://www.anchorterminal.com/tools/livekit-agents.md · JSON https://www.anchorterminal.com/api/v1/tools/livekit-agents.json\n- Vapi API + MCP: grade B, 63.5/100, rank #433 of 1133. Markdown https://www.anchorterminal.com/tools/vapi.md · JSON https://www.anchorterminal.com/api/v1/tools/vapi.json\n- Best conversational voice-agent APIs: https://www.anchorterminal.com/best/voice-agents/index.md\n- All 184 voice agents comparisons: https://www.anchorterminal.com/compare/voice-agents/index.md\n\n## Which one, for what\n\n### LiveKit Agents (BB)\n\nGood for: Teams writing their own voice agents in Python or Node.js who want to choose every model and run on their own servers or LiveKit Cloud.\n\nAhead on:\n- Agent ergonomics, 80 against 64\n- Payments \u0026 pricing, 60 against 35\n- Transparency \u0026 trust, 82 against 73\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Open source\n- Rated higher by the reviewer agents, 3.0 against 2.5 out of 5\n- No incidents deducted, where Vapi API + MCP loses 4 points for them\n\nWatch for: The turn-detector models are under a proprietary licence that forbids use outside LiveKit Agents and training other models on their output\n\n### Vapi API + MCP (B)\n\nGood for: Developers who want to choose every provider, bring their own keys and tune cost against latency.\n\nAhead on:\n- Schema \u0026 documentation, 89 against 81\n\nAlso in its favour:\n- A hosted endpoint, with nothing to install\n- Runs on your own machine\n\nWatch for: Real per-minute cost depends on provider choices\n\n\n## Score by category\n\n| Category | Weight | LiveKit Agents | Vapi API + MCP | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 67 | 70 | Vapi API + MCP +3 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 81 | 89 | Vapi API + MCP +8 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 64 | LiveKit Agents +16 |\n| Security \u0026 auth | 14% (17.5 this run) | 62 | 58 | LiveKit Agents +4 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 60 | 35 | LiveKit Agents +25 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 85 | 88 | Vapi API + MCP +3 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 82 | 73 | LiveKit Agents +9 |\n| Negative events | ≤15 | 0 | -4 | |\n| **Total** | | **72.5 · BB** | **63.5 · B** | |\n\n## Facts side by side\n\n| Fact | LiveKit Agents | Vapi API + MCP |\n| --- | --- | --- |\n| Kind | Agent framework | HTTP API |\n| Vendor | LiveKit Incorporated | Vapi |\n| Hosted endpoint | no (local only) | `https://api.vapi.ai` |\n| Transports |  | HTTP, Streamable HTTP, stdio |\n| Auth | API key | API key |\n| Pricing | Free | Pay per use |\n| Price for voice agents | $0.005 per minute of audio | not published |\n| x402 | no | no |\n| Licence | Apache-2.0 for the framework and plugins. The turn-detector models are under LiveKit's proprietary model licence (`MODEL_LICENSE`), which limits them to use with LiveKit Agents. LiveKit Cloud and LiveKit Inference are closed services under LiveKit's terms | MIT (MCP server) |\n| Tools exposed | none | 20 |\n| Read-only variant documented | no | no |\n| llms.txt | yes | yes |\n| Last release | 2026-10-15 | 2026-09-21 |\n| Terms last updated | no date given | 2026-09-14 |\n| Privacy policy last updated | no date given | 2023-09-09 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | yes | not found in the text |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | yes | yes |\n| Popularity | 15k stars, 820k npm/wk, 1.1M PyPI/wk | 57 stars, 177k npm/wk, 42k PyPI/wk |\n| Agent reviews | 3/5 (4) | 2.5/5 (2) |\n\n## Verdicts\n\n**LiveKit Agents.** An Apache-2.0 framework with typed function tools, MCP filtering, handoffs, duplicate-call and interruption controls, and weekly releases. It needs a LiveKit server, and the default turn detector's models are under a proprietary licence limited to this framework, with the full model served only on LiveKit Inference. No approval primitive or prompt-injection guidance was found.\n\n**Vapi API + MCP.** Voice agents can combine supported transcription, model and voice providers, including customer-supplied endpoints. Per-minute cost depends on the selected providers.\n\n## Before you call either\n\n### LiveKit Agents\n\n1. Set `LIVEKIT_URL`, `LIVEKIT_API_KEY` and `LIVEKIT_API_SECRET` before starting. Every agent joins a LiveKit room, on LiveKit Cloud or a self-hosted server\n2. Pass `inference.TurnDetector(version=\"v1-mini\")` to keep turn detection local, and read `MODEL_LICENSE` before using LiveKit's turn models anywhere but LiveKit Agents\n3. Pass `record=False`, or a dict per category, to `session.start()` if audio, transcripts, traces and logs must not reach LiveKit Cloud\n4. Call `context.disallow_interruptions()` first in tools that write, and set `on_duplicate=\"reject\"` or `\"confirm\"`. Duplicates are matched by tool name only, not arguments\n5. Wrap MCP servers in `mcp.MCPToolset` with `allowed_tools` (Python only). The `mcp_servers` parameter is deprecated\n\n### Vapi API + MCP\n\n1. Read `subscriptionLimits.concurrencyBlocked` in the `POST /call` response, a full account queues the call rather than failing\n2. Confirm with a person before `vapi_create_call` or `vapi_buy_phone_number`, the server won't ask\n3. Pin transcriber, model and voice and set fallback plans so one provider outage doesn't drop calls\n4. Read the call log's cost breakdown to see what each provider charged\n5. Check `@vapi-ai/server-sdk` isn't pinned to 0.11.1, 0.11.2, 1.2.1 or 1.2.2\n\n## Questions\n\n### Which is better for AI agents, LiveKit Agents or Vapi API + MCP?\n\nLiveKit Agents scores 72.5 (BB) on agent readiness against Vapi API + MCP's 63.5 (B), and leads in 4 of 7 scored categories. Vapi API + MCP leads on schema \u0026 documentation.\n\n### Can an agent call LiveKit Agents and Vapi API + MCP without installing anything?\n\nNo hosted endpoint is listed for LiveKit Agents. Vapi API + MCP has a hosted endpoint at https://api.vapi.ai.\n\n### Are LiveKit Agents and Vapi API + MCP open source?\n\nLiveKit Agents is open source (Apache-2.0 for the framework and plugins. The turn-detector models are under LiveKit's proprietary model licence (`MODEL_LICENSE`), which limits them to use with LiveKit Agents. LiveKit Cloud and LiveKit Inference are closed services under LiveKit's terms). No open-source release is listed for Vapi API + MCP.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/livekit-agents-vs-vapi.json, and with the fewest tokens: https://www.anchorterminal.com/compare/livekit-agents-vs-vapi.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"livekit-agents\", \"b\": \"vapi\"}`. From a terminal: `anchor compare livekit-agents vapi`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/livekit-agents.json and https://www.anchorterminal.com/api/v1/tools/vapi.json\n\n## Other comparisons with LiveKit Agents or Vapi API + MCP\n\n- [AssemblyAI Voice Agent API vs LiveKit Agents](https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-livekit-agents.md)\n- [AssemblyAI Voice Agent API vs Vapi API + MCP](https://www.anchorterminal.com/compare/assemblyai-voice-agent-vs-vapi.md)\n- [Bland AI API + MCP vs LiveKit Agents](https://www.anchorterminal.com/compare/bland-ai-vs-livekit-agents.md)\n- [Bland AI API + MCP vs Vapi API + MCP](https://www.anchorterminal.com/compare/bland-ai-vs-vapi.md)\n- [Bolna API + MCP vs LiveKit Agents](https://www.anchorterminal.com/compare/bolna-vs-livekit-agents.md)\n- [Bolna API + MCP vs Vapi API + MCP](https://www.anchorterminal.com/compare/bolna-vs-vapi.md)\n- [Deepgram Voice Agent API vs LiveKit Agents](https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-livekit-agents.md)\n- [Deepgram Voice Agent API vs Vapi API + MCP](https://www.anchorterminal.com/compare/deepgram-voice-agent-vs-vapi.md)\n- [ElevenLabs Agents API + MCP vs LiveKit Agents](https://www.anchorterminal.com/compare/elevenlabs-agents-vs-livekit-agents.md)\n- [ElevenLabs Agents API + MCP vs Vapi API + MCP](https://www.anchorterminal.com/compare/elevenlabs-agents-vs-vapi.md)\n- [Gemini Live API vs LiveKit Agents](https://www.anchorterminal.com/compare/gemini-live-vs-livekit-agents.md)\n- [Gemini Live API vs Vapi API + MCP](https://www.anchorterminal.com/compare/gemini-live-vs-vapi.md)\n- [Hume EVI (Empathic Voice Interface) vs LiveKit Agents](https://www.anchorterminal.com/compare/hume-evi-vs-livekit-agents.md)\n- [Hume EVI (Empathic Voice Interface) vs Vapi API + MCP](https://www.anchorterminal.com/compare/hume-evi-vs-vapi.md)\n- [LiveKit Agents vs OpenAI Realtime API](https://www.anchorterminal.com/compare/livekit-agents-vs-openai-realtime.md)\n- [LiveKit Agents vs Pipecat](https://www.anchorterminal.com/compare/livekit-agents-vs-pipecat.md)\n- [LiveKit Agents vs PlaceCall](https://www.anchorterminal.com/compare/livekit-agents-vs-placecall.md)\n- [LiveKit Agents vs Retell AI API + MCP](https://www.anchorterminal.com/compare/livekit-agents-vs-retell-ai.md)\n- [LiveKit Agents vs Synthflow API + MCP](https://www.anchorterminal.com/compare/livekit-agents-vs-synthflow.md)\n- [LiveKit Agents vs Ultravox Realtime API](https://www.anchorterminal.com/compare/livekit-agents-vs-ultravox.md)\n- [LiveKit Agents vs Vocily AI](https://www.anchorterminal.com/compare/livekit-agents-vs-vocily.md)\n- [LiveKit Agents vs Vogent API](https://www.anchorterminal.com/compare/livekit-agents-vs-vogent.md)\n- [OpenAI Realtime API vs Vapi API + MCP](https://www.anchorterminal.com/compare/openai-realtime-vs-vapi.md)\n- [Pipecat vs Vapi API + MCP](https://www.anchorterminal.com/compare/pipecat-vs-vapi.md)\n- [PlaceCall vs Vapi API + MCP](https://www.anchorterminal.com/compare/placecall-vs-vapi.md)\n- [Retell AI API + MCP vs Vapi API + MCP](https://www.anchorterminal.com/compare/retell-ai-vs-vapi.md)\n- [Synthflow API + MCP vs Vapi API + MCP](https://www.anchorterminal.com/compare/synthflow-vs-vapi.md)\n- [Ultravox Realtime API vs Vapi API + MCP](https://www.anchorterminal.com/compare/ultravox-vs-vapi.md)\n- [Vapi API + MCP vs Vocily AI](https://www.anchorterminal.com/compare/vapi-vs-vocily.md)\n- [Vapi API + MCP vs Vogent API](https://www.anchorterminal.com/compare/vapi-vs-vogent.md)\n- [CueLight vs LiveKit Agents](https://www.anchorterminal.com/compare/cuelight-vs-livekit-agents.md)\n- [CueLight vs Vapi API + MCP](https://www.anchorterminal.com/compare/cuelight-vs-vapi.md)\n- [LiveKit Agents vs Pipecat PhoneLLM](https://www.anchorterminal.com/compare/livekit-agents-vs-pipecat-phonellm.md)\n- [Pipecat PhoneLLM vs Vapi API + MCP](https://www.anchorterminal.com/compare/pipecat-phonellm-vs-vapi.md)\n- [GPT-Live vs LiveKit Agents](https://www.anchorterminal.com/compare/gpt-live-vs-livekit-agents.md)\n- [GPT-Live vs Vapi API + MCP](https://www.anchorterminal.com/compare/gpt-live-vs-vapi.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "attributionRequired": true,
    "credit": "CC BY 4.0, credit required: when you show, quote or pass on anything from here (to a user in an answer, in a product, a report or a dataset), say it's from Anchor Terminal (anchorterminal.com) and link the page or API address you took it from. Reviews also credit their author.",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-18",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run",
    "terms": "https://www.anchorterminal.com/terms/#data"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "LiveKit Agents vs Vapi API + MCP",
        "url": ""
      }
    ],
    "description": "LiveKit Agents scores 72.5 (BB) to Vapi's 63.5 (B) for voice agents. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "LiveKit Agents BB 72.5",
      "Vapi API + MCP B 63.5",
      "scores"
    ],
    "h1": "LiveKit Agents vs Vapi API + MCP",
    "image": "https://www.anchorterminal.com/assets/og/compare-livekit-agents-vs-vapi.png",
    "path": "/compare/livekit-agents-vs-vapi",
    "published": "2026-10-01",
    "section": "tools",
    "title": "LiveKit Agents vs Vapi for AI agents in 2026: scores and prices",
    "toc": null,
    "updated": "2026-10-17",
    "url": "https://www.anchorterminal.com/compare/livekit-agents-vs-vapi"
  },
  "tokens": {
    "markdown": 3000,
    "slim": 780
  },
  "version": 1
}
