kiasumiles_agent_guide
ChatGPTReturn concise hosted integration guidance for agents. Use this for diagnostics, installation checks, or when an agent needs presentation rules.
kiasumiles_changes_since
ChatGPTSummarize source-neutral card and merchant rule changes since an ISO date. Use this when the user asks what changed or whether the data was updated. Present changed_on, effective_on when present, entity_name, and summary. Do not infer or disclose private sources.
kiasumiles_compare_payment_methods
ChatGPTCompare payment methods for the same merchant and supplied card stack. Use this when payment method is unspecified or the user asks whether to pay by mobile wallet, physical contactless card, online, or through Amaze. Pass amount_sgd when known. Amaze is compared only when the user supplied it. For Chocolate, chocolate_eligible requires the card linked and verified on HeyMax with matching account emails; from October 2026 it also requires prior-month SGD balance eligibility. Omit it when unknown, or pass false when ineligible. For Smart, smart_statement_spend_sgd is the user-confirmed eligible statement-month total including this purchase and supplementary cards; omit if unknown, never forecast it. PPS comparisons use unknown-spending bounds. Once payment is chosen, use lookup with the confirmed spending in that payment's applicable monthly bucket. For DBS Vantage, pass vantage_miles_selected only for the user's confirmed digibank reward choice (true for Miles, false for Cashback); omit when unknown. For Lady's cards, pass ladys_category_selected only after confirming this purchase is in the currently selected rewards category (false if outside it). A future-quarter selection is not current. Pass ladys_savings_mab_sgd only for the confirmed monthly average balance in the posting month, not today's balance. Pass ladys_savings_eligible=true only when the eligible Savings primary accountholder is also the principal cardholder and both accounts are in good standing. Omit unknown inputs. Savings tiers can be 6/8/10 mpd; show them only as returned and retain the remaining-cap caveat. For Singapore Kris+ payments, pass payment_platform="krisplus" with the underlying merchant and outlet. Reuse cards already provided. If the user only says Kris+, ask which merchant/outlet; never invent its category. The route uses in-app Apple Pay/ Google Pay, even if the user says "Apple Pay"; it is not an in-store tap. Pass amount_sgd as the card-charged amount only, excluding any portion paid with redeemed miles. Display platform_note and routing_note. Keep card miles separate from the partner's Kris+ rate shown in the app; never assume a fixed partner rate or total stacked rate. KrisFlyer UOB's eligible Kris+ rate is 3 mpd without the annual SIA Group threshold. Citi Rewards direct in-app wallet payments earn base only when otherwise eligible. Other online bonus rates remain conditional on posting category/indicators and caps. Do not recommend unavailable bank-issued Amex or unverified Amaze routes. Atome remains unsupported; show its returned limitation and clarification request. Pass is_recurring for confirmed automatic fixed-interval payments (true), or confirmed one-off purchases (false). Pass revolution_ega_eligible=true only with confirmed S$50,000 average daily SGD deposits in a sole HSBC Everyday Global Account for the posting month; otherwise omit it. Omit recurring-payment status when unknown. For Revolution, pass revolution_prior_eligible_spend_sgd only for confirmed eligible spending already posted that calendar month across primary and supplementary cards, excluding this purchase. Omit if unknown; zero must be confirmed. Repeated shopping alone is not recurring. Present the best guaranteed and conditional result for each method with conditions and caveats. Show a returned message when no recommendation is available; never invent a merchant match.
kiasumiles_data_version
ChatGPTReturn record verification dates and row counts. data_version is the newest individual record verification date, not the last database edit or a full-database review date. For recent updates, call kiasumiles_changes_since. Never describe all rules as verified on data_version; individual records may be older.
kiasumiles_list_cards
ChatGPTList supported Singapore credit cards and their stable card IDs for hosted MCP requests. Skip bank questions when cards are already named. Reuse mappings from this conversation. For one bank, filter by bank. For multiple banks or named cards, call once without bank and filter internally. Show relevant cards only. Clarify ambiguous variants rather than guessing. Use card IDs internally as request parameters, but never show card_id values to the user unless they ask for diagnostics.
kiasumiles_lookup
ChatGPTPrimary hosted tool for Singapore card/merchant recommendations. Use this whenever the user asks which card to use, what to tap, or which card earns the most miles at a Singapore merchant. Pass the user's wallet card IDs in cards for this request only. The hosted service does not store wallet data. Do not call this tool until you have a card stack for this request. If the client has not already supplied cards, ask which cards the user carries first. Use kiasumiles_list_cards to map the user's card names to stable card IDs, then call kiasumiles_lookup with those IDs. Pass the user's exact merchant name. Extract outlet and channel from natural language if present. Use channel="app" only for an order placed in the merchant's own app. For CHAGEE, this distinction is required for the yuu bonus; website or tap payments are not equivalent. If the merchant is not found, pass category when context makes it obvious. Accepted values: dining, grocery, transport, petrol, pharmacy, hotel, airlines, shopping. Pass is_recurring=true for confirmed automatic payments authorised once and charged at fixed intervals; false for a confirmed one-off purchase. Omit when unknown. Pass revolution_ega_eligible=true only after confirming at least S$50,000 average daily SGD deposits in the user's sole HSBC Everyday Global Account for the posting month; joint accounts do not qualify. Otherwise omit this flag. For Revolution, supply revolution_prior_eligible_spend_sgd only when the user confirms the bonus-eligible amount already posted in that calendar month across primary and supplementary cards, excluding this purchase. Omit if unknown; never assume zero. Standard Chartered recurring payments do not earn rewards. Do not infer recurring status merely because the user shops with the same merchant regularly. For DBS Vantage, pass vantage_miles_selected=true only when the user confirms Miles is selected in digibank; false for Cashback, or omit when unknown. Do not assume the default is still selected. Cashback automatically consumes points next month. For PRVI Miles and BOC Elite Miles, supply transaction_currency and payment_gateway_country only when confirmed (uppercase currency and country codes, e.g. MYR and MY). The processing country is not necessarily the merchant's location. Omit unknown details; never promise the overseas or regional rate based on foreign currency alone. For Chocolate Visa, pass chocolate_eligible=true only when the user confirms the card is linked and verified on HeyMax and both accounts use the same email. From October 2026, also require confirmation of at least S$5,000 prior-month average daily SGD balance; September 2026 has no balance check. Pass false when ineligible; omit when unknown. Never infer eligibility from owning the card. When requires_clarification is returned, ask for the outlet/payment details instead of guessing. For Smart, pass smart_statement_spend_sgd only for user-confirmed total eligible spending in this statement month, including this purchase and supplementary cards. Do not use a forecast, calendar-month total, or the purchase amount alone. Omit when unknown. For PPS cards, pps_prior_spend_sgd maps each card ID to its confirmed prior eligible calendar-month SGD-equivalent spending, excluding this purchase. Use only the same currency bucket (SGD or foreign currency); never combine cards or currency totals. If pps_sia_group_eligible=true, use the separate qualifying SIA Group spending bucket instead. Confirm direct SGD purchase and Singapore departure for flights; Pelago digital-wallet purchases do not qualify. Omit the flag if uncertain. Omit unknown totals. PPS estimates with unknown spending are lower/upper bounds, not exact awards. The monthly calculation may complete an earlier partial S$10 block. Explain this when the incremental miles appear large relative to a small purchase. For Lady's cards, pass ladys_category_selected only after confirming this purchase is in the currently selected rewards category (false if outside it). A future-quarter selection is not current. Pass ladys_savings_mab_sgd on…
kiasumiles_recommend_stack
ChatGPTAnalyze a stateless wallet card list for weak categories. Use this when the user asks whether their current card stack is good or what weak categories exist. The cards parameter is required for hosted usage and is not stored. This hosted tool only evaluates cards supplied in the current request; it does not suggest cards outside that request. If the client has not already supplied cards, ask which cards the user carries first. Present covered and weak categories. Never show raw card IDs to the user.