This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass
What I Built
Seasalt is an AI-powered food adventure agent that turns your cravings into a reason to explore the real world.
Ever wanted momos, followed by biryani and something sweet, but had no idea where to go or whether it would fit your budget?
That's the problem I wanted to solve.
With Seasalt, you can describe what you're craving in natural language, specify your budget and preferred distance, and let an AI agent help plan your food adventure using restaurant and menu information retrieved through Swiggy MCP.
Instead of returning a generic list of recommendations, Seasalt attempts to create a food journey tailored to your preferences.
🌶️ Craving something spicy? Tell Seasalt.
🍰 Want something sweet afterward? Include that, too.
💸 Have a budget to stick to? Seasalt validates proposed dishes against retrieved data and calculates the total.
How It Works
- Describe your craving: Enter what you want to eat, your budget, and your distance limit.
- Understand the request: Gemma interprets your natural-language input.
- Discover food: Seasalt uses Swiggy MCP to search restaurants and retrieve menu information.
- Plan the adventure: Gemma generates a proposed food adventure using the retrieved options.
- Validate the results: Python checks recommendations against available restaurant data, including dish names, prices, distance, and budget.
The idea behind Seasalt is simple: use AI to help people do something in the real world, not just spend more time on a screen.
It's currently a command-line application. I focused on building the core agent workflow before adding a graphical interface.
Demo
Here's a successful terminal run of Seasalt.
User input:
i want momos then biryani then sweet under 500
Generated Adventure: The Biryani & Sweet Treat Trail
A delicious journey from savory biryani to creamy ice cream.
| Stop | Restaurant | Dish | Price |
|---|---|---|---|
| 1 | The Food Factory | Egg Biriyani (1 Pc Aloo and 2 Eggs) | ₹195 |
| 2 | Havmor Havfunn Ice Cream | Chocolate | ₹136 |
| 3 | Monginis Cake Shop | Choco Chips Pastry | ₹47 |
| Verified food total | ₹378 | ||
| Budget remaining | ₹122 |
What the Run Demonstrated
- ✅ Swiggy OAuth and MCP connection
- ✅ Location selection
- ✅ Gemma craving parsing
- ✅ Restaurant search
- ✅ Menu retrieval
- ✅ AI-generated food adventure
- ✅ Python validation of restaurants, dishes, and prices
Known limitation: The generated plan did not include the requested momos. Improving preference coverage is an area for further development.
This is a terminal demonstration rather than a deployed web application or video recording.
Code
🌊 GitHub Repository: Seasalt on GitHub
The repository contains the Python agent, Gemma integration, and supporting code for connecting to Swiggy MCP.
Explore the source code to see how Seasalt parses cravings, retrieves restaurant information, generates an adventure, and validates recommendations.
How I Built It
I built Seasalt using Python, Gemma, and Swiggy MCP.
Technology Stack
- Python: Core application logic and deterministic validation.
- Gemma 4: Natural-language understanding and food adventure generation.
- Gemini API: Access to the Gemma model.
- Swiggy MCP: Restaurant discovery and menu retrieval.
- HTTPX and asynchronous networking: Communication with external services.
The Agent Workflow
The application combines AI reasoning with real-world data.
First, Gemma interprets the user's request. Seasalt then retrieves restaurant and menu information through Swiggy MCP and provides the available options to the model for adventure generation.
However, I didn't want to rely entirely on the model to get every detail right.
An AI-generated recommendation might sound convincing while exceeding the budget or including a dish that wasn't present in the retrieved menu. To address this, I implemented a Python validation layer that checks proposed recommendations against available data and recalculates the total cost.
This separation between AI-generated plans and deterministic validation is an important part of the project.
The model proposes the adventure; the application checks whether the recommendations satisfy the constraints it can verify.
The current implementation uses a hosted Gemma API rather than running inference locally.
Why Does Open Innovation Matter?
Open innovation makes it possible to experiment with ideas that combine different tools, models, and services without building everything from scratch.
Seasalt brings together an open-weight AI model, an MCP-powered external service, and custom Python logic to create something more specific than a conventional chatbot.
The model helps interpret flexible human language and generate a plan. MCP provides a way to connect the application to restaurant data. Python handles the checks that should not depend solely on a language model.
This modular approach made it possible to experiment with the entire workflow while keeping the application logic under my control.
It also makes the project easier to extend. Other developers can explore the implementation, improve validation, experiment with different planning approaches, or build new interfaces around the agent.
For me, open innovation is about combining technologies to build something new, sharing the result, and making it possible for others to improve it.
Top comments (0)