Inspiration
Students constantly juggle multiple courses, each with their own slides, assignments, grades, and announcements. Managing all this information is overwhelming — especially when you just want to ask a simple question like “When is my next assignment due?” or “What topic should I review for the exam?”.
LearnBridge was inspired by that gap — the idea that Canvas knows everything about your courses, but you can’t talk to it.
What it does
LearnBridge is an AI agent that connects directly to your Canvas LMS and lets you talk to your coursework.
It can:
- 🧠 Understand your assignments, including reading PDF instructions, extracting key info (due date, rubric, description).
- 📢 Summarize announcements and suggest next actions.
- 📚 Parse all course content files (lecture slides, notes) for context-aware Q&A and exam prep.
- 🎓 Analyze your grades and feedback to pinpoint where you can improve.
- 🧩 Generate structured outputs — from tables of deadlines to study summaries and assignment writers.
How we built it
We used Sim AI as our orchestration layer — it dynamically decides which tool (API function) to call using an AI Router, enabling autonomous tool usage with context awareness and memory.
Core components:
- 🛠️ Canvas API Integration
list_assignments(student_id)get_assignment_details(student_id, assignment_id)list_announcements(limit)list_grades(student_id)get_course_content(course_id)
- 📄 PDF Parsing Engine: Extracts text from Canvas file attachments (lecture notes, assignments).
- 🧩 AI Router: Routes student questions to the right API tool dynamically based on prompt context.
- 🧠 Memory & Context Layer: Keeps conversation history so the AI understands what’s already been discussed.
Each API function:
- Calls the Canvas API
- Parses relevant information
- Returns it as a structured
HashMap - Lets the AI interpret, summarize, and respond contextually
Challenges we ran into
- 📎 PDF parsing issues: Canvas-hosted PDFs (with
download_frdlinks) often failed to parse correctly because of authentication and non-direct download links. - ⚙️ Grades API errors: Canvas sometimes returned
HTTP 500or404for submission or grade endpoints — requiring error-handling logic and retries. - 🧭 Tool orchestration: Making the AI dynamically select which API to call (and when) without hardcoding prompts was tricky — required designing clear, semantic tool descriptions for the AI router.
- 🧠 Maintaining context: Ensuring the agent remembered user intent across multiple API calls without redundant fetches.
Accomplishments that we're proud of
- Built a fully agentic Canvas AI capable of querying assignments, announcements, and content intelligently.
- Created a robust tool layer with dynamic routing, allowing seamless switching between multiple Canvas functions.
- Successfully parsed and structured course content PDFs for contextual Q&A.
- Designed a modular prompt-driven architecture for tool calling, making the system easily expandable (more tools, new LMS platforms, etc.).
What we learned
- How to design AI systems with memory and function calling, not just chatbots.
- How Canvas APIs are structured — and how to handle their quirks (rate limits, 404s, and attachment handling).
- How to build an AI Router that uses LLM reasoning to choose the right action dynamically.
- The importance of context continuity for agent UX — students expect the AI to “remember” what they’re talking about.
What's next for LearnBridge
- 🚀 Fix PDF parsing: Add authenticated download + OCR fallback for all Canvas file links.
- 💬 Assignment Writer & Exam Prep Components: Personalized agents that generate study plans or draft assignment outlines based on course materials.
- 🎓 Integrate across platforms: Support for Google Classroom, Brightspace, and Blackboard.
- 🪄 Canvas plugin: So students can access LearnBridge directly inside their LMS dashboard.


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