BLIA — Bank Product Terms

Bank account terms as banks publish them, dated: fees, waivers, offers. Read-only. Canada today.

我該用這個嗎

品質與安全性

A
說明品質
100%
結構描述完整度
94%
命名品質
96%
汙染風險
100%
權限相符程度
100%
協定合規性
100%

根據工具定義與協定合規性的自動化分析。

上下文成本

~3,921Token(工具定義)
~7.4 KB典型回應大小
顯著的注意力影響(128k 上下文的 3.06%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "blia-catalogue": {
      "url": "https://mcp.bliahub.com/mcp"
    }
  }
}

遠端端點

https://mcp.bliahub.com/mcpstreamable-http

它能做什麼

工具清單

工具(5)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢list_bank_products(institution, product_class, province, page_size, cursor)

Use this first when the user asks about Canadian bank accounts (currently chequing at the banks listed in coverage), or which accounts a bank offers. Returns every product in BLIA's snapshot with its product_slug, its variants (customer groups such as seniors, each with its eligibility note), the attributes published, and completeness. coverage says what BLIA does and does not cover; an empty result always says why. Free tier: published values only -- no source citation, provenance tier or corroboration status. Not for fees or rules: take a product_slug from here to get_product_terms or compare_products.

輸入結構描述

{
  "type": "object",
  "properties": {
    "institution": {
      "type": "string",
      "description": "Institution id as listed in coverage.institutions_covered (bmo, cibc, rbc, scotia, td: the Big 5); a common or legal name such as BMO, RBC, Scotiabank or Royal Bank of Canada also resolves. Omit for all."
    },
    "product_class": {
      "type": "string",
      "description": "Product class. Only \"chequing\" is covered today."
    },
    "province": {
      "type": "string",
      "description": "Province: a two-letter code (ON, QC, ...) or a name such as Ontario or Québec; omit for all provinces."
    },
    "page_size": {
      "type": "integer",
      "minimum": 1,
      "maximum": 50,
      "description": "Up to 50 products per page."
    },
    "cursor": {
      "type": "string",
      "description": "product_slug returned as next_cursor by a prior call"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "as_of": {
      "type": "string",
      "description": "When the snapshot was built, ISO 8601 UTC."
    },
    "publication_seq": {
      "type": "integer",
      "description": "Publication number of the snapshot being served."
    },
    "staleness_days": {
      "type": "number",
      "description": "Whole days since as_of."
    },
    "coverage_scope": {
      "type": "string",
      "description": "The product class, institutions and lineup completeness the snapshot covers."
    },
    "coverage": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "What BLIA does and does not cover: product classes, institutions, kinds of information."
    },
    "disclaimer": {
      "type": "string",
      "description": "BLIA's disclaimer, verbatim. Include it when relaying values."
    },
    "freshness": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "current",
            "aging",
            "stale"
          ],
          "description": "How old the snapshot is: current up to 30 days, aging up to 90, then stale."
        },
        "staleness_days": {
          "type": "number",
          "description": "Whole days since as_of."
        },
        "as_of": {
          "type": "string",
          "description": "When the snapshot was built, ISO 8601 UTC."
        },
        "guidance": {
          "type": "string",
          "description": "What to say and what to confirm with the institution at this age."
        }
      },
      "required": [
        "status",
        "staleness_days",
        "as_of",
        "guidance"
      ],
      "additionalProperties": true
    },
    "freshness_warning": {
      "type": "string",
      "description": "Repeats freshness.guidance when the snapshot is not current."
    }
  },
  "required": [
    "as_of",
    "publication_seq",
    "staleness_days",
    "coverage_scope",
    "coverage",
    "disclaimer",
    "freshness"
  ],
  "additionalProperties": true,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_product_terms(product_slug, province, cohort, channel, attributes)

Use this when the user asks about one account's fees, included transactions, minimum balance, fee waiver conditions, e-transfer or ATM costs, or deposit insurance. Returns each published term with its value and effective date; a rule comes with its plain-language summary AND its logic (default outcome plus conditions with thresholds, e.g. the balance that waives the monthly fee). Says which customer-group variant was used, which others exist, which questions the terms answer (answerability) and exactly what is not published (before_acting). not_published and unresolved mean unknown, never zero. Free tier: no source quote, content hash, provenance tier or corroboration status. For several accounts side by side use compare_products; for perks or welcome offers across accounts use list_benefits or list_offers. BLIA holds one current snapshot, so it cannot say what a fee was or will be.

輸入結構描述

{
  "type": "object",
  "properties": {
    "product_slug": {
      "type": "string",
      "pattern": "^[a-z0-9]+(-[a-z0-9]+)*$",
      "description": "A product_slug from list_bank_products, e.g. td-every-day-chequing-account"
    },
    "province": {
      "type": "string",
      "description": "Two-letter province code. Default \"ALL\"."
    },
    "cohort": {
      "type": "string",
      "description": "Customer group the terms apply to. Default \"current\" (the standard offer). Other groups a product carries (e.g. \"senior_60_plus\") are listed per product as variants; pass one to get that group's terms."
    },
    "channel": {
      "type": "string",
      "enum": [
        "branch",
        "online",
        "any"
      ],
      "description": "How the account is opened. Default \"any\" (terms that apply whatever the channel)."
    },
    "attributes": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "description": "Limit to these attributes, e.g. monthly_fee, transaction_limit, minimum_balance, nsf_fee, etransfer_rules, atm_rules. Omit for all."
    }
  },
  "required": [
    "product_slug"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "as_of": {
      "type": "string",
      "description": "When the snapshot was built, ISO 8601 UTC."
    },
    "publication_seq": {
      "type": "integer",
      "description": "Publication number of the snapshot being served."
    },
    "staleness_days": {
      "type": "number",
      "description": "Whole days since as_of."
    },
    "coverage_scope": {
      "type": "string",
      "description": "The product class, institutions and lineup completeness the snapshot covers."
    },
    "coverage": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "What BLIA does and does not cover: product classes, institutions, kinds of information."
    },
    "disclaimer": {
      "type": "string",
      "description": "BLIA's disclaimer, verbatim. Include it when relaying values."
    },
    "freshness": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "current",
            "aging",
            "stale"
          ],
          "description": "How old the snapshot is: current up to 30 days, aging up to 90, then stale."
        },
        "staleness_days": {
          "type": "number",
          "description": "Whole days since as_of."
        },
        "as_of": {
          "type": "string",
          "description": "When the snapshot was built, ISO 8601 UTC."
        },
        "guidance": {
          "type": "string",
          "description": "What to say and what to confirm with the institution at this age."
        }
      },
      "required": [
        "status",
        "staleness_days",
        "as_of",
        "guidance"
      ],
      "additionalProperties": true
    },
    "freshness_warning": {
      "type": "string",
      "description": "Repeats freshness.guidance when the snapshot is not current."
    }
  },
  "required": [
    "as_of",
    "publication_seq",
    "staleness_days",
    "coverage_scope",
    "coverage",
    "disclaimer",
    "freshness"
  ],
  "additionalProperties": true,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢compare_products(product_slugs, province, cohort, channel, monthly_transactions)

Use this when the user wants to compare accounts, within one bank or across banks. One call returns, for each product: monthly fee, annual fee before waivers, included transactions (checked against monthly_transactions if given), minimum balance, NSF fee, the fee-waiver conditions (summary and logic), e-transfer and ATM terms, and what is missing -- plus a ranking by monthly fee with the annual difference to the lowest. It never applies a waiver to the customer's balances: it gives the conditions so they can be checked. Products whose fee BLIA has not published are listed as not_ranked, never ranked as free. The ranking uses published monthly fee and nothing else. For one account's complete terms and rule logic use get_product_terms.

輸入結構描述

{
  "type": "object",
  "properties": {
    "product_slugs": {
      "type": "array",
      "items": {
        "type": "string",
        "pattern": "^[a-z0-9]+(-[a-z0-9]+)*$"
      },
      "minItems": 2,
      "maxItems": 10,
      "description": "2 to 10 product_slugs from list_bank_products, from one or several banks."
    },
    "province": {
      "type": "string",
      "description": "Two-letter province code. Default \"ALL\"."
    },
    "cohort": {
      "type": "string",
      "description": "Customer group the terms apply to. Default \"current\" (the standard offer). Other groups a product carries (e.g. \"senior_60_plus\") are listed per product as variants; pass one to get that group's terms."
    },
    "channel": {
      "type": "string",
      "enum": [
        "branch",
        "online",
        "any"
      ],
      "description": "How the account is opened. Default \"any\" (terms that apply whatever the channel)."
    },
    "monthly_transactions": {
      "type": "integer",
      "minimum": 0,
      "maximum": 1000,
      "description": "Optional: the customer's typical debit transactions per month, checked against each product's included transactions."
    }
  },
  "required": [
    "product_slugs"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "as_of": {
      "type": "string",
      "description": "When the snapshot was built, ISO 8601 UTC."
    },
    "publication_seq": {
      "type": "integer",
      "description": "Publication number of the snapshot being served."
    },
    "staleness_days": {
      "type": "number",
      "description": "Whole days since as_of."
    },
    "coverage_scope": {
      "type": "string",
      "description": "The product class, institutions and lineup completeness the snapshot covers."
    },
    "coverage": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "What BLIA does and does not cover: product classes, institutions, kinds of information."
    },
    "disclaimer": {
      "type": "string",
      "description": "BLIA's disclaimer, verbatim. Include it when relaying values."
    },
    "freshness": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "current",
            "aging",
            "stale"
          ],
          "description": "How old the snapshot is: current up to 30 days, aging up to 90, then stale."
        },
        "staleness_days": {
          "type": "number",
          "description": "Whole days since as_of."
        },
        "as_of": {
          "type": "string",
          "description": "When the snapshot was built, ISO 8601 UTC."
        },
        "guidance": {
          "type": "string",
          "description": "What to say and what to confirm with the institution at this age."
        }
      },
      "required": [
        "status",
        "staleness_days",
        "as_of",
        "guidance"
      ],
      "additionalProperties": true
    },
    "freshness_warning": {
      "type": "string",
      "description": "Repeats freshness.guidance when the snapshot is not current."
    },
    "ranking_by_monthly_fee": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "product_slug": {
            "type": "string"
          }
        },
        "required": [
          "product_slug"
        ],
        "additionalProperties": true
      },
      "description": "Products with a published CAD monthly fee, cheapest first, ties by product_slug. Nothing else affects the order."
    },
    "not_ranked": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "product_slug": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "product_slug",
          "reason"
        ],
        "additionalProperties": true
      },
      "description": "Products left out of the ranking and why; never ranked as free."
    }
  },
  "required": [
    "as_of",
    "publication_seq",
    "staleness_days",
    "coverage_scope",
    "coverage",
    "disclaimer",
    "freshness",
    "ranking_by_monthly_fee",
    "not_ranked"
  ],
  "additionalProperties": true,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_offers(institution, product_class)

Use this when the user asks which accounts have a welcome or sign-up offer, what an offer gives, or what they must do to get it. Returns each recorded offer with what you get (cash and any non-cash part, e.g. a membership), the qualifying conditions (each as a plain sentence), conditions_status, and the end date or that none is stated. conditions_status not_recorded means the conditions are unknown, never that there are none. A product with no recorded offer may still have one: say BLIA records none. Welcome offers only, which end; ongoing plan perks are in list_benefits, and fees and waiver rules in get_product_terms.

輸入結構描述

{
  "type": "object",
  "properties": {
    "institution": {
      "type": "string",
      "description": "Institution id (bmo, cibc, rbc, scotia, td: the Big 5) or a common or legal name such as BMO, RBC or Scotiabank. Omit for all."
    },
    "product_class": {
      "type": "string",
      "description": "Product class. Only \"chequing\" is covered today."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "as_of": {
      "type": "string",
      "description": "When the snapshot was built, ISO 8601 UTC."
    },
    "publication_seq": {
      "type": "integer",
      "description": "Publication number of the snapshot being served."
    },
    "staleness_days": {
      "type": "number",
      "description": "Whole days since as_of."
    },
    "coverage_scope": {
      "type": "string",
      "description": "The product class, institutions and lineup completeness the snapshot covers."
    },
    "coverage": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "What BLIA does and does not cover: product classes, institutions, kinds of information."
    },
    "disclaimer": {
      "type": "string",
      "description": "BLIA's disclaimer, verbatim. Include it when relaying values."
    },
    "freshness": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "current",
            "aging",
            "stale"
          ],
          "description": "How old the snapshot is: current up to 30 days, aging up to 90, then stale."
        },
        "staleness_days": {
          "type": "number",
          "description": "Whole days since as_of."
        },
        "as_of": {
          "type": "string",
          "description": "When the snapshot was built, ISO 8601 UTC."
        },
        "guidance": {
          "type": "string",
          "description": "What to say and what to confirm with the institution at this age."
        }
      },
      "required": [
        "status",
        "staleness_days",
        "as_of",
        "guidance"
      ],
      "additionalProperties": true
    },
    "freshness_warning": {
      "type": "string",
      "description": "Repeats freshness.guidance when the snapshot is not current."
    }
  },
  "required": [
    "as_of",
    "publication_seq",
    "staleness_days",
    "coverage_scope",
    "coverage",
    "disclaimer",
    "freshness"
  ],
  "additionalProperties": true,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_benefits(benefit, institution, product_class, cohort, province)

Use this when the user asks which accounts include a perk or benefit -- a credit card annual fee rebate, a safe deposit box, free drafts or cheques, rewards points, a borrowing rate discount. With benefit set, returns includes / does_not_include / not_recorded across products; without it, every tracked benefit per product. not_recorded is unknown, never 'not included'. A benefit with basis 'bank_default' is the bank's standard terms for all accounts (no product-specific benefit recorded): say so rather than calling it a feature of the plan. Ongoing perks only; welcome offers are in list_offers, and fees and waiver rules in get_product_terms.

輸入結構描述

{
  "type": "object",
  "properties": {
    "benefit": {
      "type": "string",
      "description": "One benefit, e.g. safe_deposit_box, credit_card_annual_fee_rebate, bank_drafts. Omit for every benefit BLIA tracks."
    },
    "institution": {
      "type": "string",
      "description": "Institution id (bmo, cibc, rbc, scotia, td: the Big 5) or a common or legal name such as BMO, RBC or Scotiabank. Omit for all."
    },
    "product_class": {
      "type": "string",
      "description": "Product class. Only \"chequing\" is covered today."
    },
    "cohort": {
      "type": "string",
      "description": "Customer group the terms apply to. Default \"current\" (the standard offer). Other groups a product carries (e.g. \"senior_60_plus\") are listed per product as variants; pass one to get that group's terms."
    },
    "province": {
      "type": "string",
      "description": "Province: a two-letter code or a name such as Ontario. A benefit priced differently in that province is answered with its price there. Default \"ALL\"."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

輸出結構描述

{
  "type": "object",
  "properties": {
    "as_of": {
      "type": "string",
      "description": "When the snapshot was built, ISO 8601 UTC."
    },
    "publication_seq": {
      "type": "integer",
      "description": "Publication number of the snapshot being served."
    },
    "staleness_days": {
      "type": "number",
      "description": "Whole days since as_of."
    },
    "coverage_scope": {
      "type": "string",
      "description": "The product class, institutions and lineup completeness the snapshot covers."
    },
    "coverage": {
      "type": "object",
      "properties": {},
      "additionalProperties": true,
      "description": "What BLIA does and does not cover: product classes, institutions, kinds of information."
    },
    "disclaimer": {
      "type": "string",
      "description": "BLIA's disclaimer, verbatim. Include it when relaying values."
    },
    "freshness": {
      "type": "object",
      "properties": {
        "status": {
          "type": "string",
          "enum": [
            "current",
            "aging",
            "stale"
          ],
          "description": "How old the snapshot is: current up to 30 days, aging up to 90, then stale."
        },
        "staleness_days": {
          "type": "number",
          "description": "Whole days since as_of."
        },
        "as_of": {
          "type": "string",
          "description": "When the snapshot was built, ISO 8601 UTC."
        },
        "guidance": {
          "type": "string",
          "description": "What to say and what to confirm with the institution at this age."
        }
      },
      "required": [
        "status",
        "staleness_days",
        "as_of",
        "guidance"
      ],
      "additionalProperties": true
    },
    "freshness_warning": {
      "type": "string",
      "description": "Repeats freshness.guidance when the snapshot is not current."
    }
  },
  "required": [
    "as_of",
    "publication_seq",
    "staleness_days",
    "coverage_scope",
    "coverage",
    "disclaimer",
    "freshness"
  ],
  "additionalProperties": true,
  "$schema": "http://json-schema.org/draft-07/schema#"
}

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本5 個工具