> Fetch https://askmiles.ai/llms.txt first: it indexes every public Miles capability. This file is the markdown twin of https://askmiles.ai/docs/mcp/tools/cards.

# Cards

Search the card catalog and get a card, comparison, or offer recommendation grounded in a member's own wallet.

### 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` |  |
