Credit GPS — Canadian credit
Qué hace este MCP
Explains Canadian credit reporting and calculates utilization, payoff timelines, payment impacts, statement calendars, credit plans, closure effects, and credit-building options.
Herramientas
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards', 'cardName'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}, 'cardName': {'type': 'string', 'maxLength': 80, 'description': 'Which card to pay off. Partial names are matched.'}, 'monthlyPayment': {'type': 'number', 'maximum': 100000000, 'description': "Fixed amount paid each month in CAD. Omit to use the card's minimum payment, if one was supplied.", 'exclusiveMinimum': 0}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cardName', 'balance', 'aprBps', 'monthlyPayment', 'months', 'totalInterest', 'neverShrinks', 'aprUnknown', 'atMinimum', 'assumptions', 'disclosure'], 'properties': {'aprBps': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'months': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'balance': {'type': 'number'}, 'cardName': {'type': 'string'}, 'atMinimum': {'anyOf': [{'type': 'object', 'required': ['monthlyPayment', 'months', 'totalInterest', 'neverShrinks'], 'properties': {'months': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'neverShrinks': {'type': 'boolean'}, 'totalInterest': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'monthlyPayment': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}, 'aprUnknown': {'type': 'boolean'}, 'disclosure': {'type': 'string'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'neverShrinks': {'type': 'boolean'}, 'totalInterest': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'monthlyPayment': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards', 'amount'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'amount': {'type': 'number', 'maximum': 100000000, 'description': 'Purchase amount in CAD.', 'exclusiveMinimum': 0}, 'targetUtilization': {'type': 'number', 'maximum': 0.95, 'minimum': 0.01, 'description': 'Target utilization as a decimal. Defaults to 0.29 â\x80\x94 one point under the 30% band.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['amount', 'blendedBefore', 'bestForReporting', 'cheapestToCarry', 'optionsDisagree', 'noCardFits', 'disclosure'], 'properties': {'amount': {'type': 'number'}, 'disclosure': {'type': 'string'}, 'noCardFits': {'type': 'boolean'}, 'blendedBefore': {'type': 'number'}, 'cheapestToCarry': {'anyOf': [{'type': 'object', 'required': ['name', 'aprBps', 'monthsAtMinimum', 'totalInterestAtMinimum', 'neverShrinksAtMinimum'], 'properties': {'name': {'type': 'string'}, 'aprBps': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'monthsAtMinimum': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'neverShrinksAtMinimum': {'type': 'boolean'}, 'totalInterestAtMinimum': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}}, 'additionalProperties': False}, {'type': 'null'}]}, 'optionsDisagree': {'type': 'boolean'}, 'bestForReporting': {'anyOf': [{'type': 'object', 'required': ['name', 'utilizationAfter', 'bandAfter', 'blendedAfter', 'crossesBandUp', 'remainingHeadroom', 'aprBps'], 'properties': {'name': {'type': 'string'}, 'aprBps': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'bandAfter': {'enum': ['good', 'elevated', 'high'], 'type': 'string'}, 'blendedAfter': {'type': 'number'}, 'crossesBandUp': {'type': 'boolean'}, 'utilizationAfter': {'type': 'number'}, 'remainingHeadroom': {'type': 'number'}}, 'additionalProperties': False}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['what', 'privacy', 'limits', 'product', 'manualReportGuide', 'sources', 'disclosure'], 'properties': {'what': {'type': 'string'}, 'limits': {'type': 'array', 'items': {'type': 'string'}}, 'privacy': {'type': 'array', 'items': {'type': 'string'}}, 'product': {'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'disclosure': {'type': 'string'}, 'manualReportGuide': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's cards, if they have given them. Omit to get the mechanics and the Canadian rules without any numbers."}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}, 'cardName': {'type': 'string', 'maxLength': 80, 'description': 'The card being considered for closure. Partial names are matched. Only meaningful alongside cards.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['computed', 'cardName', 'limitRemoved', 'balanceOnCard', 'blendedBefore', 'blendedAfter', 'bandBefore', 'bandAfter', 'crossesBandUp', 'remainingLimit', 'isOnlyRevolvingAccount', 'alwaysTrue', 'assumptions', 'disclosure'], 'properties': {'cardName': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'computed': {'type': 'boolean'}, 'bandAfter': {'anyOf': [{'enum': ['good', 'elevated', 'high'], 'type': 'string'}, {'type': 'null'}]}, 'alwaysTrue': {'type': 'array', 'items': {'type': 'string'}}, 'bandBefore': {'anyOf': [{'enum': ['good', 'elevated', 'high'], 'type': 'string'}, {'type': 'null'}]}, 'disclosure': {'type': 'string'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'blendedAfter': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'limitRemoved': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'balanceOnCard': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'blendedBefore': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'crossesBandUp': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}, 'remainingLimit': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'isOnlyRevolvingAccount': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'topic': {'enum': ['statement_close_vs_due_date', 'scores_and_scale', 'checking_your_own_file', 'regulation', 'open_banking', 'utilization'], 'type': 'string', 'description': 'A single topic id. Omit to get all of them.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'topics', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'topics': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'correction', 'detail', 'sources'], 'properties': {'id': {'type': 'string'}, 'title': {'type': 'string'}, 'detail': {'type': 'array', 'items': {'type': 'string'}}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'correction': {'type': 'string'}}, 'additionalProperties': False}}, 'disclosure': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'daysPastDue': {'type': 'integer', 'maximum': 9007199254740991, 'minimum': 0, 'description': 'How many days past the due date the payment is, if known. Changes which part of the answer leads.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'daysPastDue', 'withinReportingWindow', 'threshold', 'ratingScale', 'afterwards', 'sources', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'threshold': {'type': 'array', 'items': {'type': 'string'}}, 'afterwards': {'type': 'array', 'items': {'type': 'string'}}, 'disclosure': {'type': 'string'}, 'daysPastDue': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'ratingScale': {'type': 'array', 'items': {'type': 'string'}}, 'withinReportingWindow': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'items', 'caveat', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'items': {'type': 'array', 'items': {'type': 'object', 'required': ['item', 'duration', 'differsFromUs', 'sources'], 'properties': {'item': {'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'duration': {'type': 'string'}, 'differsFromUs': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'caveat': {'type': 'string'}, 'disclosure': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'general', 'notPublished', 'sources', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'general': {'type': 'array', 'items': {'type': 'string'}}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'disclosure': {'type': 'string'}, 'notPublished': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'issuer': {'type': 'string', 'maxLength': 80, 'description': 'The issuer, if known, e.g. "TD". Only used to tailor the wording â\x80\x94 there is no per-issuer date table, because none is published.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'A known payment due date, yyyy-mm-dd. Supplying it produces a derived estimate of the closing date.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'derivedCloseDate', 'derivedFromDueDate', 'graceDays', 'methods', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'methods': {'type': 'array', 'items': {'type': 'object', 'required': ['id', 'title', 'reliability', 'steps', 'sources'], 'properties': {'id': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'string'}}, 'title': {'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'reliability': {'type': 'string'}}, 'additionalProperties': False}}, 'graceDays': {'type': 'number'}, 'disclosure': {'type': 'string'}, 'derivedCloseDate': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'derivedFromDueDate': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards', 'goal'], 'properties': {'goal': {'enum': ['raise_score', 'pay_down_balances', 'build_credit'], 'type': 'string', 'description': 'Which goal to plan for.'}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}, 'targetUtilization': {'type': 'number', 'maximum': 0.95, 'minimum': 0.01, 'description': 'Target utilization as a decimal. Defaults to 0.29 â\x80\x94 one point under the 30% band.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['goal', 'generatedForDate', 'steps', 'assumptions', 'disclosure'], 'properties': {'goal': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['title', 'action', 'why', 'dueByDate', 'amount', 'kind', 'status', 'accountName', 'forecast'], 'properties': {'why': {'type': 'string'}, 'kind': {'enum': ['payment', 'habit', 'monitor'], 'type': 'string'}, 'title': {'type': 'string'}, 'action': {'type': 'string'}, 'amount': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'status': {'enum': ['done', 'current', 'upcoming', 'ongoing'], 'type': 'string'}, 'forecast': {'type': 'null', 'description': 'No validated score prediction is available.'}, 'dueByDate': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'accountName': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}}, 'additionalProperties': False}}, 'disclosure': {'type': 'string'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'generatedForDate': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'homeCountry': {'type': 'string', 'maxLength': 80, 'description': 'Country the person is arriving from, in English. Determines whether the credit-import route is open.'}, 'monthsInCanada': {'type': 'integer', 'maximum': 120, 'minimum': 0, 'description': 'Roughly how long they have been in Canada, to focus the answer on the relevant phase.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'creditImport', 'steps', 'bankPrograms', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'steps': {'type': 'array', 'items': {'type': 'object', 'required': ['phase', 'window', 'action', 'mechanism', 'notes', 'focus'], 'properties': {'focus': {'type': 'boolean'}, 'notes': {'type': 'array', 'items': {'type': 'string'}}, 'phase': {'type': 'string'}, 'action': {'type': 'string'}, 'window': {'type': 'string'}, 'mechanism': {'type': 'string'}}, 'additionalProperties': False}}, 'disclosure': {'type': 'string'}, 'bankPrograms': {'type': 'array', 'items': {'type': 'object', 'required': ['bank', 'program', 'novaCredit', 'notes'], 'properties': {'bank': {'type': 'string'}, 'notes': {'type': 'string'}, 'program': {'type': 'string'}, 'novaCredit': {'type': 'boolean'}}, 'additionalProperties': False}}, 'creditImport': {'type': 'object', 'required': ['homeCountry', 'covered', 'explanation', 'banksWithIntegration', 'knownGaps'], 'properties': {'covered': {'anyOf': [{'type': 'boolean'}, {'type': 'null'}]}, 'knownGaps': {'type': 'array', 'items': {'type': 'string'}}, 'explanation': {'type': 'string'}, 'homeCountry': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'banksWithIntegration': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}, 'targetUtilization': {'type': 'number', 'maximum': 0.95, 'minimum': 0.01, 'description': 'Target utilization as a decimal. Defaults to 0.29 â\x80\x94 one point under the 30% band.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['move', 'currentUtilization', 'forecast', 'assumptions', 'disclosure'], 'properties': {'move': {'type': 'object', 'required': ['accountName', 'amount', 'dueByDate', 'reason', 'projectedUtilization', 'rationale'], 'properties': {'amount': {'type': 'number'}, 'reason': {'enum': ['cross_score_band', 'avoid_delinquency', 'clear_overdue', 'hold'], 'type': 'string'}, 'dueByDate': {'type': 'string'}, 'rationale': {'type': 'string'}, 'accountName': {'type': 'string'}, 'projectedUtilization': {'type': 'number'}}, 'additionalProperties': False}, 'forecast': {'type': 'null', 'description': 'No validated score prediction is available.'}, 'disclosure': {'type': 'string'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'currentUtilization': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}, 'targetUtilization': {'type': 'number', 'maximum': 0.95, 'minimum': 0.01, 'description': 'Target utilization as a decimal. Defaults to 0.29 â\x80\x94 one point under the 30% band.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards', 'totalReported', 'totalLimit', 'blendedUtilization', 'band', 'isEmpty', 'assumptions', 'disclosure'], 'properties': {'band': {'enum': ['good', 'elevated', 'high'], 'type': 'string'}, 'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'reportedBalance', 'creditLimit', 'utilization', 'band', 'statementCloseDate', 'daysUntilClose', 'payToTarget', 'minimumPayment', 'dueDate', 'daysUntilDue', 'isOverdue'], 'properties': {'band': {'enum': ['good', 'elevated', 'high'], 'type': 'string'}, 'name': {'type': 'string'}, 'dueDate': {'type': 'string'}, 'isOverdue': {'type': 'boolean'}, 'creditLimit': {'type': 'number'}, 'payToTarget': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'utilization': {'type': 'number'}, 'daysUntilDue': {'type': 'number'}, 'daysUntilClose': {'type': 'number'}, 'minimumPayment': {'type': 'number'}, 'reportedBalance': {'type': 'number'}, 'statementCloseDate': {'type': 'string'}}, 'additionalProperties': False}}, 'isEmpty': {'type': 'boolean'}, 'disclosure': {'type': 'string'}, 'totalLimit': {'type': 'number'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'totalReported': {'type': 'number'}, 'blendedUtilization': {'type': 'number'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'count': {'type': 'integer', 'maximum': 30, 'minimum': 1, 'description': 'How many events to return. Default 8.'}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['events', 'assumptions', 'disclosure'], 'properties': {'events': {'type': 'array', 'items': {'type': 'object', 'required': ['date', 'kind', 'accountName', 'label', 'amount', 'daysAway'], 'properties': {'date': {'type': 'string'}, 'kind': {'enum': ['pay_by', 'statement_close', 'payment_due'], 'type': 'string'}, 'label': {'type': 'string'}, 'amount': {'anyOf': [{'type': 'number'}, {'type': 'null'}]}, 'daysAway': {'type': 'number'}, 'accountName': {'type': 'string'}}, 'additionalProperties': False}}, 'disclosure': {'type': 'string'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'properties': {'tier': {'enum': ['established', 'legitimate_but_costly', 'treat_with_caution'], 'type': 'string', 'description': 'Filter to one credibility tier. Omit for all.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['asOf', 'products', 'caveat', 'sources', 'disclosure'], 'properties': {'asOf': {'type': 'string'}, 'caveat': {'type': 'string'}, 'sources': {'type': 'array', 'items': {'type': 'string'}}, 'products': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'kind', 'reportsTo', 'tier', 'notes', 'url'], 'properties': {'url': {'anyOf': [{'type': 'string'}, {'type': 'null'}]}, 'kind': {'type': 'string'}, 'name': {'type': 'string'}, 'tier': {'type': 'string'}, 'notes': {'type': 'string'}, 'reportsTo': {'type': 'string'}}, 'additionalProperties': False}}, 'disclosure': {'type': 'string'}}, 'additionalProperties': False}
Esquema de entrada
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cards', 'cardName', 'amount'], 'properties': {'cards': {'type': 'array', 'items': {'type': 'object', 'required': ['name', 'creditLimit', 'statementBalance'], 'properties': {'name': {'type': 'string', 'maxLength': 80, 'minLength': 1, 'description': 'What the person calls this card, e.g. "TD Cash Back Visa" or "the blue one".'}, 'last4': {'type': 'string', 'maxLength': 4, 'description': 'Last four digits, only to tell two similar cards apart. Optional and never required.'}, 'dueDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'Payment due date for the current statement. Defaults to 21 days after the closing date.'}, 'isOverdue': {'type': 'boolean', 'description': 'True if a payment is past due right now.'}, 'aprPercent': {'type': 'number', 'maximum': 100, 'minimum': 0, 'description': 'Purchase APR as a percentage, e.g. 19.99. Omit when unknown. Never pass 0 to mean unknown â\x80\x94 0 is a real interest-free rate and cost estimates would understate what a balance costs.'}, 'creditLimit': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': 'Credit limit in CAD. Use 0 for a charge card or any account with no set limit â\x80\x94 it is then excluded from utilization.'}, 'currentBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Today's balance, if it differs from the statement balance. Defaults to statementBalance."}, 'minimumPayment': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "The issuer's minimum payment. Omit if unknown â\x80\x94 do not pass 0 to mean unknown."}, 'statementBalance': {'type': 'number', 'maximum': 100000000, 'minimum': 0, 'description': "Balance at the most recent statement close. This is the figure the issuer reported, and the one utilization is read from. If only today's balance is known, pass it here and say so."}, 'statementCloseDate': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': 'The day the NEXT statement closes â\x80\x94 the date the engine targets. Found on a statement or in online banking. If omitted, a placeholder 30 days out is assumed and flagged.'}}}, 'maxItems': 25, 'minItems': 1, 'description': "The person's revolving credit accounts. Ask for limit, statement balance, and statement closing date per card â\x80\x94 those three drive everything."}, 'today': {'type': 'string', 'pattern': '^\\d{4}-\\d{2}-\\d{2}$', 'description': "Today's date in the person's local timezone, yyyy-mm-dd. Pass it â\x80\x94 the server otherwise falls back to UTC, which is a day ahead for Canadian evenings."}, 'amount': {'type': 'number', 'maximum': 100000000, 'description': "Payment amount in CAD, posting before that card's statement closes.", 'exclusiveMinimum': 0}, 'cardName': {'type': 'string', 'maxLength': 80, 'description': 'Which card the payment goes on. Partial names are matched.'}}}
Esquema de salida
{'type': 'object', '$schema': 'http://json-schema.org/draft-07/schema#', 'required': ['cardName', 'amount', 'cardUtilizationBefore', 'cardUtilizationAfter', 'cardBandBefore', 'cardBandAfter', 'blendedBefore', 'blendedAfter', 'payBeforeDate', 'forecast', 'assumptions', 'disclosure'], 'properties': {'amount': {'type': 'number'}, 'cardName': {'type': 'string'}, 'forecast': {'type': 'null', 'description': 'No validated score prediction is available.'}, 'disclosure': {'type': 'string'}, 'assumptions': {'type': 'array', 'items': {'type': 'string'}}, 'blendedAfter': {'type': 'number'}, 'blendedBefore': {'type': 'number'}, 'cardBandAfter': {'enum': ['good', 'elevated', 'high'], 'type': 'string'}, 'payBeforeDate': {'type': 'string'}, 'cardBandBefore': {'enum': ['good', 'elevated', 'high'], 'type': 'string'}, 'cardUtilizationAfter': {'type': 'number'}, 'cardUtilizationBefore': {'type': 'number'}}, 'additionalProperties': False}
Cambios recientes en herramientas
Servidores MCP similares
MaCalculatriceEnLigne
Provides calculators for French and Belgian taxes, salaries, pensions, VAT, loans, health metrics, education scores, fitness, and…
Lovie Company Formation
Supports company formation and business administration with bank accounts, cards, invoicing, bookkeeping, accounting periods, and…
AlpineDataWorks Intelligence Server
Provides economic, market, supply-chain, real-estate, energy, consumer, labor, and other scored intelligence indices with histori…
The Stall
Provides pay-per-call tools for YouTube keyword research and research on stocks, crypto, DeFi, options, and macroeconomic data.
Stratalize Finance
Provides financial, macroeconomic, banking, credit, commodities, M&A, ESG, labor, and regulatory benchmarks for analysis and plan…
Crank Protocol
Provides non-custodial Solana and EVM tools for swaps, derivatives, lending, staking, tokenized equities, bridging, and strategy …
Red by Big Red Cloud
Connects to Big Red Cloud accounting for customers, suppliers, products, invoices, purchases, payments, receipts, journals, quote…
x402-services
Provides on-chain, trading, and AI tools for Robinhood Chain.