AI · 2025
MayAI - A Consumer AI Agent for Household Tasks
A home butler for households in the UAE: from one chat message, an AI agent finds restaurants and dishes in Dubai, shows the menus and builds the order. Designed and built by Momentaj to a working prototype in English and Arabic.
Outcomes
- A working prototype in English and Arabic, from a chat message to restaurants, menus, a cart and checkout
- One tool-calling agent with six tools on Microsoft Agent Framework in .NET
- Server-side grounding: the model returns IDs, the server builds the cards, invented items never render
- Built by an architect and one developer
Overview
MayAI is a consumer AI agent co-founded by Momentaj's founder in 2025. People in the UAE use a separate app for every errand: food, groceries, cleaning, rides. MayAI's idea was to replace them with one conversation that coordinates multi-step tasks across those services. Its first domain was food. From a message like "I have six friends coming over at 8 pm", the agent finds restaurants and dishes in Dubai, shows their menus and builds the order. It reached a working prototype in 2025.
The Challenge
An agent that acts for a consumer has to earn trust in ways a chatbot doesn't. It has to act, not just say it will. It can't invent anything: a dish that isn't on the menu or a price that isn't real becomes an order nobody can fulfil. It has to know when to ask, because "add the burger" is clear with one burger on screen and a guess with three. And its data is someone else's: restaurant and menu records arrive large, nested and inconsistent, and every extra field sent to the model costs time and money.
What We Built
We built a mobile-first web app that installs like a native one, in English and Arabic with a right-to-left layout: onboarding, a home screen with suggestions and active orders, the chat, the cart, checkout and order history. Behind it is one tool-calling agent on Microsoft Agent Framework in .NET, running OpenAI models through OpenRouter, with six tools: free-text search, filters by cuisine and diet, the list of available filters, a restaurant's menu, the cart, and a memory of the user's preferences. Live restaurant and menu data came from Careem through a small Node.js service that reduced each response to plain records.
The design keeps the agent honest. Every reply is a JSON object in a fixed schema: reasoning, a message, up to five quick-reply options, and the IDs of the items to show. The server looks each ID up in what the tools returned during that request and builds the cards itself, so an ID no tool returned is dropped and a made-up dish can't appear on screen. The agent acts first and speaks second, asks when a request is ambiguous, widens an empty search and says so, and fills in a reasoning field the app never shows. Menus are stripped of images and tracking fields before they reach the model, and each turn is saved as one transaction, so a failed model call saves nothing.
Results
A working prototype in English and Arabic, from a chat message to restaurants, menus, a cart and a simulated checkout, built by an architect and one developer. The server-side grounding pattern, where the model returns IDs and the server builds the output, is now how we design every agent that puts real items, prices or actions in front of a user. MayAI stopped at the prototype stage, before real ordering or payment integration.
Have a similar problem?
Tell us what you are trying to do. We will say how close this is and what it would take.
Book an AI consultation