AI Shopping Concierge – GKE Turns 10 Hackathon Project

Why I Built an AI Shopping Concierge

A hackathon project that started with the goal to learn/enhance Agentic AI, MCP, ADK Agents skills 

The Problem That We All See

Picture this: You’re shopping online, you type “something warm for winter,” and the search engine gives you… space heaters. Or nothing at all. You search for “professional outfit for a job interview” and get crickets because the algorithm is desperately looking for those exact words in product descriptions.

This happens to all of us too many times, here we are in 2025, with AI that can write poetry and solve complex math problems, but e-commerce search is still stuck in old ways. We’re forcing people to play a guessing game with keywords instead of just letting them tell us what they need.

So during the Google Turns 10 hackathon, I decided, let me take up the challenge of not touching the legacy code of these shopping experiences (Online Boutique) and use AI to enhance these customer experiences.

What I Built: An AI That Actually Gets It

The idea was simple: build a shopping assistant that understands intent, not just keywords. When someone says “I need gear for working out at home,” it should know they probably want fitness equipment, yoga mats, maybe some athletic wear – not a literal search for those exact words.

I called it the AI Shopping Concierge, and it runs on Google Kubernetes Engine with three main components working together:

  • MCP Server: Handles all the product data using the Model Context Protocol
  • ADK Agents: Does the heavy lifting on semantic understanding using Google’s Agent Development Kit
  • Streamlit UI: A web interface that normal humans can actually use

The magic happens when these three talk to each other. The ADK agents use semantic similarity scoring to understand what you’re really asking for, not just what words you used.

ai-concierge-gke-architecture

System Architecture Overview: Detailed diagram showing how the MCP Server, ADK Agents, and Streamlit UI components interact within the Google Kubernetes Engine cluster. This visual breaks down the data flow from user query to AI-powered product recommendations.

The Testing That Made It Real

When I am testing this application, I went live with real queries to show how it actually works. Here’s what happened:

🎥 Live Demo Walkthrough (3 minutes): Watch the AI Shopping Concierge in action. See real user queries, the AI’s reasoning process, and how it handles both perfect matches and creative problem-solving when inventory is limited. Includes the candle holder, mug, and meeting attire examples discussed below.

Me: “I need a gift for someone who loves to cook.”

AI: Suggests a candle holder for $18.99

Okay, not exactly what I was hoping for. A candle holder isn’t the most obvious cooking gift, but the AI was working with Google’s Online Boutique demo catalog, which doesn’t have a ton of kitchen gear. Still, candles do create ambiance for dinner parties, so… points for creativity?

Me: “Something for staying warm.”

AI: Suggests a mug for $8.99 “While we don’t have traditional clothing items like sweaters or blankets for staying warm, a mug can certainly help! You can fill this simple mug with a mustard interior with a comforting hot beverage to warm you up from the inside out.”

Now THIS was clever. The AI recognized it didn’t have winter clothing in the catalog, acknowledged that limitation, and still found a creative solution. A warm mug of coffee on a cold day? That’s actually pretty thoughtful.

Me: “I have a meeting tomorrow, suggest me what to wear.”

AI: Suggests loafers ($89.99), a watch ($109.99), and a tank top ($18.99) “While it’s more on the casual side, it could be layered under a blazer or cardigan you might already own to make it meeting-appropriate!”

The loafers and watch were spot-on professional suggestions. The tank top recommendation came with smart styling advice about layering to make it meeting-appropriate. Even when the inventory wasn’t perfect, the AI was thinking about how to actually help.

This wasn’t about perfect product matching – this was about an AI that could reason through constraints, explain its thinking, and still try to be genuinely helpful. That’s way more valuable than a dumb search engine that just gives up.

The Real Insights

Here’s what I learned from watching real people interact with the system:

Transparency beats perfection. When the AI said “while we don’t have traditional clothing items for staying warm,” people appreciated the honesty. Nobody expects magic – they just want to know what’s actually available and why they’re getting certain suggestions.

Context matters more than accuracy. The mug suggestion wasn’t technically wrong, just unexpected. But the AI’s explanation about warm beverages showed it understood the underlying need (getting warm) even if the solution was unconventional.

Conversational shopping is stickier. People kept asking follow-up questions. After getting meeting wear suggestions, one tester asked about “something more casual for weekend coffee.” That never happens with traditional search – you get your results and leave.

Inventory constraints reveal AI intelligence. When you’re limited to a demo catalog, you can’t fake good results. The AI had to actually think creatively, which showed off its reasoning capabilities better than a perfect product match would have.

The Technical Stuff

Here’s what’s running under the hood:

Google Kubernetes Engine handles all the infrastructure. I used Terraform to set everything up because I got tired of clicking around the Google Cloud Console for hours.

Gemini AI powers the natural language understanding. When you type “professional attire,” Gemini helps the system understand you’re looking for business clothes, not a literal search term.

Semantic embeddings create vector representations of both products and your questions, then match them based on meaning rather than word overlap.

The whole thing deploys with just four PowerShell scripts. And yes, I’m proud of that because the original setup was an absolute disaster with like 10+ scattered scripts that half worked and half didn’t.

The $120 Lesson in Cloud Economics

Here’s where things got expensive, fast.

Google Kubernetes Engine costs real money – about $40 per month if you leave it running. Which doesn’t sound like much until you forget about it for three months and get a $120 bill that makes you question all your life choices.

That’s when I built the most important feature of the whole project: the pause command.

# Before you go to bed or stop working
.\manage.ps1 -Action pause

This scales your cluster down to zero nodes, dropping your monthly cost from $40 to about $3 (just the control plane). When you want to work again, one command brings everything back online.

I baked into the deployment scripts so nobody else has to suffer through surprise cloud bills.

What Actually Works (And What’s Still Learning)

The Good:

  • The AI explains its reasoning, even when results aren’t perfect
  • It acknowledges inventory limitations instead of pretending they don’t exist
  • Creative problem-solving (suggesting a mug for warmth when no sweaters are available)
  • Smart styling advice (how to make a tank top meeting-appropriate with layering)
  • Natural conversation flow with follow-up suggestions

The Reality Check:

  • Product matching isn’t always perfect (candle holder for a cooking enthusiast?)
  • Limited by whatever’s actually in the catalog – semantic search can’t create products that don’t exist
  • Sometimes gets creative when you’d prefer literal (warm mug vs. warm clothing)

The Surprising Win:

  • Even imperfect results feel more helpful than traditional search failures
  • People appreciate honesty about limitations
  • The conversational interface encourages follow-up questions and refinement

The Technical Struggles:

  • Getting the LoadBalancer to assign an external IP sometimes takes forever (patience is a virtue)
  • Resource sizing was tricky – started with tiny e2-micro nodes that couldn’t handle the workload, had to upgrade to e2-standard-2
  • Docker authentication occasionally gets cranky and needs a gentle reset

Try It Live (When It’s Running)

The AI Shopping Concierge is deployed and accessible at AI Shopping Concierge – though there’s a catch. Remember that $120 cloud bill I mentioned? Yeah, I’m not making that mistake twice.

The live demo is currently in “pause mode” to keep costs under control during the hackathon period. It’ll only be spun up when the judges want to take a look. If you’re reading this after September 22nd and want to try it out, drop me a message and I can fire it up for a demo.

The Code Will Be Out There Soon

The project code is currently in a private repository at masterthefly/gke-turns-10-hackathon: code repo for the hackathon while the hackathon is still accepting submissions. Once September 22nd passes and the submission deadline closes, I’ll make it public so anyone can explore the code, deployment scripts, and see how semantic search actually works in practice.

I’ve put a lot of effort into making the deployment scripts actually work (unlike the disaster they replaced), so I’m looking forward to sharing them. Sometimes the best contribution you can make is just showing people something that actually works, complete with all the cost management lessons learned the hard way.

Why This Matters Beyond the Hackathon

This isn’t just about building perfect search. It’s about building AI that thinks through problems the way humans do – acknowledging constraints, explaining reasoning, and still trying to help.

The candle holder suggestion taught me something important: users don’t need AI to be right 100% of the time. They need it to be thoughtful, transparent, and genuinely trying to understand what they’re asking for. When traditional search fails, it just fails silently. When this AI makes a suboptimal suggestion, at least you understand why.

Consider elderly customers who describe products instead of searching for SKU numbers. Think about busy parents who just want “something for my kid’s birthday party” and trust the AI to explain what’s available and why. Or international customers who might not know exact English terms but can describe what they need.

When e-commerce stops being a keyword guessing game and starts being a conversation with someone who wants to help (even if they don’t have the perfect answer), that’s when online shopping becomes genuinely useful instead of just convenient.

What’s Next

I’m planning to add more sophisticated conversation flows – maybe the AI could ask follow-up questions like “What’s the occasion?” or “What’s their style like?” to get even better recommendations.

There’s also potential to integrate with actual e-commerce platforms beyond the demo catalog. Imagine if every online store had this kind of semantic understanding built in.

But for now, I’m just happy that when someone types “something warm for winter,” they get a thoughtful explanation about warm mugs instead of crickets. Sometimes the most honest AI is better than the most accurate search engine.


Want to try the AI Shopping Concierge? The live demo is at AI Shopping Concierge (though it’s paused for cost control – message me if you want a demo). The code will be public at masterthefly/gke-turns-10-hackathon: code repo for the hackathon   after September 22nd when the hackathon submission period ends. And yes, definitely remember to pause your cluster when you’re done – trust me on this one.