Inspiration
I'm a student, and I juggle hackathons, assignments and applications at the same time. Every to-do app I tried could show me a list, but none told me the one thing I should start right now. A voice assistant is the perfect place for that, because when you ask "what should I do?", you want a decision, not a list to scroll.
What it does
Deadline Guardian is a self-hosted MCP server for Alexa+ that manages deadlines by voice. It exposes four tools:
add_deadlineadds a deadline with a due date, effort in hours and prioritylist_deadlinesreads out pending deadlines, soonest firstwhat_should_i_do_nowpicks the single most at-risk task and warns you if you need more time than you have leftcomplete_deadlinemarks a task done by its title
Every response is a short, speakable sentence, so it sounds natural when read aloud.
How we built it
- Node.js and Express
- Official MCP TypeScript SDK (
McpServer) - Streamable HTTP transport at
/mcp(stateless) - Zod schemas for tool inputs
- A local JSON file for persistence
- Tested end to end with the MCP Inspector
The "what should I do now" tool ranks tasks by a simple risk score:
$$ \text{risk} = \frac{\text{effort hours}}{\text{hours left}} \times \text{priority weight} $$
The higher the score, the sooner you should start.
Challenges we ran into
- Building the whole project in the final hours of the hackathon, so I kept the scope small and the demo reliable.
- Writing tool responses for the ear instead of the eye. Short sentences and spoken durations ("3 days left") work better than timestamps.
- Making the date input forgiving, so a bad date gets a friendly spoken error instead of a crash.
Accomplishments that we're proud of
- A fully working MCP server with four tools, built and tested within the hackathon window
- A voice-first design where every answer is a clear decision, not a data dump
- A risk-based ranking that warns you when a task can't fit in the time left
- A clean, open-source repo that anyone can run with
npm installandnode server.js
What we learned
MCP makes it easy to turn plain code into something a voice assistant can use. Designing outputs for voice changes how you think about an interface: shorter, clearer, and decision-first. I also learned how stateless Streamable HTTP keeps a server simple to build and test.
What's next for Deadline Guardian
- Account linking and per-user storage
- Proactive spoken reminders through Alexa+
- Calendar sync with Google Calendar
- Smarter effort estimates that learn from how long your tasks actually take
Built With
- alexa-plus
- express.js
- javascript
- json
- mcp
- model-context-protocol
- node.js
- react
- streamable-http
- zod
Log in or sign up for Devpost to join the conversation.