Inspiration
Sometimes while driving, it is easy to miss posted speed limits. The problem is worse because some roads feel faster than their actual speed limit. A speeding ticket is painful: it can add points to your license, increase insurance rates, and cost money in fines.
I wanted a solution that reads posted speed limits and alerts me when my car exceeds them. After researching, I found it may require a device that reads road signs, another sensor or system that tracks vehicle speed, and a way to integrate everything together. There are also some products that claim to have that functionality built-in like Garmin navigation, but I do not want to install GPS screen just for that.
That made me think: what if an AI agent could understand my problem, search the internet for products that solve it, and guide me on how to combine those products into a working solution?
What it does
A problem intake chat agent first discusses the user’s problem, desired outcome, and who is affected. After the problem statement is elicited, the user is handed off to a specification agent that discusses solution constraints and finalizes the requirements.
Once the problem statement and specifications are finalized, they are sent to a message queue and wait for a solver service. The solver service reads the problem from the queue, finds and refines a solution, and recommends a list of products the user can use. An email is sent to the user with the proposed solution.
How we built it
The chat interface was built using Agent Studio within the Google Agent platform. We created two agents: a Problem Intake Agent and a Specification Intake Agent.
These agents connect to MongoDB through an MCP server to generate a unique request ID. The MongoDB MCP server runs in a Docker container and is deployed as a Cloud Run service.
After the intake and specification steps are completed, the chat agent connects to a Publisher MCP. This Publisher MCP receives the finalized JSON request and publishes it to the problems message queue.
A solver service subscribes to the problems queue, processes the request, generates a proposed solution, and publishes the result to a consumer queue. Finally, the consumer service picks up the solution and emails it to the user.
Challenges we ran into
One challenge we ran into was provider platform integration.
We initially planned to support product searches across multiple suppliers, including Best Buy and eBay. However, Best Buy requires a business email to access its developer platform, and eBay requires an approval process before API access can be used.
Walmart provided the most accessible integration path because its API did not restrict account emails and did not require a lengthy approval process. For the MVP, we therefore limited supplier support to Walmart.
Walmart Search APIs have rate limits, and limited access to other retail vendors may reduce the agent’s ability to recommend a complete set of compatible products. As a result, refining product recommendations so that all selected items work together remains challenging under these constraints.
Accomplishments that we're proud of
We built a working MVP that addresses a real problem: helping users turn vague needs into clear, actionable product-based solutions. SmartBuySmith can help retailers and providers such as Home Depot, Walmart, and Best Buy sell products more effectively by guiding customers from a problem statement to a practical solution.
Instead of only recommending isolated products, SmartBuySmith reasons through the user’s needs, gathers specifications, searches available inventory, and explains how the recommended products work together.
What we learned
We learned that building a useful AI agent system is not just about generating answers; it is about designing a reliable workflow around the agent. SmartBuySmith required clear problem intake, specification gathering, structured JSON schemas, queue-based processing, product search, verification, and final customer communication.
We also learned the importance of keeping agents focused on specific responsibilities. One agent should understand the user’s problem, another should gather constraints, and backend services should handle solving, product matching, email delivery, persistence, and idempotency.
On the technical side, we gained experience integrating Google Cloud Run, Pub/Sub, MCP tools, MongoDB, Gemini, Walmart’s product API, and Mailjet into one end-to-end pipeline. We also learned that real-world agent systems need strong logging, retries, dead-letter queues, schema validation, and careful handling of failures.
Most importantly, we learned that an AI product recommendation system becomes much more useful when it understands the user’s actual problem before suggesting products.
What's next for SmartBuySmith
We plan to expand SmartBuySmith in three main directions:
Consumer feedback and refinement
Users should be able to review the generated solution, provide feedback, and refine it through a back-and-forth conversation until the solution better matches their needs.Human-in-the-loop support
For difficult or high-stakes problems, SmartBuySmith should be able to route the case to a human expert or a specialized agent for deeper research and validation.Expert-assisted solution research
We plan to build a web interface where solution experts can search products, review customer requirements, compare options, and help create a more complete and reliable solution for the customer.** Cache fetched products ** Cache fetched products and their metadata in a local database before making additional retailer API calls. This reduces repeated requests, helps manage API rate limits, and improves response speed.
*Refining Selected Products * We are also refining the product selection process to better ensure compatibility between recommended items. This requires careful design to make product selection, validation, and refinement more efficient and reliable.


Log in or sign up for Devpost to join the conversation.