Inspiration
Offline popup stores move fast. Staff need to react to product sell-outs, booth congestion, visitor announcements, QR check-ins, and pickup status changes while customers are already waiting on-site. In many small event teams, those updates are handled manually across chat, spreadsheets, signs, and customer-facing pages.
We wanted to build an AI operations assistant that does more than generate text. The goal was to let an operator write a short field note, such as “Limited Keyring is sold out,” and have an agent turn that note into both a visitor-facing announcement and a structured operational update.
What it does
Popup Ops Agent helps popup retail teams manage live operations.
An operator can enter a short field note in the operations console. A Gemini-powered agent analyzes the note, refines it into a public announcement, identifies the affected product or booth, and proposes a structured action such as setting a product to sold out or updating congestion status.
The operator reviews the proposed action before anything is applied. After approval, the system saves the announcement and updates MongoDB-backed operational data. Customer-facing screens then reflect the latest status, such as a sold-out badge on the shopping page. The demo also includes a QR pass flow for visitor check-in and pickup completion.
How we built it
The frontend is built with Next.js and TypeScript. It includes operator, visitor, shopping, announcement, and QR pass demo screens.
The backend data layer uses MongoDB for popup event data such as booths, products, notices, reservations, and pickup status. MongoDB MCP is used as the partner MCP tool source for operational context lookup.
The agent layer is designed around Gemini and a Google Cloud deployed agent service. The repository includes a Cloud Run friendly agent service structure, with the hosted submission path designed to run through a Google ADK / Agent Builder style deployed agent. The Next.js app communicates with the agent service, receives a structured analysis result, and applies updates only after operator approval.
Challenges we faced
One challenge was making the AI output useful for real operations instead of just producing polished text. A popup operator needs clear actions, not only rewritten announcements. We designed the workflow so the agent returns structured fields such as domain, action, target product, confidence, and reason.
Another challenge was balancing automation and safety. Automatically changing product availability or congestion status without review would be risky in a live event. We added a human-in-the-loop approval step so the agent can propose actions while the operator keeps final control.
We also had to keep the demo deterministic. To make judging and rehearsal easier, we prepared seeded popup event data so the Limited Keyring sold-out flow can be demonstrated reliably.
What we learned
We learned that agentic workflows become much more valuable when they are tied to real operational state. The most important part was not the text generation itself, but the conversion from a natural-language field note into a reviewable, structured operation.
We also learned that MCP is a strong fit for this kind of application because the agent needs grounded context from operational data before it can propose the right action.
What’s next
Next, we would expand the action set beyond sold-out and congestion updates. Future versions could support staff task assignment, automated booth-level alerts, inventory restocking suggestions, multilingual visitor notices, and analytics for recurring popup events.
We also want to improve the operator review UI so teams can compare the original note, AI-refined announcement, proposed database operation, and expected customer-facing impact before approval.
Log in or sign up for Devpost to join the conversation.