Case study — 01
Voice AI Platform
Speech-to-speech agents, as a service.
Architect & Sole Developercall.velombe.com
Speech-to-speech agents that any SaaS product can rent, without giving up its own interface or its own data — architected and built solo, from the WebRTC pipeline to the Ubuntu VPS it runs on.
- Tenant Appapi key → /token
- MCP Discoverytools/list
- Agent Workerlivekit-agents
- LiveKit RoomWebRTC · SFU
- Voice ClientWeb Audio API
Tools resolved per connection, never compiled in.
- Problem
- Adding a voice assistant normally means rebuilding the audio pipeline, the agent loop and the tool layer inside your own product. Every app pays that cost again, and every app's tools get hard-coded into whichever agent framework it picked.
- What I built
- A decoupled, multi-tenant voice backend. A tenant app authenticates with an API key, receives a short-lived audience-scoped JWT, and publishes its own backend tools over MCP. A shared LiveKit agent worker discovers those tools at connect time and calls them bound to the end user's scope. The client is custom Web Audio API — synthesised ringtones, waveform visualisers, and a voice-cloning enrolment flow.
- Key decision
- Tools are resolved per connection, never compiled in. That is the whole design: onboarding a tenant takes zero platform deploys, and a tenant can add a tool without me ever seeing it.
Built with
- Python
- FastAPI
- LiveKit
- WebRTC
- OpenAI Realtime
- xAI Grok Voice
- MCP
- Next.js