Inspiration
Kyle recently took part in a campaign as a phone banker and made many calls to both appreciative and unappreciative New Yorkers. During this time, he noticed a gap that nobody was filling. How do we support those grassroots volunteers, helping them prepare for difficult yet important personal questions while providing a scalable and cost-effective solution for campaigns.
What it does
Grassroots is a personalized training tool for phone bankers utilizing versatile AI Voice Agents in order to mimic voters from all backgrounds and areas of the political landscape, including those in extremely unique scenarios.
We've organized each voter's conversation type into easy, medium, and hard level,s allowing the user to progress with confidence. You can start talking to a specific voter, and repeatedly practice until you
It classifies each voter's conversation into easy, medium, and hard, allowing the user to climb up with confidence. You can start talking to a voter profile and practice until you are ready to move forward. After your conversation, we show you your call transcription so that you can better reflect on your experience. This is then stored in our backend and is accessible by Poke using an MCP server integration, where it can rate, evaluate, and recommend improvements.
How we built it
We utilized a NextJS (Frontend), Supabase (Backend + Auth), Google Gemini (LLM), ElevenLabs (Voices), VAPI (Voice Agent Orchestration), Poke (MCP + Text).
Challenges we ran into
Pivoted away from utilizing SNAP AR. Had to deal with bad wifi.
Accomplishments that we're proud of
We created a fullstack app with MCP integrations.
What we learned
We learned how to utilize MCP integrations.
What's next for Grassroots
We will continue to improve our infrastructure.
Built With
- elevenlabs
- fastmcp
- javascript
- mcp
- next.js
- postgresql
- python
- typescript

Log in or sign up for Devpost to join the conversation.