Every MCP tool Miles exposes, grouped by domain, on one page — the fetch an agent makes instead of nine.
Cards
get_best_card
Best card in the user's wallet for a spending category (dining, groceries, gas, travel, rent, ...) or a specific merchant -- pass at least one of category or merchant; amount (dollars) is optional.
Scope
Quota
miles:read
standard
Name
Type
Required
category
string
merchant
string
amount
number
get_card_info
Full details for a credit card PRODUCT: fees, earning rates, credits, benefits, transfer partners, sign-up bonus.
Scope
Quota
miles:read
standard
Name
Type
Required
card_name
string
wallet_id
string
get_product_changes
Upgrade and downgrade paths for a wallet card -- the natural next question after analyze_keep_cancel. Wallet-aware: results reflect which products you already hold.
Scope
Quota
miles:read
standard
Name
Type
Required
card_name
string
required
get_top_offers
Current top sign-up bonuses, optionally filtered by card type (personal/business) — first-year value ranked.
Scope
Quota
miles:read
standard
Name
Type
Required
card_type
string
member
string
get_wallet_complement
Recommends NEW cards to get -- fills gaps in the wallet, not a keep/cancel review of cards already held. Finds orphaned points needing a companion card, weak spending categories, missing transfer ecosystems, and network gaps, then ranks up to 5 candidate cards with gap-fill reasons, ongoing value, and sign-up bonus. Each recommendation carries inline eligibility annotations (5/24, 6/24, Amex velocity limits) and portfolio rules (e.g. one Sapphire product at a time); results are filtered to the wallet's card type (personal/business) automatically.
Scope
Quota
miles:read
standard
Name
Type
Required
focus
string
card_name
string
check_eligibility
boolean
member
string
preferred_programs
string[]
search_cards
Search the 180+ card dataset by issuer, fees, rewards program, airline/hotel affiliation, or bonus spending categories.
Scope
Quota
miles:read
standard
Name
Type
Required
spending_categories
string[]
issuer
string
card_type
string
max_annual_fee
integer
rewards_program
string
airline
string
hotel
string
has_signup_bonus
boolean
limit
integer
member
string
Transfer partners
compare_transfer_options
What a balance of points is worth across transfer paths, with the arithmetic shown -- the points-quantity question, distinct from get_transfer_partners (which lists WHICH paths exist, not what YOUR points are worth). Call program only (from), target only (to), or both (one specific path, e.g. 60k UR → Hyatt).
Scope
Quota
miles:read
standard
Name
Type
Required
points
integer
required
program
string
target
string
get_transfer_partners
Transfer partner lookup. mode='from_program' lists where a currency (e.g. 'Chase Ultimate Rewards') transfers; 'to_program' lists which currencies reach a destination (e.g. 'World of Hyatt'); 'auto' infers.
Scope
Quota
miles:read
standard
Name
Type
Required
query
string
required
mode
string
get_valuations
Point valuations (cents per point) — the user's custom values when set, defaults otherwise.
Scope
Quota
miles:read
standard
Name
Type
Required
programs
string[]
plan_transfer
"I need N points at program X -- which of my HELD currencies gets me there cheapest?" The advisor flagship: ranks the loyalty currencies you've told Miles you hold (get_balances) by cheapest path to target_program -- transfer graph x ratios x active bonuses x transfer minimums/increments x your own valuations -- including two-currency split suggestions and "you hold it but not enough" rows. Deterministic, receipt-style, built on the same functions compare_transfer_options uses, so the two tools cannot disagree about a shared leg.
Scope
Quota
miles:read
standard
Name
Type
Required
target_program
string
required
points_needed
integer
required
portfolio_review
"Here are my balances -- where should I focus?" Ranks every loyalty currency the member has told Miles they hold against a redemption goal, and says which one to focus on, which to stop growing, and why.
Scope
Quota
miles:read
standard
Name
Type
Required
goal
string
cardholder
string
reset_valuation
Reset a custom valuation back to the Ask Miles default. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
point_type
string
required
set_valuation
Set the user's custom point/mile valuations (cents per point). Pass valuations to set several at once. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
point_type
string
valuation
number
valuations
object
Wallet
add_card
Add one credit card, or a BATCH of them, to the user's wallet. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
card_name
string
nickname
string
date_opened
string
anniversary_date
string
sign_up_bonus
string
signup_bonus_status
string
signup_bonus_received_on
string
sub_deadline
string
sub_target
number
notes
string
status
string
closed_on
string
autopay_status
string
retention_offers
object[]
card_settings
object
benefit_selections
object
original_card_name
string
product_history
object[]
cardholder
string
holder_type
string
card_number_last4
string
intentional_duplicate
boolean
entry_key
string
cards
object[]
analyze_keep_cancel
Keep/downgrade/cancel analysis for a wallet card: marginal value vs annual fee, duplicate-benefit discounting, downgrade paths.
Scope
Quota
miles:read
standard
Name
Type
Required
card_name
string
required
analyze_spending
Earning-potential analysis for a spending profile: for each category, the wallet's best card and the annual rewards value it produces -- pre-computed dollar figures, not estimates to redo.
Scope
Quota
miles:read
standard
Name
Type
Required
spending
object
required
candidate_cards
string[]
international
boolean
get_eligibility
Application-rule status (Chase 5/24, issuer velocity limits) based on the user's wallet card-open dates.
Scope
Quota
miles:read
standard
Name
Type
Required
issuer
string
card
string
member
string
get_needs_attention
Everything that needs eyes on it right now -- in the wallet, and on the cards the user is only considering.
Scope
Quota
miles:read
standard
Name
Type
Required
credit_window_days
integer
fee_window_days
integer
sub_window_days
integer
get_spending_strategy
Category-by-category map of which wallet card to use for every spending type.
Scope
Quota
miles:read
standard
No parameters.
get_travel_day_summary
A wallet-derived travel-day checklist: lounge access, checked-bag waivers, priority boarding, and other day-of-travel benefits your cards carry -- filtered to what actually applies on this trip. get_wallet_benefits filtering cannot substitute: a benefit that applies only "on this airline" or "on international travel" needs both pieces of context at once, which this tool supplies and a flat benefit list does not. airline: optional carrier to filter to. international: whether this is an international itinerary.
Scope
Quota
miles:read
standard
Name
Type
Required
airline
string
international
boolean
get_wallet_benefits
Credits and perks across the user's wallet (lounge access, travel credits, statement credits, protections).
Scope
Quota
miles:read
standard
Name
Type
Required
benefit_type
string
cardholder
string
get_wallet_cards
The wallet's cards, one per row -- the lean per-card reader. get_wallet_summary / get_wallet_benefits are whole-wallet; use this for "what X cards do I have" or a per-card field scan.
Scope
Quota
miles:read
standard
Name
Type
Required
issuer
string
rewards_category
string
format
string
include_closed
boolean
cardholder
string
get_wallet_summary
The user's wallet: cards with fees, credits, and key benefits.
Scope
Quota
miles:read
standard
Name
Type
Required
cardholder
string
get_weekly_update
What changed in points and miles recently -- the digest as pull: a scheduled agent can poll this instead of waiting on the email digest. Local reads only (indexed article dates, a changelog artifact, in-memory dataset) -- no paid vendor, no query embedding, no Miles token spend.
Scope
Quota
miles:read
standard
Name
Type
Required
days
integer
categories
string[]
remove_card
Remove a card from the user's wallet. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
lookup_card_name
string
card_id
string
update_card
Update a card in the user's wallet (nickname, status, notes, dates, or a product change). Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
lookup_card_name
string
card_id
string
nickname
string
date_opened
string
anniversary_date
string
sign_up_bonus
string
signup_bonus_status
string
signup_bonus_received_on
string
sub_deadline
string
sub_target
number
notes
string
status
string
closed_on
string
autopay_status
string
disposition
string
review_by
string
fee_posts_on
string
retention_offers
object[]
card_settings
object
benefit_selections
object
original_card_name
string
product_history
object[]
cardholder
string
holder_type
string
card_number_last4
string
product_change
boolean
new_card_name
string
changed_date
string
direction
string
product_change_note
string
new_anniversary_date
string
expected_updated_at
string
Balances
get_balances
The loyalty-point balances the user has told Miles about -- Ultimate Rewards, Membership Rewards, airline and hotel currencies. Read-only: writing a balance (set_balances) is chat-only for now.
Scope
Quota
miles:read
standard
Name
Type
Required
programs
string[]
get_reconciliation_needs
QUESTIONS, not assertions, about the wallet that transaction data could answer -- the division of labor with a transactions agent (Copilot Money's MCP or similar): Miles knows what a transaction would MEAN; the agent knows where transactions ARE. Miles never sees spending, so it cannot confirm anything here itself.
Scope
Quota
miles:read
standard
No parameters.
Credits and certificates
get_certificates
Companion certificates and lounge-pass bundles across the wallet -- what's pending, available, used, or expired, plus an estimated total value. The quantity-aware sibling of get_free_nights (a lounge-pass bundle grants more than one use; a companion fare does not).
Scope
Quota
miles:read
standard
Name
Type
Required
status
string
program
string
get_credit_usage
Which of the wallet's recurring card credits are still unused this period -- the read half of the reconciliation loop get_reconciliation_needs opens.
Scope
Quota
miles:read
standard
Name
Type
Required
card_name
string
only_unused
boolean
get_free_nights
Free-night hotel certificates across the wallet (Marriott/Hilton/ Hyatt/IHG-style annual and spend-triggered certs): status (available/pending/used/expired/may_have_expired/unconfirmed), estimated expiry, and estimated value.
Scope
Quota
miles:read
standard
Name
Type
Required
status
string
program
string
set_certificate_status
Record a companion certificate or lounge-pass bundle's status. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
card_id
string
required
cert_id
string
required
status
string
required
count
integer
expected_used_count
integer
used_on
string
source
string
set_credit_usage
Record which recurring card credits were used, for a batch of periods -- the write half of the reconciliation loop get_reconciliation_needs opens. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
entries
object[]
required
set_free_night_status
Record a free-night certificate as used, or confirm a pending spend-threshold certificate was earned. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
card_name
string
status
string
cert_id
string
used_on
string
card_id
string
source
string
Gift cards
add_gift_card
Save a gift card to the member's wallet. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
merchant
string
required
amount
number
expiration
string
card_number_last4
string
notes
string
get_gift_cards
The wallet's stored gift cards: merchant, balance, and expiration only.
Scope
Quota
miles:read
standard
No parameters.
remove_gift_card
Delete a gift card from the wallet -- a spent card, or one saved by mistake. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
lookup_merchant
string
card_id
string
update_gift_card
Change a gift card already in the wallet -- most often its balance after the member spends some of it. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
lookup_merchant
string
card_id
string
merchant
string
amount
number
expiration
string
card_number_last4
string
notes
string
Elite status
get_elite_status
The airline/hotel elite status the user has told Miles about -- program, tier, when they said it, and whether Miles recognizes the pair. This is SELF-REPORTED status the member holds; it is not the status a credit card confers (get_wallet_benefits owns that).
Scope
Quota
miles:read
standard
No parameters.
get_status_benefits
What an airline/hotel elite TIER grants -- checked bags, lounge access, upgrades, breakfast, late checkout, points bonus, and an estimated annual value. Reference data about the program; it reads nothing about the member (get_elite_status is what they hold).
Scope
Quota
miles:read
standard
Name
Type
Required
program
string
required
tier
string
remove_elite_status
Forget a stored elite status -- the member lost it, never had it, or it was recorded against the wrong program. Requires wallet-change access. Removes every stored spelling of the program.
Scope
Quota
miles:write
standard
Name
Type
Required
program
string
required
set_elite_status
Record elite status the member says they hold. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
program
string
required
tier
string
required
Watchlist
add_to_watchlist
Add a card to the member's watchlist -- considering it, not yet applied for. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
card_name
string
required
cardholder
string
notes
string
get_watchlist
Cards the member is considering -- not yet in their wallet.
Scope
Quota
miles:read
standard
No parameters.
remove_from_watchlist
Remove a card from the member's watchlist. Requires wallet-change access. Use lookup_card_name to identify the entry by name; if multiple entries match, use entry_id on retry.
Scope
Quota
miles:write
standard
Name
Type
Required
lookup_card_name
string
entry_id
string
update_watchlist_entry
Edit a watched card's cardholder, its notes, the date the member means to decide by, or any combination. Requires wallet-change access.
Scope
Quota
miles:write
standard
Name
Type
Required
cardholder
string
notes
string
decide_by
string
lookup_card_name
string
entry_id
string
Knowledge
knowledge_search
Retrieval over indexed points-and-miles articles, guides and reviews -- reach for this when a question needs explanation or strategy that Miles' structured tools don't cover: how a transfer bonus mechanic actually works, what changed about a lounge network, how to think through a redemption trade-off. If the answer is a fact about the member's own wallet or the card dataset -- current benefits, transfer ratios, eligibility -- use the structured tool for it instead (get_card_info, get_transfer_partners, get_wallet_summary); those cost nothing beyond the shared per-day ceiling and are exact, and this tool is not a substitute for them.