The story
I built KiasuMiles because "roughly right" was costing real miles.
The spark was a repeated human moment: standing at checkout, knowing the right card probably exists, but not knowing it quickly enough to use it.
The moment
The ritual was small enough to ignore.
At the cashier, my wife would look at her wallet, look at me, and ask: "Which card?" I usually had an answer. "Usually" is where miles disappear quietly.
One confident tap can turn 4 mpd into base rate. You find out days later, if you bother checking the statement at all.
The build
The product became an MCP server.
The early build had local wallet setup and config paths. Useful, but too much ceremony for the checkout line.
Now the hosted endpoint keeps the rules current while clients pass the user's card IDs for each request.
The tap
The answer moved to the moment that matters.
Your wallet, your partner's wallet, your parents' cards, ranked for the merchant in front of you.
The whole product lives in the few seconds before the tap. That is the only window that matters.