AI AGENTS · AUTH0 · VOICE · MERIDIAN: AI ACADEMIC COPILOT
Meridian: A Multi-Agent Academic Copilot with Human-Approved Actions
Built in 48 hours at Innovation Hacks 2.0 by a team of four, Meridian unifies Canvas LMS and Google Workspace behind one chat-and-voice assistant - and won MLH's Best Use of Auth0 for the way it makes AI agents safe: every irreversible action waits for a human yes.
TYPE
AI agents · Full-stack · Hackathon
ROLE
Team of four · I built the voice agent & the Auth0 approval flow
AWARD
Winner, MLH Best Use of Auth0 · Innovation Hacks 2.0
The prize-winning feature, my approval flow: the agent queues a Gmail send as a pending action, shows the exact payload it wants to execute, and acts only on an explicit Approve.My voice agent answering an assignments query: spoken question in, tool calls through the intent router, spoken answer out with a live transcript.Listening state mid-conversation - "no, it looks good to me" is all it takes to confirm a draft.
Overview
Student life is scattered across Canvas, Google Calendar, Tasks, and Gmail. Meridian pulls them into one assistant: ask what is due and it answers from your actual courses, tell it to schedule the work and the tasks appear in your calendar, ask it to email your TA and it drafts the message.
Under the hood, LangGraph agents route each request through an intent router to two MCP servers - one wrapping Canvas LMS, one wrapping Google Workspace - and merge the results into a single answer, behind a Next.js frontend and a FastAPI gateway with Gemini doing the reasoning. Built by a team of four in one 48-hour sprint.
Design & Build
Orchestration: LangGraph multi-agent core with an intent router deciding which MCP server each query needs - one wraps Canvas, the other Google Workspace. My teammates' domain.
Voice: My voice agent: ElevenLabs speech in and out at a reported ~300 ms time-to-first-audio, wired through the same intent router and tools as the chat, with a live transcript beside the conversation - assignment lookups, calendar updates, and email drafting fully hands-free.
Approval flow: My Auth0-secured action gate: sign-in and delegated agent authorization through Auth0, and every write or irreversible action - an email send, a calendar write - held in a pending-actions queue showing the exact payload until a human hits Approve or Reject.
Interface: Next.js dashboard with chat, voice mode, insight charts drawn from Canvas assignment data, and session history. My teammates' domain.
Challenges
Integrating systems with different APIs, auth flows, and tool structures into one smooth experience, while keeping the architecture modular enough to extend.
Making agent actions trustworthy: an assistant that can send email on your behalf has to show its hand before it acts, not after.
Shipping voice, approval, orchestration, and a dashboard as one coherent product inside a 48-hour hackathon window.
Result
Winner of MLH's Best Use of Auth0 at Innovation Hacks 2.0, ASU's MLH-official spring hackathon with 450+ students - the prize that recognizes exactly the delegated-access design.
A working end-to-end demo: real Canvas and Google integrations, voice conversations that read assignments and update calendars, and agent-drafted emails executed only after human approval.