Serveur MCP

SwitchWize MCP

io.github.switchwize/switchwize-mcp
Finance et investissement Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Provides verified US savings, deposit, mortgage, credit-card, rewards, transfer-bonus, and rate-comparison data with freshness metadata.

best_move_this_week
Best Move This Week
Given the credit cards a user holds, rank this week's dollar-valued actions: which held card to use per spend category, welcome offers at a 12-month high on cards not held, active transfer bonuses, and (optionally) the savings-rate move beside the card move.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['wallet'], 'properties': {'wallet': {'type': 'array', 'items': {'type': 'string'}, 'maxItems': 25, 'minItems': 1, 'description': 'Card ids the user holds, in the form issuer:slug, e.g. ["chase:sapphire-preferred", "amex:gold-card"].'}, 'categories': {'type': 'array', 'items': {'enum': ['dining', 'rideshare', 'travel', 'lounge', 'entertainment', 'insurance', 'groceries', 'gas', 'other'], 'type': 'string'}, 'description': 'Optional spend categories to rank held cards for; defaults to all nine.'}, 'usedBenefits': {'type': 'array', 'items': {'type': 'object', 'required': ['cardId', 'benefitKey', 'periodStart'], 'properties': {'cardId': {'type': 'string'}, 'benefitKey': {'type': 'string'}, 'periodStart': {'type': 'string', 'description': 'ISO first-of-month key for the period the credit was used in, e.g. 2026-09-01T00:00:00.000Z.'}}, 'additionalProperties': False}, 'maxItems': 200, 'description': 'Optional log of period credits already used this month; excluded from picks and counted toward renewal value. Omit to treat every credit as unused.'}, 'savingsBalance': {'type': 'number', 'maximum': 10000000, 'minimum': 0, 'description': 'Optional cash balance, to include the savings-rate move beside the card moves.'}, 'currentSavingsApy': {'type': 'number', 'maximum': 25, 'minimum': 0, 'description': 'Optional current savings APY, used with savingsBalance.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'cardMoves': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'savingsMove': {'type': ['object', 'null'], 'additionalProperties': True}, 'verified_at': {'type': ['string', 'null']}, 'unheldOffers': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'transferBonuses': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': True}
compare_switch_savings
Compare Savings Rates
Compare a user's current APY with SwitchWize's current top savings APY for a balance.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['currentApy'], 'properties': {'balance': {'type': 'number', 'maximum': 10000000, 'minimum': 0}, 'currentApy': {'type': 'number', 'maximum': 25, 'minimum': 0}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'balance': {'type': 'number'}, 'annualGap': {'type': 'number'}, 'currentApy': {'type': 'number'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'comparisonApy': {'type': 'number'}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'currentInterest': {'type': 'number'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'breakEvenFraming': {'type': 'string'}, 'comparisonInterest': {'type': 'number'}}, 'additionalProperties': True}
get_bank_gap
Bank Savings Gap
Estimate the annual savings gap for a balance using the current Bank Gap Index assumptions.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'bank': {'type': 'string', 'description': 'Optional bank name for user-facing context.'}, 'balance': {'type': 'number', 'maximum': 10000000, 'minimum': 0}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'bank': {'type': ['object', 'string', 'null']}, 'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'balance': {'type': 'number'}, 'bankApy': {'type': ['number', 'null']}, 'annualGap': {'type': 'number'}, 'bankCount': {'type': 'number'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'baselineApy': {'type': 'number'}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'comparisonApy': {'type': 'number'}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
get_bank_gap_index
Bank Gap Index
Return the current SwitchWize Bank Gap Index headline value, latest release, and methodology URL.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'label': {'type': 'string'}, 'month': {'type': ['string', 'null']}, 'index_id': {'type': 'string'}, 'gapPoints': {'type': ['number', 'null']}, 'topAvgApy': {'type': ['number', 'null']}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'banksTracked': {'type': ['number', 'null']}, 'headlineValue': {'type': ['number', 'null']}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'nationalAvgApy': {'type': ['number', 'null']}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'releaseArchiveUrl': {'type': 'string'}}, 'additionalProperties': True}
get_card_changes
Card Changes
Return recent verified credit-card fee and APR changes, most recent first. Each event is a diff between two confirmed snapshots of the same card.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1}, 'sinceDays': {'type': 'integer', 'maximum': 365, 'minimum': 1, 'description': 'Only changes observed within this many days.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'changes': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'sinceDays': {'type': ['number', 'null']}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
get_card_downgrade_path
Card Downgrade Path
Return verified credit-card product-change (downgrade) paths and the issuer's fee-refund window: which no-fee or lower-fee card a given card can be product-changed to, and how long after the annual fee posts a refund is available on cancellation. Optionally filtered to one card id (issuer:slug); returns every verified path and window when omitted.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'cardId': {'type': 'string', 'description': 'Optional card id (issuer:slug), e.g. chase:sapphire-reserve or capital-one:venture-x-rewards. Omit to return every verified downgrade path and fee-refund window.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'cardId': {'type': 'string'}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'schemaVersion': {'type': 'string'}, 'downgradePaths': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'methodologyUrl': {'type': 'string'}, 'feeRefundWindow': {'type': ['object', 'null'], 'additionalProperties': True}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'feeRefundWindows': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': True}
get_card_offers
Card Offers
Return current credit-card welcome-bonus offers (non-targeted, confidence-gated), each with a verified timestamp, source URL, and the card's own 12-month best.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'card': {'type': 'string', 'description': 'Optional card id (issuer:slug), slug, or name to filter to one card, e.g. chase:sapphire-preferred or Sapphire Preferred.'}, 'limit': {'type': 'integer', 'maximum': 200, 'minimum': 1}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'offers': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'totalTracked': {'type': 'number'}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
get_cd_rollover_rules
CD Rollover Rules
Return verified CD rollover rules for one bank, or every bank SwitchWize has verified: what happens automatically at maturity if the customer does nothing, the grace period, how to stop the rollover, and the early-withdrawal penalty. Each fact is sourced directly from the bank's own disclosure; an unverified field is omitted, never guessed.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'institutionId': {'type': 'string', 'description': 'Optional institution_registry id, e.g. chase, american-express, wells-fargo. Omit to return every bank SwitchWize has verified.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'sourceUrl': {'type': ['string', 'null']}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'institutions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'institutionId': {'type': 'string'}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'gracePeriodDays': {'type': ['number', 'null']}, 'autoRenewDefault': {'type': ['boolean', 'null']}, 'autoRenewDescription': {'type': 'string'}, 'earlyWithdrawalPenalty': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': True}
get_fed_hike_pass_through
Fed Hike Pass-Through
Return how much of the latest Federal Reserve rate hike each tracked savings account has passed through to savers so far: rate before the hike, rate now, change in basis points, pass-through share, and days until the bank moved. One source per bank; each row carries its source type and observation dates. Optionally filtered to one institution id.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'institutionId': {'type': 'string', 'description': 'Optional institution_registry id, e.g. tab, ally, marcus. Omit to return every savings account measured against the latest Fed hike.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'move': {'type': 'object', 'additionalProperties': True}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'summary': {'type': ['object', 'null'], 'additionalProperties': True}, 'excluded': {'type': 'object', 'additionalProperties': True}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'institution': {'type': 'object', 'additionalProperties': True}, 'verified_at': {'type': ['string', 'null']}, 'institutions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'daysSinceAnnouncement': {'type': ['number', 'null']}}, 'additionalProperties': True}
get_index_dataset
Index Dataset
Return a SwitchWize index dataset summary and recent series.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['indexId'], 'properties': {'limit': {'type': 'integer', 'maximum': 60, 'minimum': 1}, 'indexId': {'type': 'string', 'description': 'Index id, e.g. bank-gap-index, cd-spread, mma-spread, checking-gap.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'label': {'type': 'string'}, 'series': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'index_id': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
get_rate_freshness
Data Freshness
Return public data source freshness status and affected routes.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'category': {'type': 'string'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'sources': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'schemaVersion': {'type': 'string'}, 'affectedRoutes': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': True}
get_reality_score
Card Reality Score
Return a premium credit-card Reality Score for a card and consumer segment.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['card'], 'properties': {'card': {'type': 'string', 'description': 'Card slug or name, e.g. platinum-card or Chase Sapphire Reserve.'}, 'segment': {'type': 'string', 'description': 'Optional segment id, e.g. occasional-traveler, small-business-owner, balance-carrier.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'result': {'type': ['object', 'null'], 'additionalProperties': True}, 'segment': {'type': 'object', 'additionalProperties': True}, 'index_id': {'type': 'string'}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
get_reward_valuations
Reward Valuations
Return SwitchWize points/miles valuations (cents per point) per reward currency, with sample size and provisional/published status.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'currency': {'type': 'string', 'description': 'Optional reward currency id or name, e.g. chase-ultimate-rewards or Membership Rewards.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'datasetUrl': {'type': 'string'}, 'valuations': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
get_top_hysa_rates
High-Yield Savings Rates
Return top high-yield savings rates with freshness and attribution metadata.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'category', 'count', 'generatedAt', 'freshnessStatus', 'rates'], 'properties': {'id': {'type': 'string'}, 'asOf': {'type': ['string', 'null']}, 'count': {'type': 'number'}, 'rates': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'terms': {'type': 'string'}, 'source': {'type': 'string'}, 'category': {'type': 'string'}, 'rate_type': {'enum': ['APY', 'APR'], 'type': 'string'}, 'attribution': {'type': 'string'}, 'emptyReason': {'type': ['string', 'null']}, 'generatedAt': {'type': 'string'}, 'schemaVersion': {'type': 'string'}, 'sourceDetails': {'type': 'object', 'additionalProperties': True}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'attributionDetails': {'type': 'object', 'additionalProperties': True}, 'supportedCategories': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
get_top_rates
Top Rates
Return top SwitchWize rates for a supported category with freshness and attribution metadata.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'required': ['category'], 'properties': {'limit': {'type': 'integer', 'maximum': 25, 'minimum': 1}, 'category': {'type': 'string', 'description': 'Rate category, e.g. savings, cds, money-market, checking, mortgage.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'category', 'count', 'generatedAt', 'freshnessStatus', 'rates'], 'properties': {'id': {'type': 'string'}, 'asOf': {'type': ['string', 'null']}, 'count': {'type': 'number'}, 'rates': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'terms': {'type': 'string'}, 'source': {'type': 'string'}, 'category': {'type': 'string'}, 'rate_type': {'enum': ['APY', 'APR'], 'type': 'string'}, 'attribution': {'type': 'string'}, 'emptyReason': {'type': ['string', 'null']}, 'generatedAt': {'type': 'string'}, 'schemaVersion': {'type': 'string'}, 'sourceDetails': {'type': 'object', 'additionalProperties': True}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}, 'attributionDetails': {'type': 'object', 'additionalProperties': True}, 'supportedCategories': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': True}
get_transfer_bonuses
Transfer Bonuses
Return current point-transfer bonuses across tracked bank-to-partner routes, each with a verified timestamp, source URL, and best-ever-for-route when real history exists.
Lecture seule Accès externe Idempotent
Schéma d’entrée
{'type': 'object', 'properties': {'program': {'type': 'string', 'description': 'Optional program id or name to filter routes by source or destination, e.g. chase-ultimate-rewards or Flying Blue.'}}, 'additionalProperties': False}
Schéma de sortie
{'type': 'object', 'required': ['schemaVersion', 'tool', 'generatedAt'], 'properties': {'asOf': {'type': ['string', 'null'], 'description': 'ISO timestamp of the underlying data this response reflects.'}, 'tool': {'type': 'string'}, 'count': {'type': 'number'}, 'error': {'type': 'object', 'required': ['code', 'message'], 'properties': {'code': {'type': 'string'}, 'message': {'type': 'string'}, 'retryable': {'type': 'boolean'}, 'suggestions': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}}, 'additionalProperties': False}, 'routes': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, 'datasetUrl': {'type': 'string'}, 'attribution': {'type': 'object', 'additionalProperties': True}, 'generatedAt': {'type': 'string', 'description': 'ISO timestamp this response was computed at.'}, 'verified_at': {'type': ['string', 'null']}, 'schemaVersion': {'type': 'string'}, 'methodologyUrl': {'type': 'string'}, 'freshnessStatus': {'enum': ['fresh', 'aging', 'stale', 'unavailable'], 'type': 'string'}}, 'additionalProperties': True}
Ajouté
get_fed_hike_pass_through
27 September 2026 02:49
Modifié
get_card_downgrade_path
25 September 2026 02:58
Modifié
get_cd_rollover_rules
25 September 2026 02:58
Modifié
best_move_this_week
25 September 2026 02:58
Modifié
get_reward_valuations
25 September 2026 02:58
Modifié
get_card_changes
25 September 2026 02:58
Modifié
get_transfer_bonuses
25 September 2026 02:58
Modifié
get_card_offers
25 September 2026 02:58
Modifié
get_reality_score
25 September 2026 02:58
Modifié
get_bank_gap_index
25 September 2026 02:58
Modifié
get_index_dataset
25 September 2026 02:58
Modifié
get_rate_freshness
25 September 2026 02:58
Modifié
compare_switch_savings
25 September 2026 02:58
Modifié
get_bank_gap
25 September 2026 02:58
Modifié
get_top_hysa_rates
25 September 2026 02:58
Modifié
get_top_rates
25 September 2026 02:58
Modifié
get_card_downgrade_path
19 September 2026 02:47
Modifié
get_cd_rollover_rules
19 September 2026 02:47
Modifié
best_move_this_week
19 September 2026 02:47
Modifié
get_reward_valuations
19 September 2026 02:47
Modifié
get_card_changes
19 September 2026 02:47
Modifié
get_transfer_bonuses
19 September 2026 02:47
Modifié
get_card_offers
19 September 2026 02:47
Modifié
get_reality_score
19 September 2026 02:47
Modifié
get_bank_gap_index
19 September 2026 02:47
Modifié
get_index_dataset
19 September 2026 02:47
Modifié
get_rate_freshness
19 September 2026 02:47
Modifié
compare_switch_savings
19 September 2026 02:47
Modifié
get_bank_gap
19 September 2026 02:47
Modifié
get_top_hysa_rates
19 September 2026 02:47