Inspiration## Inspiration

Studying means juggling notes, deadlines and exams, and typing into apps breaks focus. I wanted a study companion you can simply talk to.

What it does

Study Buddy is a self-hosted MCP server (spec 2025-11-25, Streamable HTTP) with 8 tools: explain a topic, add, list and complete study tasks, save exam dates, check the next exam, and run a 3-question voice quiz with a running score. A simulated Alexa+ web app with voice input discovers the tools over MCP and calls them as the student talks.

How I built it

  • Python MCP server using only the standard library: it handles initialize, ping, tools/list and tools/call over POST /mcp, with origin checks and session IDs
  • A core module for tasks, exams, quizzes and storage (JSON file, or DynamoDB if configured)
  • Optional Amazon Bedrock (Converse API) integration for short spoken explanations
  • A web app that uses browser speech recognition and routes what you say to MCP tool calls, with the protocol calls shown on screen
  • Integration tests that run every tool over real HTTP

Challenges

Getting the protocol details right (notifications return 202, no server stream, origin checks), keeping quiz state on the server across turns, and setting up Python and the project on my own computer.

What I learned

How MCP tools map to voice interactions, and how to design clear tool schemas an agent can use.

What's next

Connecting to the real Alexa+ agent, AI-generated quizzes, and spaced-repetition reminders.

What it does

How we built it

Challenges we ran into

Accomplishments that we're proud of

What we learned

What's next for Study Buddy

Built With

  • alexa
  • amazon-bedrock
  • amazon-dynamodb-if-you-don't-use-bedrock-in-your-demo
  • and
  • html
  • http
  • javascript
  • json-rpc
  • leave
  • mcp
  • out
  • python
  • web-speech-api
Share this project:

Updates

Submission history