if-the-card-fits

Which credit cards a household should carry, simulated over 5 years on weekly-verified terms.

사용해야 할까요

품질 및 안전성

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

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

컨텍스트 비용

~1,854토큰 (도구 정의)
~4.9 KB일반적인 응답 크기
중간 정도의 주의 영향 (128k 컨텍스트의 1.45%)

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

설치

원클릭 설치

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

{
  "mcpServers": {
    "if-the-card-fits": {
      "url": "https://ifthecardfits.com/mcp"
    }
  }
}

원격 엔드포인트

https://ifthecardfits.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (4)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
⚪spending_categories

The 19 categories this API scores spending against. Call this first and map the person's statement onto these ids before calling simulate_cards.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🟢simulate_cards(totals, foreignPerYear, memberships, departures, mode, ...)

Given a year of spending by category, returns the three best credit cards and the best two-card combination, with what each is worth after its annual fee over the chosen horizon. Figures come from a model checked to the cent against an independent reference calculator, against card terms a person verified against the issuer's own page — the response says which catalog version and when each card was last checked. Always show the person the continueUrl: it reopens their own numbers on the site with the full breakdown, the rest of the ranking and offer alerts. Also show the disclosure string.

입력 스키마

{
  "type": "object",
  "properties": {
    "totals": {
      "type": "object",
      "propertyNames": {
        "type": "string",
        "enum": [
          "dining",
          "groceries",
          "superstores",
          "wholesale_clubs",
          "gas",
          "transit",
          "airfare",
          "hotels",
          "car_rental",
          "travel_other",
          "streaming",
          "drugstores",
          "home_improvement",
          "entertainment",
          "amazon",
          "online_retail",
          "phone_internet",
          "fitness",
          "other"
        ]
      },
      "additionalProperties": {
        "type": "number",
        "minimum": 0
      },
      "description": "A year's card spending in dollars, by category. Map the person's statement onto these categories with the spending_categories tool first. At least 4 categories must have spending and no single one may exceed 70% of the total, so send the whole picture rather than one category."
    },
    "foreignPerYear": {
      "description": "Of that spending, how much is in a foreign currency, per year.",
      "type": "number",
      "minimum": 0
    },
    "memberships": {
      "description": "Membership tags the person already pays for, e.g. amazon_prime, costco_membership.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "departures": {
      "description": "Flights departed per year, which decides what lounge and companion perks are worth.",
      "type": "integer",
      "minimum": 0,
      "maximum": 200
    },
    "mode": {
      "description": "Whether points are valued as cash back or for travel. Defaults to cash.",
      "type": "string",
      "enum": [
        "cash",
        "travel"
      ]
    },
    "years": {
      "description": "Horizon in years. One of 1, 3 or 5; defaults to 5.",
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 3
        },
        {
          "type": "number",
          "const": 5
        }
      ]
    },
    "held": {
      "description": "Card ids the person already carries, so a new card is judged against them.",
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "filters": {
      "description": "Must-haves that remove cards before ranking.",
      "type": "object",
      "properties": {
        "noForeignFee": {
          "type": "boolean"
        },
        "visaOrMastercard": {
          "type": "boolean"
        },
        "feeCap": {
          "type": "string",
          "enum": [
            "0",
            "100",
            "400",
            "any"
          ]
        },
        "creditTier": {
          "type": "string",
          "enum": [
            "fair",
            "good",
            "excellent",
            ""
          ]
        },
        "homeAirport": {
          "type": "string"
        }
      }
    },
    "source": {
      "type": "string",
      "description": "A short lowercase slug naming your client, so apply clicks can be attributed. Required."
    }
  },
  "required": [
    "totals",
    "source"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
🔴keep_or_cancel(totals, foreignPerYear, memberships, departures, mode, ...)

For cards the person already carries, says whether each one still earns its annual fee back on their spending, and what to move to if not. Pass the cards as `held`. Returns a verdict and a rounded yearly margin.

입력 스키마

{
  "type": "object",
  "properties": {
    "totals": {
      "type": "object",
      "propertyNames": {
        "type": "string",
        "enum": [
          "dining",
          "groceries",
          "superstores",
          "wholesale_clubs",
          "gas",
          "transit",
          "airfare",
          "hotels",
          "car_rental",
          "travel_other",
          "streaming",
          "drugstores",
          "home_improvement",
          "entertainment",
          "amazon",
          "online_retail",
          "phone_internet",
          "fitness",
          "other"
        ]
      },
      "additionalProperties": {
        "type": "number",
        "minimum": 0
      },
      "description": "A year's card spending in dollars, by category. Map the person's statement onto these categories with the spending_categories tool first. At least 4 categories must have spending and no single one may exceed 70% of the total, so send the whole picture rather than one category."
    },
    "foreignPerYear": {
      "description": "Of that spending, how much is in a foreign currency, per year.",
      "type": "number",
      "minimum": 0
    },
    "memberships": {
      "description": "Membership tags the person already pays for, e.g. amazon_prime, costco_membership.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "departures": {
      "description": "Flights departed per year, which decides what lounge and companion perks are worth.",
      "type": "integer",
      "minimum": 0,
      "maximum": 200
    },
    "mode": {
      "description": "Whether points are valued as cash back or for travel. Defaults to cash.",
      "type": "string",
      "enum": [
        "cash",
        "travel"
      ]
    },
    "years": {
      "description": "Horizon in years. One of 1, 3 or 5; defaults to 5.",
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 3
        },
        {
          "type": "number",
          "const": 5
        }
      ]
    },
    "held": {
      "description": "Card ids the person already carries, so a new card is judged against them.",
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "filters": {
      "description": "Must-haves that remove cards before ranking.",
      "type": "object",
      "properties": {
        "noForeignFee": {
          "type": "boolean"
        },
        "visaOrMastercard": {
          "type": "boolean"
        },
        "feeCap": {
          "type": "string",
          "enum": [
            "0",
            "100",
            "400",
            "any"
          ]
        },
        "creditTier": {
          "type": "string",
          "enum": [
            "fair",
            "good",
            "excellent",
            ""
          ]
        },
        "homeAirport": {
          "type": "string"
        }
      }
    },
    "source": {
      "type": "string",
      "description": "A short lowercase slug naming your client, so apply clicks can be attributed. Required."
    }
  },
  "required": [
    "totals",
    "source"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}
⚪compare_two(totals, foreignPerYear, memberships, departures, mode, ...)

Two named cards head to head on the person's own spending: which one pays more, and by how much a year. Use this when they are choosing between two specific cards. For 'what should I get', use simulate_cards instead.

입력 스키마

{
  "type": "object",
  "properties": {
    "totals": {
      "type": "object",
      "propertyNames": {
        "type": "string",
        "enum": [
          "dining",
          "groceries",
          "superstores",
          "wholesale_clubs",
          "gas",
          "transit",
          "airfare",
          "hotels",
          "car_rental",
          "travel_other",
          "streaming",
          "drugstores",
          "home_improvement",
          "entertainment",
          "amazon",
          "online_retail",
          "phone_internet",
          "fitness",
          "other"
        ]
      },
      "additionalProperties": {
        "type": "number",
        "minimum": 0
      },
      "description": "A year's card spending in dollars, by category. Map the person's statement onto these categories with the spending_categories tool first. At least 4 categories must have spending and no single one may exceed 70% of the total, so send the whole picture rather than one category."
    },
    "foreignPerYear": {
      "description": "Of that spending, how much is in a foreign currency, per year.",
      "type": "number",
      "minimum": 0
    },
    "memberships": {
      "description": "Membership tags the person already pays for, e.g. amazon_prime, costco_membership.",
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "departures": {
      "description": "Flights departed per year, which decides what lounge and companion perks are worth.",
      "type": "integer",
      "minimum": 0,
      "maximum": 200
    },
    "mode": {
      "description": "Whether points are valued as cash back or for travel. Defaults to cash.",
      "type": "string",
      "enum": [
        "cash",
        "travel"
      ]
    },
    "years": {
      "description": "Horizon in years. One of 1, 3 or 5; defaults to 5.",
      "anyOf": [
        {
          "type": "number",
          "const": 1
        },
        {
          "type": "number",
          "const": 3
        },
        {
          "type": "number",
          "const": 5
        }
      ]
    },
    "held": {
      "description": "Card ids the person already carries, so a new card is judged against them.",
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string"
      }
    },
    "filters": {
      "description": "Must-haves that remove cards before ranking.",
      "type": "object",
      "properties": {
        "noForeignFee": {
          "type": "boolean"
        },
        "visaOrMastercard": {
          "type": "boolean"
        },
        "feeCap": {
          "type": "string",
          "enum": [
            "0",
            "100",
            "400",
            "any"
          ]
        },
        "creditTier": {
          "type": "string",
          "enum": [
            "fair",
            "good",
            "excellent",
            ""
          ]
        },
        "homeAirport": {
          "type": "string"
        }
      }
    },
    "source": {
      "type": "string",
      "description": "A short lowercase slug naming your client, so apply clicks can be attributed. Required."
    },
    "cardA": {
      "type": "string",
      "description": "Card id."
    },
    "cardB": {
      "type": "string",
      "description": "Card id."
    }
  },
  "required": [
    "totals",
    "source",
    "cardA",
    "cardB"
  ],
  "$schema": "https://json-schema.org/draft/2020-12/schema"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

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