Inspiration

Calling out of work is an everyday task that causes real anxiety. The fear of sounding unprofessional or dreading the awkward conversation stops people from communicating clearly. Rain Check was inspired by the idea that AI should handle the uncomfortable moments in our work lives by stepping in as an identical, highly-informed vocal proxy.

What it does

Rain Check is an autonomous, real-time AI calling agent. You enter your manager's phone number, select your reason for calling out, and seamlessly clone your own voice directly in the browser by clicking a "Record" button. Rain Check then places a real phone call to your manager using your exact voice.

Unlike simple scripted bots, Rain Check is hooked up to a personal Knowledge Base (FAQs, calendar events, coworker contacts). If the manager asks an unexpected question during the live call, Rain Check dynamically queries your database to retrieve the correct answer and speaks it back naturally.

How we built it

Rain Check is a highly orchestrated, real-time system built on Google Cloud with powerful third-party integrations:

  • Vertex AI (Gemini 2.5 Flash) acts as the central conversational brain and orchestrator.
  • MongoDB Atlas serves as the persistent data layer, integrated via a custom Model Context Protocol (MCP) Server, allowing Gemini to execute live database queries mid-call.
  • ElevenLabs API powers the hyper-realistic instant voice cloning (using the browser's MediaRecorder API).
  • Google Cloud Speech-to-Text transcribes the manager's live responses.
  • Vonage Voice API manages the outbound telephony using bi-directional WebSockets for ultra-low latency audio streaming.
  • Google Cloud Run hosts the containerized backend as a serverless, auto-scaling microservice.

Challenges we ran into

The biggest technical challenge was latency. Managing a live telephone conversation requires sub-second response times. We had to carefully architect the WebSocket stream to concurrently handle Google STT, Gemini API reasoning, MongoDB MCP tool executions, and ElevenLabs TTS audio chunking without the caller ever experiencing an unnatural pause. We also had to fine-tune Voice Activity Detection (VAD) algorithms so the AI wouldn't cut the manager off mid-sentence.

Accomplishments that we're proud of

We are incredibly proud of successfully building a custom Model Context Protocol (MCP) server and wiring it directly into a MongoDB Atlas cluster. Seeing Gemini actively recognize a knowledge gap during a live phone call, trigger a MongoDB query via MCP, and seamlessly return the answer to the caller in a cloned voice is an amazing experience.

What we learned

We learned exactly what it takes to build a low-latency, streaming audio pipeline on serverless infrastructure. We also gained deep experience with the Model Context Protocol, learning how to safely expose database operations to an LLM so it can act autonomously.

What's next for Rain Check

Next steps include adding SMS confirmations, scheduling future call-outs, expanding the MongoDB MCP server to integrate directly with HR scheduling software (like Workday), and offering enterprise deployments for shift-based workforce management.

Built With

Share this project:

Updates