Inspiration
Have you ever missed a life-changing email because it was buried in your inbox? Or worried about a loved one falling for a scam?
Our inspiration was personal. One of our teammates missed a job offer email while busy with school and work. We realized email hasn’t evolved to match how overwhelming and critical it has become. That’s why we built uOttaMail.
What it does
uOttaMail is an AI inbox firewall that treats email as a real-time event stream.
As emails arrive, multiple specialized AI agents analyze them in parallel to:
- Prioritize urgent and important messages
- Summarize long threads
- Detect scam and malicious emails
- Analyze tone and intent
- Extract to-do items
On top of this, uOttaMail includes an AI Search Agent powered by a RAG-style architecture. The Search Agent can query stored emails and aggregate insights produced by all other agents: priority scores, summaries, tone analysis, security results, and action items to answer natural-language questions about your inbox.
The result is a smarter, safer inbox where important messages are never missed.
How we built it
We built uOttaMail using Solace Agent Mesh (SAM) to orchestrate a team of independent AI agents in a fully event-driven architecture.
Incoming emails are ingested by the backend and published as events through an MQTT broker, which acts as the bridge between the application backend and the Solace event mesh.
- Emails are ingested as events and published to the Solace event mesh
- Each agent subscribes only to the events it needs and emits its own results
- Agents run fully decoupled and in parallel
Our agents include:
- Search Agent (queries stored data and aggregates agent results)
- Summary Agent
- Priority Agent
- Tone Analysis Agent
- To-Do Extraction Agent
- Virus Detection Agent (integrated with the VirusTotal API)
A real-time UI subscribes to agent outputs and renders an intelligent inbox view.
Challenges we ran into
- Designing a system where AI agents remain fully decoupled while still collaborating through events
- Coordinating event topics and message schemas under tight hackathon time constraints
- Integrating external APIs (VirusTotal) without disrupting real-time event flow
- Connecting the frontend to the backend while ensuring agent outputs propagated correctly through the mesh
- Debugging event-driven behavior to make agents react exactly as intended
Accomplishments that we're proud of
- Building a true multi-agent, event-driven AI system in a short time
- Successfully showcasing Solace Agent Mesh as more than just messaging
- Running multiple AI agents concurrently without tight coupling
- Delivering a clear, relatable demo with real-world impact
- Learning and applying RAG (Retrieval-Augmented Generation) to fully leverage the power of Solace Agent Mesh and the agents’ outputs, enabling intelligent, grounded search across emails and agent insights
What we learned
- Event-driven architectures scale AI systems far better than monolithic models
- Multi-agent systems are more flexible, fault-tolerant, and extensible
- Clear agent responsibilities simplify debugging and iteration
- Solace Agent Mesh is powerful for real-time AI coordination
- Integrating multiple agents and external APIs requires careful event design and topic management to ensure reliable, real-time behavior
What's next for uOttaMail
- Unified inbox integrations: Connect Gmail, Outlook, and other email services so users can access all their emails in one place, leveraging uOttaMail’s AI agents without switching between accounts.
- Learning-based personalization: Adapt prioritization, summaries, and alerts to each user’s habits and preferences.
- Calendar and task manager sync: Automatically surface action items and deadlines across tools.
- Mobile push notifications: Ensure critical emails are never missed, even on the go.
- Enterprise-grade security and compliance: Strengthen protections for sensitive information while maintaining scalable, real-time performance.
Built With
- django
- docker
- python
- rag
- react
- solace
- solaceagentmesh
- typescript
Log in or sign up for Devpost to join the conversation.