← The evidence ledger
Evidence row 579441
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 65ca3533-0d6d-403d-bcef-80bf3fc40821
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- f27495684b0fd946f9f8e51742dbdccad7c2e0800d05481c96e1b14d84bb36f7
- Leaf
- 0x27936b7710ddce256633212ee446771aa16abe678027a2f89f670beaa39f71e6
What was observed
{
"count": 6,
"tools": [
{
"description": "Calculates Canadian GDS and TDS ratios from a monthly mortgage payment that is already known, plus income, housing costs, and other monthly debts. It takes the payment as given and needs no principal, rate, or amortization. Ratios are not an approval or suitability decision. Works only from explicit, non-identifying numbers in the request. Returns calculations only: no approval, underwriting, or suitability decisions, no lender or product recommendations, and no values looked up from chats, files, accounts, documents, or the web.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"effectiveDate": {
"description": "Date the supplied rates and policy assumptions were confirmed.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"grossAnnualIncome": {
"description": "Gross annual household income in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"housing": {
"additionalProperties": false,
"properties": {
"monthlyCondoFees": {
"description": "Monthly condominium fees in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"monthlyHeat": {
"description": "Monthly heating cost in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"monthlyPropertyTax": {
"description": "Monthly property-tax amount in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"jurisdiction": {
"const": "CA",
"default": "CA",
"description": "Canadian calculations only.",
"type": "string"
},
"monthlyPayment": {
"description": "Monthly mortgage principal-and-interest payment in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"otherMonthlyDebts": {
"description": "Total other monthly debt obligations in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"tolerances": {
"additionalProperties": false,
"properties": {
"gdsMax": {
"description": "Maximum GDS ratio as a decimal; for example, 39% is 0.39.",
"exclusiveMinimum": 0,
"maximum": 1,
"type": "number"
},
"label": {
"maxLength": 80,
"minLength": 1,
"type": "string"
},
"tdsMax": {
"description": "Maximum TDS ratio as a decimal; for example, 44% is 0.44.",
"exclusiveMinimum": 0,
"maximum": 1,
"type": "number"
}
},
"required": [
"gdsMax",
"tdsMax"
],
"type": "object"
}
},
"required": [
"effectiveDate",
"grossAnnualIncome",
"monthlyPayment"
],
"type": "object"
},
"name": "calculate_debt_service"
},
{
"description": "Calculates Canadian loan-to-value and combined loan-to-value from the loan amount, other secured positions, and a purchase price, an appraised value, or both. Ratios are not an approval or suitability decision. Works only from explicit, non-identifying numbers in the request. Returns calculations only: no approval, underwriting, or suitability decisions, no lender or product recommendations, and no values looked up from chats, files, accounts, documents, or the web.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"appraisedValue": {
"description": "Property appraised value in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"effectiveDate": {
"description": "Date the supplied rates and policy assumptions were confirmed.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"jurisdiction": {
"const": "CA",
"default": "CA",
"description": "Canadian calculations only.",
"type": "string"
},
"loanAmount": {
"description": "New mortgage or loan amount in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"otherSecuredPositions": {
"items": {
"additionalProperties": false,
"properties": {
"amount": {
"description": "Balance of this other secured position in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"label": {
"maxLength": 80,
"minLength": 1,
"type": "string"
}
},
"required": [
"amount"
],
"type": "object"
},
"maxItems": 20,
"type": "array"
},
"purchasePrice": {
"description": "Property purchase price in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"storedLtv": {
"description": "Optional previously stored LTV ratio as a decimal; for example, 75% is 0.75.",
"maximum": 5,
"minimum": 0,
"type": "number"
},
"valueBasis": {
"enum": [
"lesser_of",
"appraised",
"purchase"
],
"type": "string"
}
},
"required": [
"effectiveDate",
"loanAmount"
],
"type": "object"
},
"name": "calculate_ltv"
},
{
"description": "Calculates the B-20 qualifying rate, the qualifying payment, and the resulting GDS/TDS from a principal, contract rate, amortization, and income. It computes the payment itself, so it needs those loan terms. Results are neutral scenario math, not an approval or underwriting decision. Works only from explicit, non-identifying numbers in the request. Returns calculations only: no approval, underwriting, or suitability decisions, no lender or product recommendations, and no values looked up from chats, files, accounts, documents, or the web.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"amortizationMonths": {
"description": "Mortgage amortization period in months.",
"maximum": 600,
"minimum": 1,
"type": "integer"
},
"bufferRate": {
"description": "Optional stress-test buffer added to the contract rate. Omit it to use the disclosed default. Supply the annual rate as a decimal; for example, 5.25% is 0.0525.",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"contractRate": {
"description": "Contract rate for the mortgage. Supply the annual rate as a decimal; for example, 5.25% is 0.0525.",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"effectiveDate": {
"description": "Date the supplied rates and policy assumptions were confirmed.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"floorRate": {
"description": "Optional minimum qualification rate. Omit it to use the disclosed default. Supply the annual rate as a decimal; for example, 5.25% is 0.0525.",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"grossAnnualIncome": {
"description": "Gross annual household income in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"housing": {
"additionalProperties": false,
"properties": {
"monthlyCondoFees": {
"description": "Monthly condominium fees in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"monthlyHeat": {
"description": "Monthly heating cost in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"monthlyPropertyTax": {
"description": "Monthly property-tax amount in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
}
},
"type": "object"
},
"jurisdiction": {
"const": "CA",
"default": "CA",
"description": "Canadian calculations only.",
"type": "string"
},
"otherMonthlyDebts": {
"description": "Total monthly debt obligations outside the housing costs in Canadian dollars.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"principal": {
"description": "Mortgage principal in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"straightSwitchExempt": {
"type": "boolean"
},
"tolerances": {
"additionalProperties": false,
"properties": {
"gdsMax": {
"description": "Maximum GDS ratio as a decimal; for example, 39% is 0.39.",
"exclusiveMinimum": 0,
"maximum": 1,
"type": "number"
},
"label": {
"maxLength": 80,
"minLength": 1,
"type": "string"
},
"tdsMax": {
"description": "Maximum TDS ratio as a decimal; for example, 44% is 0.44.",
"exclusiveMinimum": 0,
"maximum": 1,
"type": "number"
}
},
"required": [
"gdsMax",
"tdsMax"
],
"type": "object"
}
},
"required": [
"effectiveDate",
"principal",
"contractRate",
"amortizationMonths",
"grossAnnualIncome"
],
"type": "object"
},
"name": "calculate_qualification"
},
{
"description": "Compares up to six Canadian fixed-rate payment and amortization scenarios using deterministic calculations. Works only from explicit, non-identifying numbers in the request. Returns calculations only: no approval, underwriting, or suitability decisions, no lender or product recommendations, and no values looked up from chats, files, accounts, documents, or the web.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"effectiveDate": {
"description": "Date the supplied rates and policy assumptions were confirmed.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"jurisdiction": {
"const": "CA",
"default": "CA",
"description": "Canadian calculations only.",
"type": "string"
},
"scenarios": {
"items": {
"additionalProperties": false,
"properties": {
"amortizationMonths": {
"description": "Mortgage amortization period in months.",
"maximum": 600,
"minimum": 1,
"type": "integer"
},
"annualRate": {
"description": "Contract rate for this mortgage scenario. Supply the annual rate as a decimal; for example, 5.25% is 0.0525.",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"comparisonPrincipalAndInterestPayment": {
"description": "Optional principal-and-interest payment in Canadian dollars for the same payment period, used only as a comparison value.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"name": {
"maxLength": 80,
"minLength": 1,
"type": "string"
},
"paymentFrequency": {
"enum": [
"monthly",
"semi_monthly",
"biweekly",
"weekly",
"accelerated_biweekly",
"accelerated_weekly"
],
"type": "string"
},
"principal": {
"description": "Mortgage principal in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"propertyTaxPerPayment": {
"description": "Optional property-tax amount in Canadian dollars for each payment period.",
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"termMonths": {
"description": "Mortgage term in months.",
"maximum": 600,
"minimum": 1,
"type": "integer"
}
},
"required": [
"name",
"principal",
"annualRate",
"amortizationMonths",
"paymentFrequency"
],
"type": "object"
},
"maxItems": 6,
"minItems": 1,
"type": "array"
}
},
"required": [
"effectiveDate",
"scenarios"
],
"type": "object"
},
"name": "compare_mortgage_scenarios"
},
{
"description": "Estimates three-months-interest and simplified interest-rate-differential prepayment penalties. Lender discharge statements remain authoritative. Works only from explicit, non-identifying numbers in the request. Returns calculations only: no approval, underwriting, or suitability decisions, no lender or product recommendations, and no values looked up from chats, files, accounts, documents, or the web.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"annualRate": {
"description": "Current annual mortgage rate. Supply the annual rate as a decimal; for example, 5.25% is 0.0525.",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"comparisonRate": {
"description": "Annual comparison or reference rate used for the simplified interest-rate-differential estimate. Supply the annual rate as a decimal; for example, 5.25% is 0.0525.",
"maximum": 1,
"minimum": 0,
"type": "number"
},
"effectiveDate": {
"description": "Date the supplied rates and policy assumptions were confirmed.",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"type": "string"
},
"jurisdiction": {
"const": "CA",
"default": "CA",
"description": "Canadian calculations only.",
"type": "string"
},
"method": {
"enum": [
"greater_of_3mo_interest_ird",
"three_months_interest",
"interest_rate_differential"
],
"type": "string"
},
"principal": {
"description": "Outstanding mortgage balance in Canadian dollars.",
"exclusiveMinimum": 0,
"maximum": 100000000,
"minimum": 0,
"type": "number"
},
"remainingTermMonths": {
"description": "Number of months remaining in the mortgage term.",
"maximum": 600,
"minimum": 1,
"type": "integer"
}
},
"required": [
"effectiveDate",
"principal",
"annualRate",
"remainingTermMonths"
],
"type": "object"
},
"name": "estimate_prepayment_penalty"
},
{
"description": "Returns a fixed explanation that a request is outside this calculator's scope, with a calculation it can do instead. Categories: approval or underwriting decisions, lender or product recommendations, borrower documents or accounts, current rates, rules, or thresholds, external actions such as submitting applications or contacting anyone, and other unsupported requests. Takes only the category; it accepts no request text, names, identifiers, or document content.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"requestType": {
"description": "Category of unsupported request. Only the category is accepted, never user, borrower, account, or document data.",
"enum": [
"approval_or_underwriting",
"lender_or_product_recommendation",
"borrower_document_or_account",
"current_rate_rule_or_threshold",
"external_action",
"other_unsupported"
],
"type": "string"
}
},
"required": [
"requestType"
],
"type": "object"
},
"name": "refuse_unsupported_mortgage_request"
}
]
}What the leaf hashes
{"body":"f27495684b0fd946f9f8e51742dbdccad7c2e0800d05481c96e1b14d84bb36f7","id":579441,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793143425577248,"prev":null,"subject":"65ca3533-0d6d-403d-bcef-80bf3fc40821","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (273461 rows).
- 0x27933dc26ee186b24dcf49f854a88a2f1d374025653d0edbe9b0cc87c89011a9
- 0x9b48a3375fd5f626ed10f3a42e660fe0ff96cde7a0b1e59fe65a1b7bd75149fa
- 0xb8c0ca1f1dcb1efba0323bf5b978de89278a908d1875bd1fe5dc21a78f40734f
- 0xcb571f1c7d4e02da2eddc5f7b585014f53deb3ab0e3c842577eff09da68ec307
- 0x790a04237587e67ebd866e7fa0218ad518c6388eec0ba75b6e0338c2767b5d28
- 0xd3fda822facdaa93076b0566314466ed3e54bf0ec1d723c095f55c7893416723
- 0xb0cf82397ea6c1fa4c434d3a0da859dd96bd89a74cf96c58e3623c498325d262
- 0x519357ee34a4a083e4ff55249b6ae19ba130a7a84133be26ab6ae9179104fa97
- 0x6882bb236335523c58b650079b32c2681c56784b345461ca918b22bdf61066a1
- 0xbb442d214adf08f578849181fdfb23278d82dbf1151f63bb64a2c559052d766f
- 0x2d75a3b8f36f049e598ecd7557138ba9fd051a8555ec519a603c54db3bb1093f
- 0xf5aa0adf486bca586314afc4935e732d521d3d8275e51eb4c8d2de46b00ea2c1
- 0x28be2f2303fcac4decdb6323b0f4ee8f8a31038beb758eaafc604a98626292e4
- 0x8ff18b1523f9fbdd16a5796cbe184b46854c06256508af8de5509b598370c725
- 0xa383a1cfe9b3f6af67eb4c7642564b9424d46d7fca90e7ba175d549f8b67dd0c
- 0x52efa60e0c3d8525486d2310eb3b6b566c9677c64fd1f819edb072cf101bcbdb
- 0x22c1fb9487ee0b9732fa017a0cc321eb27a60c08450d112f755089796e12cb1c
- 0xa20d48798a34aba12eb9c7297722982d910f06c148f5e27ac59307422964a585
- 0x9fc354c0ea3efc3f1b6548bb77ea902a50f2c9647647ea61592efce2bd795699
- Day root
- 0xdd77e5e99da32c3f154180d63e3c3e6fe11e896a2c6896412ef6b5c4bcf7e795
- Chained
- 0x23bb4dfd09f55c15ac3962f53578e02c6114d5bfd9bb451cf8794fb6e2817ef4
- Published
- On Arc Testnet, block 69414147: 0xb2ebd83aafeb765a0ce66e76aefb133ed06606c98038fd56191e2bcd1dcb77b4