{"name":"Pragmatic Mortgage public agent tools","version":"2.1.0","privacy":"Public and non-confidential only. No PII, documents, account data, or authenticated client-file data.","webMcpDraft":"https://webmachinelearning.github.io/webmcp/","mcpEndpoint":"https://pragmatic.mortgage/api/public/mcp","mcpServerCard":"https://pragmatic.mortgage/api/public/mcp/server-card","aiCatalog":"https://pragmatic.mortgage/.well-known/ai-catalog.json","executeEndpoint":"https://pragmatic.mortgage/api/public/agent-tools","connectionGuide":"https://pragmatic.mortgage/ai-agents","quickStart":{"tool":"pragmatic.compare_rates.v1","input":{"transaction":"PURCHASE","priceOrValue":750000,"downPaymentAmount":150000,"amortizationYears":25,"termYears":5,"occupancy":"OWNER","province":"BC","limit":5}},"tools":[{"name":"pragmatic.site_facts.v1","title":"Get Pragmatic Mortgage facts","description":"Get canonical business facts, service area, pricing policy, public privacy boundary, and machine-readable discovery URLs for Pragmatic Mortgage Lending.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.list_calculators.v1","title":"List mortgage calculators","description":"Find public Canadian mortgage calculators by goal, category, title, or keyword. Returns canonical calculator slugs and URLs without collecting personal information.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"query":{"type":"string","maxLength":120},"category":{"type":"string","enum":["purchase","refinance","renewal","qualification","payments","rates","govtax","investment","heloc_smith"]},"limit":{"type":"integer","minimum":1,"maximum":30,"default":12}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.get_calculator_schema.v1","title":"Get calculator inputs","description":"Get the exact JSON input schema for one public calculator before calling pragmatic.calculate.v1. Use this whenever required calculator inputs are not already known.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":80}},"required":["slug"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.calculate.v1","title":"Run a mortgage calculator","description":"Run any public Pragmatic Canadian mortgage calculator with deterministic mortgage-core math. First fetch the calculator schema. Never include names, contact details, addresses, account data, or other identity fields.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"slug":{"type":"string","minLength":1,"maxLength":80},"input":{"type":"object","additionalProperties":{}}},"required":["slug","input"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.lender_rates.v1","title":"Read verified rates by lender","description":"Find current conditional reference rates for a named lender such as Pine Financial, without inventing a borrower scenario. Includes source links, verification, expiry and explicit example assumptions. Not a personalized quote or a whole-market best rate. Follow with compare_rates once the borrower supplies their scenario.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"lender":{"type":"string","minLength":1,"maxLength":120}},"required":["lender"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.search_rates.v1","title":"Shop live mortgage rates","description":"Search Pragmatic Mortgage's live public lender-rate catalog for a non-identifying BC scenario. Results are examples, not approvals or commitments. Never include identity, contact, address, employer, or account data.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"transaction":{"type":"string","enum":["PURCHASE","RENEWAL","REFINANCE","HELOC"]},"priceOrValue":{"type":"number","exclusiveMinimum":0},"downPaymentAmount":{"type":"number","minimum":0},"equityAmount":{"type":"number","minimum":0},"amortizationYears":{"type":"number","enum":[25,30],"description":"Product eligibility bucket, not the remaining payment amortization."},"remainingAmortization":{"type":"object","properties":{"years":{"type":"integer","minimum":0,"maximum":30},"months":{"type":"integer","minimum":0,"maximum":11}},"required":["years","months"],"additionalProperties":false},"termYears":{"type":"number","enum":[1,2,3,4,5,6,7,10]},"rateType":{"type":"string","enum":["FIXED","VARIABLE","HELOC"]},"occupancy":{"type":"string","enum":["OWNER","OWNER_PLUS_RENTAL","RENTAL","SECOND_HOME"]},"province":{"type":"string","enum":["BC","AB","SK","MB","ON","QC","NB","NS","PE","NL","YT","NT","NU"]},"isFirstTimeBuyer":{"type":"boolean","default":false},"isNewConstruction":{"type":"boolean","default":false},"programMode":{"type":"string","enum":["standard","bfs_alt","promo","any"],"default":"any"},"creditScore":{"type":"integer","minimum":300,"maximum":900},"limit":{"type":"integer","minimum":1,"maximum":20,"default":8}},"required":["transaction","priceOrValue","amortizationYears","occupancy","province"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.compare_rates.v1","title":"Compare rates, payments and term costs","description":"One-call BC mortgage shopping: search the published catalog and compare the lowest matching rates with monthly payments, financed default insurance, term interest, remaining balances and a +1 percentage point payment sensitivity. Uses the website's mortgage-core calculators. Sorts by rate, not suitability; excludes unknown fees and penalties. Anonymous scenario numbers only.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"transaction":{"type":"string","enum":["PURCHASE","RENEWAL","REFINANCE","HELOC"]},"priceOrValue":{"type":"number","exclusiveMinimum":0},"downPaymentAmount":{"type":"number","minimum":0},"equityAmount":{"type":"number","minimum":0},"amortizationYears":{"type":"number","enum":[25,30],"description":"Product eligibility bucket, not the remaining payment amortization."},"remainingAmortization":{"type":"object","properties":{"years":{"type":"integer","minimum":0,"maximum":30},"months":{"type":"integer","minimum":0,"maximum":11}},"required":["years","months"],"additionalProperties":false},"termYears":{"type":"number","enum":[1,2,3,4,5,6,7,10]},"rateType":{"type":"string","enum":["FIXED","VARIABLE","HELOC"]},"occupancy":{"type":"string","enum":["OWNER","OWNER_PLUS_RENTAL","RENTAL","SECOND_HOME"]},"province":{"type":"string","enum":["BC","AB","SK","MB","ON","QC","NB","NS","PE","NL","YT","NT","NU"]},"isFirstTimeBuyer":{"type":"boolean","default":false},"isNewConstruction":{"type":"boolean","default":false},"programMode":{"type":"string","enum":["standard","bfs_alt","promo","any"],"default":"any"},"creditScore":{"type":"integer","minimum":300,"maximum":900},"limit":{"type":"integer","minimum":1,"maximum":20,"default":8}},"required":["transaction","priceOrValue","amortizationYears","occupancy","province"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.calculate_batch.v1","title":"Compare calculator scenarios in one request","description":"Run up to 8 independent mortgage calculations in one round trip. Fetch each calculator schema first. Use scenario IDs such as option_a (never names). Returns ordered results with individual errors so valid scenarios still complete. No identity or contact data.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"calculations":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","pattern":"^[a-z][a-z0-9_]{0,31}$"},"slug":{"type":"string","minLength":1,"maxLength":80},"input":{"type":"object","additionalProperties":{}}},"required":["id","slug","input"],"additionalProperties":false},"minItems":1,"maxItems":8}},"required":["calculations"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.search_site.v1","title":"Search mortgage guides and services","description":"Search Pragmatic Mortgage's public, editorially reviewed guides, FAQs, products, services, news, comparisons, and location pages. Returns short excerpts and canonical URLs.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"query":{"type":"string","minLength":2,"maxLength":160},"contentType":{"type":"string","enum":["all","guide","faq","product","service","news","comparison","location"],"default":"all"},"limit":{"type":"integer","minimum":1,"maximum":20,"default":8}},"required":["query"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.find_brokers.v1","title":"Find a licensed mortgage broker","description":"Find public Pragmatic Mortgage broker profiles in British Columbia by region, language, or expertise and return public booking links. Does not create a lead or share user data.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"province":{"type":"string","enum":["BC","AB","SK","MB","ON","QC","NB","NS","PE","NL","YT","NT","NU"]},"region":{"type":"string","maxLength":100},"language":{"type":"string","maxLength":60},"query":{"type":"string","maxLength":120},"limit":{"type":"integer","minimum":1,"maximum":20,"default":8}},"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}},{"name":"pragmatic.get_next_steps.v1","title":"Get safe mortgage next steps","description":"Return canonical public URLs for a purchase, renewal, refinance, HELOC, rate review, calculator session, broker consultation, or secure application. This tool never submits a form or collects confidential information.","annotations":{"readOnlyHint":true,"untrustedContentHint":false},"inputSchema":{"type":"object","properties":{"goal":{"type":"string","enum":["purchase","renewal","refinance","heloc","compare_rates","calculate","learn","talk_to_broker","apply"]},"province":{"type":"string","enum":["BC","AB","SK","MB","ON","QC","NB","NS","PE","NL","YT","NT","NU"]}},"required":["goal"],"additionalProperties":false,"$schema":"http://json-schema.org/draft-07/schema#"}}]}