Inspiration

We wanted to make a callback to desk pets like Clippy and the idea of small digital pixel companions like a Tamagotchi, while still bringing forward relevant news and current events with a environmental focus.

What it does

We use Google Gemini within an MCP server to run a sentiment analysis on current climate/sustainability news, which is then displayed to the user by our desktop pet. The desktop pet can then generate sustainability tips or individual level actions items based on the news provided.

How we built it

Our app is made with Python. We use the Tkinter UI library and a state machine to display our desktop pet and facilitate user interaction. We use the FastMCP library and Google Generative AI in the backend to generate tailored pet responses based on data from the OpenWeatherAPI and NewsAPI.

Challenges we ran into

  • Tailoring our prompts to Gemini to only work with relevant articles from NewsAPI
  • Creating a state machine from scratch and integrating it with our rendering loop
  • Turning our sentiment analysis into sustainability tips to be delivered to the user by our desktop pet

Accomplishments that we're proud of

  • Drawing all of our pixel-art assets ourselves!
  • Learning two new technologies, Tkinter and MCPs, and combining them to make this project

What we learned

  • Working with APIs and parsing their outputs for analysis with AI
  • Finding and fixing bugs in a complex application using APIs, generative AI, an MCP server, and an interactive frontend

What's next for Don't Furget Me!

  • Adding a config file + settings popup to allow users to customize pet size/font size/pet offsets/etc.
  • Creating more pet designs besides our American Marten, and more pet interactions
  • Allowing users to enable local news filtering for more tailored sentiment analysis and pet speech

Built With

Share this project:

Updates