Inspiration

Every day I open a class routine PDF just to find one class: which room, what time, who teaches it. Students also miss campus events like seminars and hackathons, or discover too late that an event clashes with a class. I wanted to simply ask, out loud, and get the answer.

What it does

Campus Buddy is a voice-first schedule assistant for university students, built as a simulated Alexa+ experience in the browser, in English and Bangla.

  • Ask "When is my next class?" and it answers out loud with the time, room and teacher.
  • Ask about assignments, exams, teachers and rooms.
  • Ask about campus events (seminars, workshops, contests, hackathons). It warns you when an event clashes with one of your classes.
  • Ask in Bangla and it replies in Bangla, with Bangla times and digits.
  • The class routine is my real department routine (CSE, sections 69_D, D1, D2). Assignments, exams and events are sample data.

How I built it

  • Web app: plain HTML, CSS and JavaScript. No server, no database, no API keys. A chalkboard-themed UI with an animated opening page.
  • Voice: the browser's Web Speech API for speech recognition (English and Bangla) and spoken replies.
  • Brain: engine.js, a rule-based engine that matches intents and looks up answers in one editable data file (data.js). The same code runs in the browser and in Node.js.
  • MCP server: the same engine is exposed as a self-hosted MCP server (Streamable HTTP, stateless) built with the official MCP SDK, with eight read-only tools such as next_class, upcoming_events and check_event_clash. Tests call every tool with the official MCP client.
  • Built with AI assistance: I built it with Claude (Anthropic's AI coding assistant), and I reviewed, tested and corrected details such as course names, teacher names and dates.

Challenges

  • Bangla voice input failed silently at first. I added clear error messages and a Bangla vocabulary for course and event names.
  • Keyword matching can misread words (for example, the Bangla word for "tomorrow" appears inside "morning"), so I match whole words and added tests.
  • Many browsers have no Bangla speech voice, so the app shows text and says so.

Accomplishments

A working assistant that answers real questions about my own routine, in two languages, with event clash warnings, plus an MCP server any agent can call.

What I learned

Voice features depend heavily on browser support, and a simple, well-tested rule engine can be enough for a focused assistant.

What's next

Replace sample data with live data from a university portal, add more phrasings, and test the MCP server with a real Alexa+ device. This project has not been tested on a real Alexa+ device.

Built With

Share this project:

Updates

Submission history