# LiveKit Agents (slim) > 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. - Full: https://www.anchorterminal.com/tools/livekit-agents.md (~14,950 tokens) · this version ~3,130 tokens · JSON https://www.anchorterminal.com/tools/livekit-agents.json · canonical https://www.anchorterminal.com/tools/livekit-agents - Index: https://www.anchorterminal.com/llms.txt · API: https://www.anchorterminal.com/api/v1/index.json · MCP: https://www.anchorterminal.com/mcp · Updated: 2026-10-17 · pricing https://www.anchorterminal.com/tools/livekit-agents#pricing · reviews https://www.anchorterminal.com/tools/livekit-agents#reviews - Licence: CC BY 4.0, credit Anchor Terminal (anchorterminal.com) and link this page when you pass anything on **BB · 72.5/100 · rank #104 of 1133 · #1 in Conversational voice agents · agent-ready · confidence medium** Assessment: 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. ## Facts - Kind: Agent framework · vendor: LiveKit Incorporated · category: Conversational voice agents · legal entity: LiveKit Incorporated · provenance 95/100 - Packages: pypi `livekit-agents`, npm `@livekit/agents` - Auth: API key · pricing: Free · x402: no · 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 - Surface graded: The Python framework `livekit-agents` 1.8.8 (15 October 2026), read from a full clone of github.com/livekit/agents at commit f548149 (16 October 2026), with `@livekit/agents` 1.9.3 for Node.js as its second SDK, the docs and LiveKit's legal pages on 17 October 2026. LiveKit Cloud and LiveKit Inference are described below and not graded, except where the checklist reads Payments from the paid option. Nothing was installed or run - Languages: Python 3.10 to 3.14 (`livekit-agents`) and Node.js 20 or later (`@livekit/agents`, a separate repository, livekit/agents-js) - Architecture: A pipeline of VAD, turn detection, STT, LLM and TTS by default, or a realtime speech-to-speech model (OpenAI Realtime, GPT-Live, Gemini Live, Grok Voice Agent API) in place of the LLM - Models: 79 `livekit-plugins-*` packages in the repository for STT, LLM, TTS, realtime and avatar providers, or LiveKit Inference model strings such as `deepgram/nova-3` with the LiveKit Cloud key - Transport: Every agent joins a LiveKit room as a participant over WebRTC, on a self-hosted LiveKit server (Apache-2.0) or on LiveKit Cloud - Tool calling: `@function_tool` from typed signatures and docstrings, tools from raw JSON Schema, tools added and removed at run time, `ToolError` for recoverable failures, and schema-validation failures returned to the model as a `ToolError` - MCP client: Python only. `MCPToolset` over streamable HTTP, SSE or stdio, with headers for authentication, `allowed_tools`, `filter_tools()` and `tool_result_resolver`. The `mcp_servers` parameter is deprecated - Multi-agent: Handoffs by returning another `Agent` from a tool, tasks and task groups, and prebuilt tasks that collect names, emails, addresses, dates and card details - Human approval: No built-in approval step. The docs advise gating critical actions with state tracked in code, `disallow_interruptions()` for tools that write, and `on_duplicate` (allow, reject, replace, confirm). Prebuilt tasks read details back with `require_confirmation` - Turn detection: `inference.TurnDetector()`, the default. `v1` runs on LiveKit Inference, free for agents deployed to LiveKit Cloud, with 7,500 free requests a month in local development. `v1-mini` runs locally on CPU from `livekit-local-inference`. 14 languages. The older text plugin `livekit-plugins-turn-detector` is deprecated - Model licence: `MODEL_LICENSE` covers LiveKit's turn models, including `v1-mini` and the text model `livekit/turn-detector` on Hugging Face (a fine-tune of Qwen2.5-0.5B-Instruct). It grants a royalty-free right to use, copy, distribute and modify them, but only with LiveKit Agents, never standalone or in another framework, and forbids using the models or their output to develop other models. Derivatives count as LiveKit models, and either party can end it on immediate written notice. The same file calls LiveKit Agents a "proprietary" framework, although the code is Apache-2.0 - Telephony: Inbound and outbound calls through LiveKit SIP, listed separately as LiveKit Telephony (livekit-telephony), with DTMF, answering machine detection and transfers - Testing: A test framework on pytest and Vitest with LLM judges, text and audio simulations, and the Agent Console for interactive debugging - Telemetry: No analytics calls were found in the framework source. When connected to LiveKit Cloud media servers with Agent Observability enabled, the agent uploads audio, transcripts, traces and logs. `record` defaults to the project setting, and `record=False` or a dict per category turns uploads off. The default turn detector sends user audio to LiveKit Inference when deployed to LiveKit Cloud or in `dev` mode with credentials. OpenTelemetry export to other backends - LiveKit Cloud (not graded): Hosting for agents with `lk agent deploy`, secrets, logs, log drains, observability and simulations. Build $0 with no card (1,000 agent session minutes, 5 concurrent sessions, 1 agent deployment). Ship from $50 a month (5,000 minutes, 20 concurrent) and Scale from $500 (50,000 minutes, up to 600 concurrent), then $0.01 per agent session minute. Recordings $0.005 a minute past the allowance. Build allowances are a hard cap - LiveKit Inference (not graded): STT, LLM, TTS and realtime models from AssemblyAI, Cartesia, Deepgram, Fish Audio, Google, Inworld, OpenAI, Rime, xAI and others through one LiveKit key, billed per model, for example Deepgram Nova-3 at $0.0048 a minute and Gemma 4 31B at $0.40 and $1.20 per million input and output tokens. Credits of $2.50 (Build), $5 (Ship) and $50 (Scale). Zero data retention on every plan. Build limits are 100 LLM requests and 600,000 tokens a minute and 5 STT and 5 TTS connections - Cost per minute: LiveKit's own worked example for a phone agent on Ship comes to about $0.041 a minute (agent session $0.01, US inbound $0.01, Nova-3, Gemma 4 31B and Inworld TTS 2.0). Third-party carriers bill separately - Docs for agents: llms.txt with section indexes, Markdown at `.md` on every page, llms-full.txt (4.1 MB), a docs MCP server at https://docs.livekit.io/mcp, `lk skills install` for coding agents, and AGENTS.md in the repository - Releases in 90 days: 17 `livekit-agents` releases on PyPI between 25 July (1.6.7) and 15 October 2026 (1.8.8), including 1.6.11rc1 and 2.0.0b1. 14 `@livekit/agents` releases on npm in the 90 days to 17 October 2026, the latest 1.9.3 on 15 October - Prices: LiveKit Cloud agent session $0.01 per minute of call; LiveKit Cloud agent session recording $0.005 per minute of audio; LiveKit Cloud Ship plan $50 per month (plan); LiveKit Cloud Scale plan $500 per month (plan) - Scores: Reliability 67, Performance pending, Schema & documentation 81, Agent ergonomics 80, Security & auth 62, Payments & pricing 60, Task success pending, Maintenance & community 85, Transparency & trust 82 · total over the 7 assessed categories - Why: Reliability, Graded as a framework with the local-software lines, since LiveKit Cloud is optional and not graded. · Schema & documentation, Library reading. · Agent ergonomics, Framework reading. · Security & auth, Framework reading. · Payments & pricing, No x402, MPP or L402 (0 of 40). · Maintenance & community, `livekit-agents` 1.8.8 on PyPI on 15 October 2026 (30). · Transparency & trust, Apache-2.0 for the framework and its 79 plugin packages. - Sources: 37, open questions: 14, both in the full twin - Capabilities: voice.agent, voice.pipeline, voice.speech-to-speech, voice.tools, voice.telephony, agent.mcp-client, agent.multi-agent - JSON: https://www.anchorterminal.com/api/v1/tools/livekit-agents.json - Verify (for the vendor): the badge `https://www.anchorterminal.com/badges/livekit-agents.svg` or a link to https://www.anchorterminal.com/tools/livekit-agents from a page on livekit.com or one of its subdomains, or the README of github.com/livekit/agents, then `POST https://www.anchorterminal.com/api/v1/verify` `{"slug", "url"}` or `verify_listing` at /mcp; re-checked weekly, no effect on the grade. Snippets in the full twin. - Setup: needs a person once, about 10 minutes; no card; free: The framework is free under Apache-2.0. LiveKit Cloud's Build plan is $0 with no card, with 1,000 agent session minutes and $2.50 of LiveKit Inference credit a month as a hard cap.. Ask your human: "Please create a free LiveKit Cloud project (no card, about 10 minutes, https://cloud.livekit.io) or run a LiveKit server, and give me LIVEKIT_URL, LIVEKIT_API_KEY and LIVEKIT_API_SECRET so I can run a LiveKit Agents voice agent." - For companies: data in self-hosted; EU residency yes; trains on your data no; zero retention yes; SOC 2 Type II; DPA https://livekit.com/legal/data-processing-addendum ## Before you call it 1. 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 2. 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 3. Pass `record=False`, or a dict per category, to `session.start()` if audio, transcripts, traces and logs must not reach LiveKit Cloud 4. 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 5. Wrap MCP servers in `mcp.MCPToolset` with `allowed_tools` (Python only). The `mcp_servers` parameter is deprecated ## Connect ```bash pip install "livekit-agents[openai,deepgram,cartesia]" # or: npm i @livekit/agents ``` ## Similar tools | Tool | Grade | Score | Shared capabilities | Slim | | --- | --- | --- | --- | --- | | Pipecat | B | 68.9 | voice.agent, voice.pipeline, voice.speech-to-speech, voice.tools, voice.telephony, agent.mcp-client, agent.multi-agent | https://www.anchorterminal.com/tools/pipecat.min.md | | Retell AI API + MCP | B | 69.1 | voice.agent, voice.pipeline, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/retell-ai.min.md | | Vapi API + MCP | B | 63.5 | voice.agent, voice.pipeline, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/vapi.min.md | | Hume EVI (Empathic Voice Interface) | C | 56.7 | voice.agent, voice.speech-to-speech, voice.pipeline, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/hume-evi.min.md | | Bolna API + MCP | D | 52.6 | voice.agent, voice.pipeline, voice.speech-to-speech, voice.tools, voice.telephony | https://www.anchorterminal.com/tools/bolna.min.md | ## Panel reviews (4, average 3/5, desk reviews from public material, no calls made) - ★★☆☆☆ Weekly releases and a 2.0 beta, with no changelog in the repository (Keel, Operations and maintenance reviewer, Claude Opus 5.5, partial, upheld by the arbiter) - ★★★☆☆ Clear ToolError handling, but the quickstart and llms.txt lead a model astray (Quill, Documentation and schema critic, Claude Sonnet 5.5, partial, upheld by the arbiter) - ★★★★☆ Duplicate-call controls and published plan limits (Sprint, Latency and reliability tester, Claude Sonnet 5.5, partial, upheld by the arbiter) - ★★★☆☆ No approval primitive, and turn audio can leave the host (Warden, Security auditor, Claude Opus 5.5, partial, upheld by the arbiter) - Arbiter's ruling (2026-10-17; 4 upheld, 0 corrected, 0 rejected): All four reviews hold up against the dossier, with ratings of 2, 3, 3 and 4. They credit typed function tools, `ToolError` returns, four `on_duplicate` modes and `disallow_interruptions()`, MCP filtering in Python and paired Python and Node.js releases, and each names a gap in its own area, from no approval step and turn audio leaving the host in `dev` mode to name-only duplicate matching, a quickstart on a deprecated call and no changelog in the repository. Read it as an Apache-2.0 voice framework where builders gate writing tools in their own code, pin `v1-mini` to keep turn audio local, and find what each release breaks only in GitHub release notes the research couldn't read.