LiveKit and Murf
Murf is available as an official TTS plugin for LiveKit Agents, a framework for building voice and multimodal conversational AI applications. Install the livekit-plugins-murf plugin to use Murf as a TTS provider in your LiveKit Agents, with high-quality voice synthesis and real-time streaming.
Murf AI TTS plugin
The Murf plugin integrates Murf’s text-to-speech capabilities with LiveKit Agents. Use it inside an AgentSession or as a standalone speech generator to add natural-sounding voice synthesis to LiveKit-powered conversational AI applications.
Installation
Install the Murf plugin from PyPI as an extra of livekit-agents:
Using pip
Using uv
This installs livekit-plugins-murf alongside a compatible livekit-agents release.
For Existing LiveKit Projects
If you already have a LiveKit project, you can quickly integrate Murf TTS by simply initializing the murf.TTS() class in your existing AgentSession. Make sure you have your Murf API key configured in your environment variables. You can get your Murf API key from the Murf API Dashboard:
View all configuration parameters →
Guide to Building Voice Agents with Murf and LiveKit
This guide provides setup instructions and examples for building your first LiveKit Agent with Murf TTS.
Setup & Requirements
Before running the examples above, ensure you have everything configured properly:
Requirements
- Python >= 3.10
- livekit-agents[murf] ~= 1.5
Required Packages
The examples in this guide use the Murf TTS integration along with specific LiveKit plugins for speech-to-text (Deepgram), language models (OpenAI), and voice activity detection (Silero). Install all packages used in the examples:
API Keys
You’ll need API keys for the services used in your LiveKit Agent:
- Murf API Key: Sign up at the Murf API Dashboard and generate your API key
- LiveKit API Credentials: Get your LiveKit server URL, API key, and secret from LiveKit Cloud.
- Additional Services: Depending on your setup, you may need API keys for STT (e.g., Deepgram) and LLM (e.g., OpenAI) services
Environment Variables
To keep your API keys secure, it’s recommended to use environment variables. Create a .env file in your project root:
Then load these variables in your Python code using python-dotenv:
Quick Start Example
Here’s a simple example of how to create a LiveKit Agent Worker with Murf TTS:
Save this code as agent.py and run it with:
This will start the agent in console where you can directly speak with the agent in the terminal and hear responses in Murf’s natural voice.

Configuration
The murf.TTS class provides extensive configuration options to customize the voice output according to your needs.
TTS Parameters Reference
Complete Example with Custom Configuration
Here’s a more advanced example showing how to customize the Murf TTS configuration with metrics and error handling:
💡 Try it out: For complete working examples and deployment guides, see the LiveKit Murf AI plugin guide.
Features
The Murf TTS integration for LiveKit Agents provides a comprehensive set of features for building voice applications:
- High-Quality Voice Synthesis: Leverage Murf’s advanced TTS technology with access to over 150 voices across 35+ languages
- Real-time Streaming: WebSocket-based streaming for low-latency audio generation, perfect for interactive conversations
- Voice Customization: Control voice style, rate and pitch to match your application’s needs
- Multi-Language Support: Multiple languages and locales with native speaker quality
- Agent Framework Integration: Seamless integration with LiveKit’s Agent framework for building conversational AI
- Flexible Configuration: Comprehensive audio format and quality options including sample rate, channel type, and output formats
Available Voices
Support
If you encounter any issues or have questions:
- Murf API: Documentation · support@murf.ai
- LiveKit plugin: Plugin guide · Plugin reference · Source