Case studies
Built for The Mantra
AIMCPToolsAutomation

A fragrance brand, run from one app and from a chat

The Mantra makes small-batch perfumes in Malaysia and sells them through a network of agents. We built the system that runs it: batches, stock, agents, sales and commissions in one app. The public shop runs on the same data, and the owners can ask their AI assistant how the business is doing.

every bottle, back to the batch it was poured from
Tracedevery bottle, back to the batch it was poured from
every screen updates the moment a sale is recorded
Liveevery screen updates the moment a sale is recorded
for an AI assistant to read the whole business
~160 tokensfor an AI assistant to read the whole business
each agent sees just their own stock and sales
Own data onlyeach agent sees just their own stock and sales
app.themantra.co · dashboard

The Mantra app dashboard: sales, revenue, commission and performance

The Mantra app dashboard: sales, revenue, commission and performance
The owners’ dashboard: sales, revenue, what HQ keeps after commission, and stock still waiting to go out. Names and figures are blurred on every screen here.
The business

Perfume made in batches, sold by a team of agents

Every perfume is blended in a batch and left to mature before it is bottled. Agents across Malaysia take stock from HQ, sell to their own customers, and earn commission. That means a lot to keep track of: which batch is ready, who holds which bottles, who has paid, and who is owed.

  1. HQ

    Makes a batch

    • Blended and matured
    • Bottled into sizes
    • Oldest batch sold first
  2. The Mantra app

    Tracks every bottle

    • Stock at HQ and with each agent
    • Stock requests
    • Sales and payments
    • Commissions
  3. Customers

    Buy

    • From an agent
    • From HQ
    • Browse the public shop
What the app does

Everything the business runs on, in one place

Admins see the whole business. Agents log in to the same app and see only their own stock, sales and commissions, on any phone.

Batches

Every batch with its maturing date. Stock goes out oldest first, and mistakes are fixed through a correction, not by editing history.

Inventory

Stock at HQ and with every agent, by product and size, with low-stock warnings.

Sales

Record a sale in seconds. Pay now, pay later or pay in parts, and cancel cleanly when an order falls through.

Agents

Invite an agent with a link. They set their own password and start selling straight away.

Commissions and payouts

What each agent has earned, what has been paid, and the payout details, all in one record.

Stock requests and interest

Agents ask HQ for more stock, and log customers who are interested in a product that isn’t in stock yet.
Inside the app

The screens the team uses every day

app.themantra.co · batches

Batches: every batch with its code, manufacture and maturation dates, and bottles left

Batches: every batch with its code, manufacture and maturation dates, and bottles left
Batches. Each one has a code, the day it was made, the day it matures, and how many bottles are left. The shop’s “traced to its batch” promise comes from here.
app.themantra.co · stock

Stock: every product, with who holds it

Stock: every product, with who holds it
Stock. Open a product to see who holds it, HQ or an agent on consignment. Requests, movements, losses and gifts, and corrections each have their own tab.
app.themantra.co · sales

Sales overview with totals and every sale

Sales overview with totals and every sale
Sales. Every order with who sold it, how it was paid and whether it has gone out yet.
app.themantra.co · dashboard

Top products and agent rankings

Top products and agent rankings
Best-selling perfumes and the agent leaderboard, for any period.
The Mantra dashboard on a phone
The same app on a phone, which is where agents use it.
Built for AI

Ask your AI assistant how the business is doing

We gave The Mantra its own MCP server, the open standard AI assistants like Claude and ChatGPT use to connect to software. The owners can ask “how did we do this month?” or “what’s running low?” and get an answer from the live numbers, in plain language, on their laptop or phone.

On claude.ai it connects through a proper sign-in, with nothing to paste. Desktop and coding tools use a personal key. A snapshot of the whole business costs about 160 tokens. The AI can file a stock request or note a customer’s interest, but it can never move stock or take money.

You ask your AI assistant

  • How did sales go this month compared to last?
  • Which products are running low?
  • Who are our top agents, and who still owes us?
  • Request 10 more Black Velvet 30ML for me.

Claude, ChatGPT or any MCP-ready assistant picks the tool, calls the-mantra and answers from what comes back, on a laptop or a phone.

Read

  • overviewrevenue, orders, what’s owed, low stock
  • salessales by period, agent or channel
  • inventorystock at HQ and with each agent
  • batchesbatches and when they mature
  • paymentswho has paid and who owes
  • rankingsbest products and agents

Act · limited on purpose

  • create_stock_requestask HQ for more stock
  • record_interestnote a customer’s interest
app.themantra.co · settings · MCP access

The MCP access page in The Mantra's settings

The MCP access page in The Mantra's settings
The owners connect their AI assistant from Settings: copy the address, create a key, and see every question it has asked, by tool and by connection.

Nothing to install and no developer needed. Each key belongs to one person and one device, and the usage panel shows exactly what the AI looked at.

Acts as the person signed in

The AI sees exactly what that person can see in the app, and nothing more. Today it is open to admins only.

Keys you can switch off

Each connection gets its own key, stored only as a fingerprint, and any of them can be switched off from the settings page.

Every question logged

Each tool call is recorded, without customer details, so the owners can see what their AI assistant looked at and when.
Content that posts itself

Write once in Notion, publish everywhere

The Mantra’s content lives in a Notion board. Once a post is approved, our Automator platform publishes it to Instagram, Facebook and Threads on schedule, records what went out, and messages the team on Telegram if anything fails. It also warns them twice a day when the queue of approved posts is running low.

automator · the-mantra-cross-poster · flow

The cross-poster workflow, drawn as a flow diagram

The cross-poster workflow, drawn as a flow diagram
The cross-poster: approved content goes to Instagram, Facebook and Threads, and each platform is ticked off as it lands.
automator · the-mantra-threads-poster · flow

The Threads poster workflow, drawn as a flow diagram

The Threads poster workflow, drawn as a flow diagram
Threads posts go out on their own schedule, every few minutes.
automator · the-mantra-threads-content-runway-alert · flow

The content runway alert workflow, drawn as a flow diagram

The content runway alert workflow, drawn as a flow diagram
A nudge on Telegram when fewer approved posts are left than the schedule needs.
How it fits together

One backend, four ways in

The app, the public shop, the AI connection and the automations all work from the same live data, so there is one version of the truth and nothing to sync.

The app

For the owners and every agent.

The shop

Public products and stock, read-only.

MCP

The owners’ AI assistant, with their permissions.

Automations

Content publishing and team alerts.
  • Next.js
  • React
  • Convex
  • TypeScript
  • Tailwind CSS
  • shadcn/ui
  • MCP · OAuth 2.1
  • Automator (ours)
  • Notion
  • Meta Graph API
  • Telegram

Tell us where the business hurts. We'll tell you if AI fixes it.

Thirty minutes with the engineers who'd actually build it. You leave with an honest read on whether it's worth doing, what it would take, and what it would cost.