Inspiration

Dinner often starts with a familiar question: “What can I make with what I already have?” A kitchen can contain plenty of ingredients without an obvious plan.

Gather starts with those ingredients and brings meal planning, shopping preparation, and cooking guidance into one place.

What it does

Gather helps you manage your pantry and find recipes that fit your available time, serving count, and dietary preferences.

You can:

  • Add, edit, and remove pantry ingredients.
  • Discover meals from six original recipes.
  • Prioritize ingredients you have marked to use soon.
  • Scale recipe quantities for the number of people eating.
  • Create and export a shopping list of missing ingredients.
  • Follow cooking steps with a built-in timer.

Supported conversational commands let you request a vegetarian dinner, change the serving count, open a recipe, or prepare a shopping list while keeping relevant preferences.

Pantry matching checks whether ingredients are present. It does not verify that you have enough of each ingredient.

How I built it

Gather uses JavaScript, HTML, and CSS for the browser interface, with a Node.js server behind it.

The official Model Context Protocol SDK exposes three working tools: dinner planning, recipe retrieval, and shopping-list generation. Zod validates tool inputs, while browser local storage preserves pantry entries, preferences, and shopping lists.

A deterministic parser translates supported commands into structured actions. The interface also exposes MCP tool activity so requests and results can be inspected.

The conversational experience is an Alexa+ style browser simulation. It does not connect to a physical Alexa device, an Amazon account, or an external language model.

Challenges

One challenge was keeping the interface consistent as pantry entries, preferences, and recipe selections changed. Overlapping requests needed to preserve the latest selection rather than display an older result.

Another was handling missing or malformed saved data while keeping the app usable. Automated tests cover planning logic, browser state, input validation, and MCP behavior.

Accomplishments

Gather demonstrates a complete pantry-to-dinner workflow through real MCP tools. The responsive interface connects recommendations, ingredient quantities, shopping preparation, and guided cooking.

I also created a 24-second Blender animation to introduce the product and illustrate the kitchen workflow.

What I learned

Useful conversational experiences depend on clear context and reliable actions. Small, well-defined tools make behavior easier to test, explain, and connect to different interfaces.

Interface details also matter: clear ingredient lists, visible preferences, and predictable cooking controls help turn a recommendation into something practical.

What's next

Future improvements include quantity-aware pantry tracking, a larger recipe catalog, authenticated hosting, and a real Alexa integration with appropriate testing. These would build on the existing MCP tools and dinner-planning workflow.

Share this project:

Updates

Submission history