Skip to main content

SG's first AI-powered miles card optimizer — tells your agent which credit card earns the most miles at any merchant, based on MCC codes. Works offline, no API keys.

Project description

KiasuMiles

SG's first AI-powered miles card optimizer — "which card do I tap?"

KiasuMiles connects to your AI agent and tells you which credit card earns the most miles at any Singapore merchant — based on the actual MCC your card will post under.

No hosting. No API keys. Works offline.


How it works

  1. Add KiasuMiles to your agent's MCP config (one config block, copy-paste)
  2. Tell your agent which cards you carry — once, in plain English
  3. Next time you're at a merchant, just ask: "which card?"

Setup

Pick your agent below. You only do this once.


Claude Desktop

Open this file in a text editor:

On Mac:

~/Library/Application Support/Claude/claude_desktop_config.json

On Linux:

~/.config/Claude/claude_desktop_config.json

(Create it if it doesn't exist yet)

Add the "kiasumiles" block inside "mcpServers":

{
  "mcpServers": {
    "kiasumiles": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/hosanxiv/kiasumiles", "kiasumiles-mcp"]
    }
  }
}

Save and fully restart Claude Desktop.

First time using uvx? Install uv first — it's a fast Python tool manager:

curl -LsSf https://astral.sh/uv/install.sh | sh

Then restart your terminal and try again.

Check it loaded: look for KiasuMiles in the tools menu (hammer icon), or ask:

"What KiasuMiles tools do you have?"


Claude Code (CLI)

Install the package locally, then register it:

pip3 install kiasumiles-mcp
kiasumiles-setup

kiasumiles-setup auto-connects to Claude Desktop and Claude Code in one step.

Restart Claude Code, then run /mcp to confirm:

kiasumiles: /path/to/kiasumiles-mcp  - ✓ Connected

Prefer uv? uv tool install kiasumiles-mcp then kiasumiles-setup Using pipx? pipx install kiasumiles-mcp then kiasumiles-setup


OpenClaw

Add to your OpenClaw MCP config:

{
  "mcpServers": {
    "kiasumiles": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/hosanxiv/kiasumiles", "kiasumiles-mcp"]
    }
  }
}

Running OpenClaw on a VPS (Ubuntu)? Install uv first:

curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env

Then add the config block above and restart OpenClaw.


Hermes

Add to your Hermes MCP config:

{
  "mcpServers": {
    "kiasumiles": {
      "command": "uvx",
      "args": ["--from", "git+https://github.com/hosanxiv/kiasumiles", "kiasumiles-mcp"]
    }
  }
}

Running Hermes on a VPS (Ubuntu)? Install uv first:

curl -LsSf https://astral.sh/uv/install.sh | sh
source $HOME/.local/bin/env

Then add the config block above and restart Hermes.


Set up your card wallet

Once KiasuMiles is connected, tell your agent — replacing the cards with your own:

"Use kiasumiles_list_cards to see what's available, then set up my KiasuMiles wallet with these cards: HSBC Revolution, UOB PPV, DBS yuu, Amaze, Citi Rewards Mastercard, DBS Altitude, UOB PRVI Miles."

The agent matches your card names to the database and saves your wallet. You only do this once.

Example response:

Wallet saved with 7 cards:
· HSBC Revolution
· UOB Preferred Platinum Visa
· DBS yuu Visa
· Amaze
· Citi Rewards Mastercard
· DBS Altitude Visa
· UOB PRVI Miles Visa

Wallet saved to ~/.kiasumiles/wallet.yaml

If a card isn't found, ask "show me all KiasuMiles cards" to find the right name.


Daily use

Just ask, any time:

  • "What card at NTUC FairPrice?"
  • "Best card for Grab contactless?"
  • "I'm at Shell. Which card?"
  • "Booking flights on Singapore Airlines — which card?"
  • "Which card at Shake Shack — I'm paying online"

KiasuMiles returns your best card, the earn rate, and the monthly cap. If you have Amaze, it automatically factors in the combo and nets out the fee.


Updating your wallet

Changed cards? Tell your agent:

"Update my KiasuMiles wallet — add OCBC 90N Mastercard, remove UOB PPV."

You can also ask: "What cards do I have saved?" to see your current wallet.


Troubleshooting

Agent doesn't know what KiasuMiles is after setup

Run this in your terminal to check the server starts correctly:

uvx --from git+https://github.com/hosanxiv/kiasumiles kiasumiles-mcp

You should see a JSON response. If you get an error, the most common cause is uv not being installed — see the setup steps for your agent above.


Claude Code: "Failed to connect"

Run to see the real error:

kiasumiles-mcp

Then re-register:

claude mcp remove kiasumiles
claude mcp add kiasumiles $(which kiasumiles-mcp)

Card not found during wallet setup

Ask your agent: "show me all KiasuMiles cards" — lists every supported card by name.


Tools

Tool What it does
kiasumiles_lookup Best card for a merchant — MCC, earn rate, cap
kiasumiles_configure Save your wallet
kiasumiles_get_wallet See your currently saved cards
kiasumiles_list_cards See all supported cards

Supported cards (brief list)

HSBC Revolution · UOB PPV · UOB Visa Signature · DBS Altitude · DBS yuu · DBS Woman's World · Citi Rewards · Citi PremierMiles · OCBC 90N · OCBC Rewards · Maybank Horizon · Maybank World · UOB PRVI Miles · UOB Lady's · KrisFlyer UOB · Amex KrisFlyer · Standard Chartered Journey · BOC Elite Miles · Amaze combos · and more

Ask "show me all KiasuMiles cards" for the full list.


Data

Merchant MCC data is community-verified and updated regularly. Card rules sourced from publicly available bank T&Cs.


Built by Hosan · MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

kiasumiles_mcp-0.1.0.tar.gz (45.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

kiasumiles_mcp-0.1.0-py3-none-any.whl (45.9 kB view details)

Uploaded Python 3

File details

Details for the file kiasumiles_mcp-0.1.0.tar.gz.

File metadata

  • Download URL: kiasumiles_mcp-0.1.0.tar.gz
  • Upload date:
  • Size: 45.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for kiasumiles_mcp-0.1.0.tar.gz
Algorithm Hash digest
SHA256 aebd2850ffe9e58e08fc1205c78b522ab20961c7308cecaae66d418a860bc9d5
MD5 6fe37be9d7170eeb1ff9719d5a1497c3
BLAKE2b-256 e643a30675abada21a4d2c574da9160477595017f41f445c1649166162d9dc0e

See more details on using hashes here.

File details

Details for the file kiasumiles_mcp-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: kiasumiles_mcp-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 45.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.4

File hashes

Hashes for kiasumiles_mcp-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dc837d4a6b4b6de05c9ce6d710c4138ee8bfeb455e5902d12e6f4074e58f476b
MD5 82999fd0aea017af36b0003cb27281ea
BLAKE2b-256 53e5a0ad9b224d9a5d8719e3042e34b346aafe35d32266a7b44b7be39ba64fa5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page