Inspiration
Kairo was inspired by one common challenge students face: overwhelming schedules created by overcommitment and limited visibility into the future. Many students unintentionally double-book, forget important events, or underestimate overlapping responsibilities, leading to stress and panic.
Traditional tools like vanilla Google Calendars show events but lack support for solution reasoning for rescheduling. Inspired by Cursor, Kairo is designed to help students plan proactively, adapt as plans change in real time, and maintain balanced schedules. Kairo differs from other AI-powered calendars in the sense that it serves as an extension to Google Calendar, whereas services such as Motion or Reclaim demand that you switch over to their calendars. There is no need to migrate to a different UI or lose out on different integrations, just smarter interaction via natural language.
What it does
Kairo is an intelligent planning agent that integrates agentic, human-in-the-loop workflows into Google Calendar. By analyzing user preferences, time constraints, and priorities, our agent proposes optimized plans through basic conversation, prompting the user for confirmation before committing changes.
How we built it
Before building this project, our group planned the tech stack meticulously, which revolved around using Next.js, FastAPI, Google Gemini 3 Flash, and an open-source Google Calendar MCP server (https://github.com/nspady/google-calendar-mcp). Our first idea was to build a RAG pipeline for this application, but we realized this would be an expensive task, as we had limited tokens and limited time for implementing features such as re-ranking. As we started hacking, we instead set up an MCP server for Google Calendar and created the FastAPI routes to get our LLM to interact with the open-sourced protocols. Building with MCP allows us to inject context into our LLM without having to build our own custom RAG. To do this, we used LangChain to connect our LLM with the MCP server to enable tool calling. Once that was done, we created a sleek frontend to streamline the user’s interaction with our agent.
Challenges we ran into
Building agents using MCP and agents in general were a novel concept to us. For some of us, it was our first hackathons, so creating an agentic calendar manager was a daunting task. We navigated through this challenge by outlining goals and assigning tasks based on a person’s strengths. We also planned the system design of the app and what its scope was, long before we actually started hacking. Scoping allowed us to build with a vision in mind without having to make many compromises along the way.
Accomplishments that we're proud of
While this was the group’s first time implementing an MCP in an agentic workflow, we encountered no critical problems, and everything ran smoothly after reviewing documentation and conducting tests.
What we learned
We gained knowledge with agentic workflows, full-stack development, and AI/LLM integration. In addition to technical skills, we learned to work as a team and ensure that everyone was caught up to speed with what we were building and how we were building it.
What's next for Kairo
Moving forward, we would look towards incorporating long-lived multi-agent workflows so that the website can deploy specialized agents: a calendar agent for operation via MCP, a well-being agent that monitors work-life balance and warns about burnout, and a conflict resolver that intelligently handles scheduling conflicts. We will also look forward to hosting this application in the cloud, so users can take advantage of Kairo's scheduling/logistic services.
Built With
- fastapi
- gemini
- google-calendar
- langchain
- mcp
- next.js
- python
- tailwindcss
- typescript
Log in or sign up for Devpost to join the conversation.