SwitchWize MCP

Verified US rate, savings-gap, card, CD, and product-change tools with freshness and sources.

사용해야 할까요

품질 및 안전성

A
설명 품질
90%
스키마 완전성
83%
이름 품질
98%
오염 위험
100%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (4)

  • LOWTool 'get_top_rates' description lacks action verbget_top_rates에서
  • LOWTool 'get_top_hysa_rates' description lacks action verbget_top_hysa_rates에서
  • LOWTool 'compare_switch_savings' description lacks action verbcompare_switch_savings에서
  • LOWTool 'get_rate_freshness' description lacks action verbget_rate_freshness에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~6,013토큰 (도구 정의)
~3.9 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 4.70%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "switchwize-mcp": {
      "command": "npx",
      "args": [
        "switchwize-mcp"
      ]
    }
  }
}

실행 가능한 패키지

npmswitchwize-mcp0.2.2stdio

원격 엔드포인트

https://www.switchwize.com/api/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (16)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢get_top_rates(category, limit)

Return top SwitchWize rates for a supported category with freshness and attribution metadata.

입력 스키마

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "description": "Rate category, e.g. savings, cds, money-market, checking, mortgage."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "required": [
    "category"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "id": {
      "type": "string"
    },
    "category": {
      "type": "string"
    },
    "rate_type": {
      "type": "string",
      "enum": [
        "APY",
        "APR"
      ]
    },
    "count": {
      "type": "number"
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ]
    },
    "generatedAt": {
      "type": "string"
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "attribution": {
      "type": "string"
    },
    "attributionDetails": {
      "type": "object",
      "additionalProperties": true
    },
    "source": {
      "type": "string"
    },
    "sourceDetails": {
      "type": "object",
      "additionalProperties": true
    },
    "methodologyUrl": {
      "type": "string"
    },
    "terms": {
      "type": "string"
    },
    "supportedCategories": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "emptyReason": {
      "type": [
        "string",
        "null"
      ]
    },
    "rates": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "schemaVersion",
    "category",
    "count",
    "generatedAt",
    "freshnessStatus",
    "rates"
  ],
  "additionalProperties": true
}
🟢get_top_hysa_rates(limit)

Return top high-yield savings rates with freshness and attribution metadata.

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 25
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "id": {
      "type": "string"
    },
    "category": {
      "type": "string"
    },
    "rate_type": {
      "type": "string",
      "enum": [
        "APY",
        "APR"
      ]
    },
    "count": {
      "type": "number"
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ]
    },
    "generatedAt": {
      "type": "string"
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "attribution": {
      "type": "string"
    },
    "attributionDetails": {
      "type": "object",
      "additionalProperties": true
    },
    "source": {
      "type": "string"
    },
    "sourceDetails": {
      "type": "object",
      "additionalProperties": true
    },
    "methodologyUrl": {
      "type": "string"
    },
    "terms": {
      "type": "string"
    },
    "supportedCategories": {
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "emptyReason": {
      "type": [
        "string",
        "null"
      ]
    },
    "rates": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    }
  },
  "required": [
    "schemaVersion",
    "category",
    "count",
    "generatedAt",
    "freshnessStatus",
    "rates"
  ],
  "additionalProperties": true
}
🟢get_bank_gap(bank, balance)

Estimate the annual savings gap for a balance using the current Bank Gap Index assumptions.

입력 스키마

{
  "type": "object",
  "properties": {
    "bank": {
      "type": "string",
      "description": "Optional bank name for user-facing context."
    },
    "balance": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "bank": {
      "type": [
        "object",
        "string",
        "null"
      ]
    },
    "balance": {
      "type": "number"
    },
    "annualGap": {
      "type": "number"
    },
    "bankApy": {
      "type": [
        "number",
        "null"
      ]
    },
    "baselineApy": {
      "type": "number"
    },
    "comparisonApy": {
      "type": "number"
    },
    "bankCount": {
      "type": "number"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢compare_switch_savings(currentApy, balance)

Compare a user's current APY with SwitchWize's current top savings APY for a balance.

입력 스키마

{
  "type": "object",
  "properties": {
    "currentApy": {
      "type": "number",
      "minimum": 0,
      "maximum": 25
    },
    "balance": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000000
    }
  },
  "required": [
    "currentApy"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "balance": {
      "type": "number"
    },
    "currentApy": {
      "type": "number"
    },
    "comparisonApy": {
      "type": "number"
    },
    "currentInterest": {
      "type": "number"
    },
    "comparisonInterest": {
      "type": "number"
    },
    "annualGap": {
      "type": "number"
    },
    "breakEvenFraming": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_rate_freshness(category)

Return public data source freshness status and affected routes.

입력 스키마

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string"
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "sources": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "affectedRoutes": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_index_dataset(indexId, limit)

Return a SwitchWize index dataset summary and recent series.

입력 스키마

{
  "type": "object",
  "properties": {
    "indexId": {
      "type": "string",
      "description": "Index id, e.g. bank-gap-index, cd-spread, mma-spread, checking-gap."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 60
    }
  },
  "required": [
    "indexId"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "index_id": {
      "type": "string"
    },
    "label": {
      "type": "string"
    },
    "series": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_bank_gap_index

Return the current SwitchWize Bank Gap Index headline value, latest release, and methodology URL.

입력 스키마

{
  "type": "object",
  "properties": {},
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "index_id": {
      "type": "string"
    },
    "label": {
      "type": "string"
    },
    "headlineValue": {
      "type": [
        "number",
        "null"
      ]
    },
    "month": {
      "type": [
        "string",
        "null"
      ]
    },
    "nationalAvgApy": {
      "type": [
        "number",
        "null"
      ]
    },
    "topAvgApy": {
      "type": [
        "number",
        "null"
      ]
    },
    "gapPoints": {
      "type": [
        "number",
        "null"
      ]
    },
    "banksTracked": {
      "type": [
        "number",
        "null"
      ]
    },
    "datasetUrl": {
      "type": "string"
    },
    "releaseArchiveUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_reality_score(card, segment)

Return a premium credit-card Reality Score for a card and consumer segment.

입력 스키마

{
  "type": "object",
  "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."
    }
  },
  "required": [
    "card"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "index_id": {
      "type": "string"
    },
    "segment": {
      "type": "object",
      "additionalProperties": true
    },
    "result": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": true
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_card_offers(card, limit)

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.

입력 스키마

{
  "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",
      "minimum": 1,
      "maximum": 200
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "count": {
      "type": "number"
    },
    "totalTracked": {
      "type": "number"
    },
    "offers": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_transfer_bonuses(program)

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.

입력 스키마

{
  "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
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "count": {
      "type": "number"
    },
    "routes": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_card_changes(sinceDays, limit)

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.

입력 스키마

{
  "type": "object",
  "properties": {
    "sinceDays": {
      "type": "integer",
      "minimum": 1,
      "maximum": 365,
      "description": "Only changes observed within this many days."
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 200
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "sinceDays": {
      "type": [
        "number",
        "null"
      ]
    },
    "count": {
      "type": "number"
    },
    "changes": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_reward_valuations(currency)

Return SwitchWize points/miles valuations (cents per point) per reward currency, with sample size and provisional/published status.

입력 스키마

{
  "type": "object",
  "properties": {
    "currency": {
      "type": "string",
      "description": "Optional reward currency id or name, e.g. chase-ultimate-rewards or Membership Rewards."
    }
  },
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "count": {
      "type": "number"
    },
    "valuations": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢best_move_this_week(wallet, categories, usedBenefits, savingsBalance, currentSavingsApy)

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.

입력 스키마

{
  "type": "object",
  "properties": {
    "wallet": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "maxItems": 25,
      "description": "Card ids the user holds, in the form issuer:slug, e.g. [\"chase:sapphire-preferred\", \"amex:gold-card\"]."
    },
    "categories": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "dining",
          "rideshare",
          "travel",
          "lounge",
          "entertainment",
          "insurance",
          "groceries",
          "gas",
          "other"
        ]
      },
      "description": "Optional spend categories to rank held cards for; defaults to all nine."
    },
    "usedBenefits": {
      "type": "array",
      "maxItems": 200,
      "items": {
        "type": "object",
        "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."
          }
        },
        "required": [
          "cardId",
          "benefitKey",
          "periodStart"
        ],
        "additionalProperties": false
      },
      "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",
      "minimum": 0,
      "maximum": 10000000,
      "description": "Optional cash balance, to include the savings-rate move beside the card moves."
    },
    "currentSavingsApy": {
      "type": "number",
      "minimum": 0,
      "maximum": 25,
      "description": "Optional current savings APY, used with savingsBalance."
    }
  },
  "required": [
    "wallet"
  ],
  "additionalProperties": false
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "cardMoves": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "unheldOffers": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "transferBonuses": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "savingsMove": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": true
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_cd_rollover_rules(institutionId)

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.

입력 스키마

{
  "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
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "institutionId": {
      "type": "string"
    },
    "autoRenewDefault": {
      "type": [
        "boolean",
        "null"
      ]
    },
    "autoRenewDescription": {
      "type": "string"
    },
    "gracePeriodDays": {
      "type": [
        "number",
        "null"
      ]
    },
    "earlyWithdrawalPenalty": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "sourceUrl": {
      "type": [
        "string",
        "null"
      ]
    },
    "count": {
      "type": "number"
    },
    "institutions": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_card_downgrade_path(cardId)

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.

입력 스키마

{
  "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
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "cardId": {
      "type": "string"
    },
    "downgradePaths": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "feeRefundWindow": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": true
    },
    "feeRefundWindows": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "count": {
      "type": "number"
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}
🟢get_fed_hike_pass_through(institutionId)

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.

입력 스키마

{
  "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
}

출력 스키마

{
  "type": "object",
  "properties": {
    "schemaVersion": {
      "type": "string"
    },
    "tool": {
      "type": "string"
    },
    "generatedAt": {
      "type": "string",
      "description": "ISO timestamp this response was computed at."
    },
    "attribution": {
      "type": "object",
      "additionalProperties": true
    },
    "asOf": {
      "type": [
        "string",
        "null"
      ],
      "description": "ISO timestamp of the underlying data this response reflects."
    },
    "verified_at": {
      "type": [
        "string",
        "null"
      ]
    },
    "freshnessStatus": {
      "type": "string",
      "enum": [
        "fresh",
        "aging",
        "stale",
        "unavailable"
      ]
    },
    "methodologyUrl": {
      "type": "string"
    },
    "move": {
      "type": "object",
      "additionalProperties": true
    },
    "daysSinceAnnouncement": {
      "type": [
        "number",
        "null"
      ]
    },
    "summary": {
      "type": [
        "object",
        "null"
      ],
      "additionalProperties": true
    },
    "excluded": {
      "type": "object",
      "additionalProperties": true
    },
    "institution": {
      "type": "object",
      "additionalProperties": true
    },
    "count": {
      "type": "number"
    },
    "institutions": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "datasetUrl": {
      "type": "string"
    },
    "error": {
      "type": "object",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "retryable": {
          "type": "boolean"
        },
        "suggestions": {
          "type": "array",
          "items": {
            "type": "object",
            "additionalProperties": true
          }
        }
      },
      "required": [
        "code",
        "message"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "schemaVersion",
    "tool",
    "generatedAt"
  ],
  "additionalProperties": true
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 16개
검증됨버전이 기록되지 않음도구 15개