-
-
View task counts, manage study tasks, review AI recovery recommendations, and inspect task insights in one dashboard.
-
Manage study tasks with priority labels and clear pending/completed status tracking.
-
Generate an AI-powered study recovery proposal with transparent assumptions and human approval before task completion.
-
Interact with Gemini to analyze pending tasks through MCP tools while keeping task modifications outside the inspector.
Inspiration
Students can fall behind when assignments pile up, priorities shift, or planned study sessions are missed. Figuring out what to tackle first can become an additional source of stress.
We built TaskPilot — AI Study Recovery Agent to explore a better approach: instead of giving students another to-do list, help them turn unfinished work into actionable recovery priorities while keeping them in control.
What it does
TaskPilot combines task management with AI-assisted study recovery. Students can create tasks, track pending and completed work, and request a recovery proposal based on their actual pending tasks.
The workflow is simple:
- Capture tasks: Create and manage study tasks in one place.
- Generate a recovery plan: Use Gemini to propose priorities based on available task information.
- Review recommendations: Understand suggested priorities, deferred tasks, and the reasoning behind the proposal.
- Approve actions: Review the proposal before supported task changes are applied.
- Track progress: View updated task statuses and dashboard counts.
TaskPilot follows a human-in-the-loop approach: AI proposes the next steps, while students retain control over supported task changes.
How we built it
TaskPilot uses React, TypeScript, and Vite for the frontend and Java 17 with Spring Boot for the backend. Gemini supports AI-assisted recovery proposals and the Task Inspector. The self-hosted Model Context Protocol (MCP) endpoint exposes task operations to compatible clients.
The core MCP tools are:
add_task— create a task.list_tasks— retrieve tasks by status.complete_task— mark a task as completed.
The REST API and MCP tools share the backend task-management service. TaskPilot also includes a recovery approval workflow and a clearly labelled local fallback when the Gemini API key is unavailable.
The prototype uses in-memory task storage, keeping the application straightforward to run and demonstrate without requiring a database.
Challenges we faced
A key engineering challenge was ensuring that the AI workflow, task-management operations, and MCP interface work together consistently.
Registering tools is only one part of an agentic application. The complete workflow also requires correct request handling, tool execution, shared state, error handling, and clear boundaries between AI recommendations and user-approved actions.
We also had to distinguish local protocol testing from independent MCP-client compatibility and direct Alexa+ integration. These require separate verification, and we avoid claiming integrations that have not been demonstrated.
What we learned
Building TaskPilot reinforced the importance of validating an entire workflow rather than relying on a successful build alone.
We learned that useful AI applications need reliable backend operations, validated tool inputs, consistent state, transparent fallback behavior, and human approval for consequential changes.
We also learned that a working REST API, registered MCP tools, protocol compatibility, and integration with a particular assistant environment are distinct engineering milestones.
What's next
Our next steps include expanding automated integration tests, validating the MCP workflow with independent compatible clients, improving task persistence, and exploring broader assistant integrations where supported.
Our goal is to make study recovery less overwhelming by helping students identify a practical next step without taking decision-making control away from them.
Built With
- ai
- aiagents
- geminiapi
- java
- mcp
- react
- restapi
- springboot
- typescript
Log in or sign up for Devpost to join the conversation.