This project implements a voice agent that combines web search capabilities via Firecrawl with Supabase database operations through MCP (Model Context Protocol).
Ensure you have Python 3.x installed and run:
pip install -r requirements.txtThis implementation uses AssemblyAI's services for speech-to-text, along with Firecrawl for web search and Supabase for database operations.
- Firecrawl API key
- Supabase access token
- OpenAI API key
- AssemblyAI API key
- LiveKit credentials
Copy .env.example to .env and configure the following environment variables:
FIRECRAWL_API_KEY=your_firecrawl_api_key
SUPABASE_ACCESS_TOKEN=your_supabase_token
OPENAI_API_KEY=your_openai_api_key
ASSEMBLYAI_API_KEY=your_assemblyai_api_key
LIVEKIT_URL=your_livekit_url
LIVEKIT_API_KEY=your_livekit_api_key
LIVEKIT_API_SECRET=your_livekit_api_secret
Start the agent using:
python agent.pyThe agent will:
- Connect to LiveKit
- Initialize the MCP server for Supabase integration
- Set up voice interaction capabilities
- Start listening for user input
- Real-time web search using Firecrawl
- Supabase database integration via MCP
- Voice interaction capabilities:
- Silero VAD (Voice Activity Detection)
- AssemblyAI Speech-to-Text
- OpenAI GPT-4 for language processing
- OpenAI TTS for text-to-speech
Get a FREE Data Science eBook 📖 with 150+ essential lessons in Data Science when you subscribe to our newsletter! Stay in the loop with the latest tutorials, insights, and exclusive resources. Subscribe now!
Contributions are welcome! Feel free to fork this repository and submit pull requests with your improvements.
