Course Tools Exposed to the Agent
Swappable LLM Providers (Anthropic / OpenAI)
Program Awareness, Tracked per Student
Interactions Logged for Review

Students in a cohort course ask the same kinds of questions again and again — mentors spend their time on routine questions the course documents already answer, while questions that genuinely need a human get lost in the same channels.
What's due this week, how a rubric item is weighted, what "done" means for a milestone asked over and over.
TAs spend time on questions the project brief and rubric already answer.
Grading disputes, extension requests and personal circumstances get buried in the same channels as routine questions.
Nothing reliably separates "an AI can answer this" from "a human must," or records that decision.
Built as a proof of concept, kept deliberately small: one process, one agent service, a file-based knowledge store and one log table.
Each question runs through ClaudeSDKClient, with the bot's tools exposed as an in-process MCP server.
The system prompt decides what's answerable from course materials versus what needs a human mentor.
One env var (LLM_PROVIDER) switches between Claude and OpenAI, with shared tool logic across both.
Search course materials keeps every direct answer traceable to the brief, rubric and milestones.search_course_materials keeps every direct answer traceable to the brief, rubric and milestones.
As a working proof of concept, EvoBot demonstrates both paths end to end: grounded direct answers, and a clean, auditable escalation to a human mentor.
Direct answers stay traceable to the project brief, rubric and milestones not freeform generation.
Grading disputes and edge cases reach a mentor queue with full context and a stated reason.
Errors inside the agent loop are caught and logged — the student always gets a reply.
Every turn is logged and reviewable live through the admin API.
A look inside the interfaces.
Evolvan designed and built EvoBot end to end — the agent service, the provider-agnostic tool layer, and the logging and admin API that make its decisions auditable.
Evolvan built the three course tools — material search, progress lookup, and mentor escalation as an in-process MCP server.
Evolvan split the agent layer so Claude and OpenAI share one tool-logic module, switchable by a single env var.
Evolvan authored the system-prompt policy that decides what the agent can answer versus what a mentor must.
Evolvan built the SQLite logging and the FastAPI /health and /logs endpoints for live review.