KiasuMiles
KiasuMiles is a Singapore credit card miles optimization server that helps you identify which credit card earns the most miles for any given merchant, based on your personal card stack.
List supported cards (
kiasumiles_list_cards): Browse all supported Singapore credit cards, optionally filtered by bank.Configure your wallet (
kiasumiles_configure): Save or replace your personal card stack locally on your device — the hosted service never stores this data.View your wallet (
kiasumiles_get_wallet): Display the card names currently saved in your local wallet.Look up best card for a merchant (
kiasumiles_lookup): Get a ranked recommendation for the best card to use at a specific merchant, with optional outlet, payment channel (e.g. contactless, online), or spending category parameters.Review weak categories (
kiasumiles_recommend_stack): Analyze your saved card stack to identify spending categories that are under-covered.Check data version (
kiasumiles_data_version): Retrieve the current version of hosted card rules and merchant mappings.Get agent guidance (
kiasumiles_agent_guide): Retrieve workflow guidance and best practices for integrating KiasuMiles into an AI agent.
Supports Grab merchant lookups, providing the best credit card recommendation for earning miles when paying via the Grab app or at Grab merchants.
Allows card recommendations for HSBC credit cards, enabling users to maximize miles at various merchants based on HSBC card earn rates and caps.
Supports Shell fuel stations, providing the best credit card recommendation for earning miles at Shell locations.
Supports Singapore Airlines online bookings, providing the best credit card recommendation for earning miles on flight purchases.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@KiasuMilesWhat card should I use at Cold Storage?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
KiasuMiles
“Which card do I use again?”
KiasuMiles helps you choose from the Singapore miles cards you already hold. Tell a compatible AI agent which cards are in your stack, ask about a merchant, and KiasuMiles ranks those cards using its centrally maintained card and merchant database.
The hosted KiasuMiles service does not store your card stack. It never needs your card number, expiry date, CVV, banking login or payment details.
Quick start
Send this message to your AI agent:
Connect me to KiasuMiles at https://kiasumiles.space/mcp if its tools are not already available.
Ask before changing settings or running installation commands. Do not say KiasuMiles is connected until you can list its tools and successfully call its data-version tool.
If you cannot add the connection yourself, say so plainly and give me only the documented setup steps for the AI agent I am using. Do not guess. Then wait for me to complete them.
Once KiasuMiles is available, check whether this installation provides tools to read or configure a saved card stack. If it does, show me any saved cards and ask whether I want to keep or change them. If it does not, explain how this AI agent can supply my selected cards for KiasuMiles lookups and whether my selections will persist between conversations.
Ask which banks I have cards with, show me the matching supported cards, and ask me to confirm my selections.
Use only the storage method documented by the available tools. Never claim the hosted KiasuMiles server stores my card stack.
After confirming my cards, ask for a Singapore merchant and recommend my best card.This message is both a setup request and a capability check. Some AI agents can add the connection after asking for approval. Others require you or a workspace administrator to add it in settings.
Related MCP server: edhrec-mcp
Choose your AI agent
OpenClaw or Hermes through Telegram
Paste the quick-start message into your Telegram chat.
If your agent is allowed to update its MCP configuration, it can ask for approval, add KiasuMiles and verify the tools. This depends on the permissions configured by the person who runs your agent, so do not treat a success message as proof unless the agent can actually use the KiasuMiles tools.
Codex on desktop
In the desktop app:
Open Settings → MCP servers.
Select Add server.
Name it
KiasuMiles.Choose Streamable HTTP.
Enter:
https://kiasumiles.space/mcpSave the server and restart the app.
Use
/mcpto confirm that the KiasuMiles tools are available.Send the quick-start message above.
Codex CLI users can add the same hosted server with:
codex mcp add kiasumiles --url https://kiasumiles.space/mcpThen run codex mcp list or use /mcp to verify it.
Claude
Add KiasuMiles as a custom connector using Claude on the web or Claude Desktop:
Open Customize → Connectors.
Select + → Add custom connector.
Enter
KiasuMilesand:https://kiasumiles.space/mcpAdd the connector.
Enable it for the conversation, then send the quick-start message.
Claude currently makes custom connectors available on Free, Pro, Max, Team and Enterprise plans; Free accounts are limited to one custom connector. On Team and Enterprise plans, an Owner or Primary Owner must add the connector for the organisation before members can connect it.
Claude supports connectors on iOS and Android. Installing connectors on mobile is currently in beta, so web or desktop remains the more reliable setup path.
See Claude’s custom connector guide.
ChatGPT web and ChatGPT Work
Do not expect the quick-start message to install KiasuMiles by itself.
If your account or workspace provides custom MCP apps in developer mode, add KiasuMiles as a custom app on ChatGPT web using:
https://kiasumiles.space/mcpManaged workspaces may require an administrator or owner to enable developer mode, create and review the app, and publish it to the workspace before members can use it.
After the app is available in a chat, send the quick-start message.
Custom MCP apps are currently web-only in ChatGPT. Do not claim that this setup works in the ChatGPT mobile app.
See OpenAI’s developer-mode and MCP app guide.
Another AI agent
Check whether it supports remote MCP servers over Streamable HTTP and lets you add a custom server URL. If it does, add:
https://kiasumiles.space/mcpThen verify that it can list and call the KiasuMiles tools before relying on it.
First use
After KiasuMiles is connected:
Your agent asks which banks you use.
KiasuMiles shows the supported cards from those banks.
You confirm the cards you hold.
Your agent explains whether it can remember that selection.
You provide a merchant and, where useful, how you are paying.
KiasuMiles ranks only the cards supplied for that lookup.
Try:
What card should I use at NTUC FairPrice?Other useful questions:
I’m paying for Grab in the app. Which card should I use?Which card should I use for a Singapore Airlines booking online?Which of my cards should I use at this restaurant with Apple Pay?The result can include the card name, miles per dollar, spending-cap summary, reason for the ranking and relevant caveats.
Your card stack and privacy
The hosted KiasuMiles MCP server has no wallet-save or wallet-read tools. For each hosted recommendation, the AI agent or client supplies the selected cards in that request.
Whether your card stack survives a new conversation depends on the AI agent or client you are using. KiasuMiles cannot guarantee that persistence, so ask the agent to explain its documented storage behaviour.
KiasuMiles needs only the names of your cards. Do not provide:
Card numbers
Expiry dates
CVVs
Banking usernames or passwords
One-time passwords
Transaction or account credentials
If your agent supports remembering your selection, you can ask:
Show me the card stack you use for KiasuMiles lookups.Add OCBC 90°N to the card stack you use for KiasuMiles.Remove UOB Preferred Visa from the card stack you use for KiasuMiles.The agent should tell you whether that change will persist. These are requests to your agent; the hosted KiasuMiles server itself does not save the stack.
Troubleshooting
The agent says it cannot connect
Confirm that the agent supports remote MCP servers over Streamable HTTP.
Check that the endpoint is exactly
https://kiasumiles.space/mcp.Check whether your account or workspace allows custom connections.
Use the product-specific steps above instead of asking the agent to guess.
The agent says KiasuMiles is connected, but cannot list its tools
The connection has not been verified. Restart or reload the agent using its documented method, then require it to list the KiasuMiles tools and call kiasumiles_data_version.
My card stack disappeared in a new conversation
The agent or client did not persist it. Run the quick-start message again and ask the agent to explain its storage behaviour. The hosted KiasuMiles server is not a wallet store.
The recommendation is too broad
Include the exact merchant and payment method:
Which of my cards should I use at NTUC FairPrice with Apple Pay?The service returns a rate-limit error
The hosted MCP endpoint defaults to 30 requests per 60 seconds for each IP address handled by a running service instance. If you receive HTTP 429, wait and retry.
Supported cards and data
Ask your agent:
Show me all cards currently supported by KiasuMiles.The production service reports its current number of card rules, merchant records, data version and backend at:
https://kiasumiles.space/healthRecords may include a confidence level and last-verified date, but those fields do not guarantee that every merchant classification or bank rule is current.
Recommendations are informational. Check the relevant bank’s current terms before making a large or unusual purchase.
For supported Amaze pairings, include both Amaze and the paired card in your selected stack so KiasuMiles can apply its configured adjustment.
Hosted MCP reference
KiasuMiles currently exposes five hosted MCP tools:
Tool | Purpose |
| Lists supported cards, optionally filtered by bank |
| Ranks supplied cards for a merchant |
| Reviews category coverage among supplied cards |
| Returns the data version, record counts and backend |
| Returns integration and display guidance |
Hosted lookups are stateless. The cards parameter is required, and the server does not retain it as a wallet.
Test the MCP connection
curl -i -X POST https://kiasumiles.space/mcp \
-H 'Content-Type: application/json' \
-H 'Accept: application/json, text/event-stream' \
-d '{"jsonrpc":"2.0","id":1,"method":"initialize","params":{"protocolVersion":"2025-06-18","capabilities":{},"clientInfo":{"name":"curl-smoke","version":"1.0"}}}'Public REST adapter
The hosted service also exposes a stateless REST adapter:
Route | Purpose |
| OpenAPI schema |
| Lists supported card names by bank |
| Looks up a merchant using card names supplied in the request |
| Reviews the supplied card stack |
The public adapter accepts card names and removes internal card IDs, merchant-category codes and internal reason codes from its JSON responses.
Example:
{
"merchant": "NTUC FairPrice",
"cards": [
"UOB Preferred Visa",
"Citi Rewards Mastercard"
],
"channel": "mobile_contactless"
}For maintainers
Production can load card rules and merchant mappings from Supabase. The repository includes a smaller bundled dataset for development and tests.
Environment variables:
KIASUMILES_SUPABASE_URLKIASUMILES_SUPABASE_SERVICE_ROLE_KEYKIASUMILES_SUPABASE_CARDS_TABLE— optional; defaults tocard_rulesKIASUMILES_SUPABASE_MERCHANTS_TABLE— optional; defaults tomerchant_mccKIASUMILES_DATA_BACKEND— optional;autoorsupabaseKIASUMILES_RATE_LIMIT_REQUESTS— optional; defaults to30;0disables the MCP rate limitKIASUMILES_RATE_LIMIT_WINDOW_SECONDS— optional; defaults to60
Backend selection:
auto: use Supabase when its credentials are present; otherwise use the bundled datasetsupabase: require Supabase and fail if it is unavailable
The database schema is at supabase/schema.sql. Both /health and kiasumiles_data_version report the selected backend.
Supabase keep-awake
The Supabase keep-awake GitHub Actions workflow performs one direct, read-only
card_rules query at 08:17, 16:17, and 00:17 Singapore time each day. It does
not use the hosted /health route, because a warm hosted process can serve
cached data without touching Supabase. The query selects one identifier and
never inserts, updates, or deletes data.
Configure the encrypted repository secrets:
In the GitHub repository, open Settings → Secrets and variables → Actions.
Choose New repository secret and create
KIASUMILES_SUPABASE_URLwith the production project API URL.Choose New repository secret again and create
KIASUMILES_SUPABASE_SERVICE_ROLE_KEYwith the production service-role key used by the hosted backend.
Never put either value in the workflow file, source code, logs, or a pull request. The script prints only a generic success message or a sanitized error; a failed query exits non-zero so the workflow is visibly red in GitHub Actions.
The scheduled trigger starts only after the workflow is on the repository's default branch. After merging, open Actions → Supabase keep-awake → Run workflow once and confirm the run succeeds. Keep GitHub Actions failure notifications enabled so a failed scheduled run is noticed.
Feedback
If a recommendation appears wrong or a merchant is missing, message @kiasumilesbot on Telegram with the merchant name and the recommendation you received.
Changelog
See CHANGELOG.md.
About
KiasuMiles is built by Hosan, founder of The AI Burrow, Singapore’s applied AI collective for teams and builders who want to move past the hype and actually deploy.
Telegram: t.me/theaiburrow
Email: hello@theaiburrow.xyz
MIT License
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceAn MCP server that finds cheap flights with flexible dates and smart suggestions using the Google Flights API.Last updated3MIT
- FlicenseAqualityBmaintenanceMCP server for Magic: The Gathering Commander that provides card data from Scryfall and deckbuilding recommendations from EDHREC.Last updated5
- Alicense-qualityCmaintenanceMCP server that helps AI assistants automatically find, filter, and rank the best AI models for a specific task using the OpenRouter API.Last updated1MIT
- Alicense-qualityCmaintenanceA hosted MCP server for AI-powered credit card advice, enabling search, comparison, portfolio analysis, and personalized recommendations for US credit cards through natural language.Last updated1MIT
Related MCP Connectors
MCP server integrating with Stripe - tools for customers, products, payments, and more.
MCP server aggregating developer infrastructure deals, free tiers, and startup programs
MCP server providing access to the Scorecard API to evaluate and optimize LLM systems.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/hosanxiv/kiasumiles'
If you have feedback or need assistance with the MCP directory API, please join our Discord server