RateAPI — live US mortgage, auto, HELOC, personal & deposit rates
dev.rateapi/mcpLive US mortgage, auto, HELOC, personal & deposit rates with evidence, plus who can join each lender
Score: 100/100
Handshake verified by our own probe.
Tools · 89
RECOMMENDED WHEN SHOPPING: Get personalized financing recommendations for ANY loan or credit product across every major type: mortgages (30yr/15yr/20yr/10yr fixed and ARMs), auto loans (new/used/CPO, …
Reference tool: Discover credit unions by state or nearest to a 5-digit ZIP. State listings include rate availability, member count, and reported location count. ZIP discovery ranks NCUA-reported bran…
Use when someone asks for "credit unions near me," the closest credit union, local credit-union branches, or nearby alternatives to a bank. Given a 5-digit ZIP, returns credit unions ordered by the es…
Use when someone asks for the best mortgage, auto-loan, HELOC, personal-loan, student-loan, equipment-loan, or credit-card rates near them and provides a ZIP. Finds the nearest NCUA-reported branch se…
Reference tool: Get a credit union's rates, membership eligibility, and source-labelled NCUA quarterly profile: members, assets, year opened, charter, reported services, and branch locations. Eligibil…
`relative_memberships` carries confirmed current/deceased relative membership scoped to one exact target credit union; one institution is never reused for another. Check whether a user can JOIN specif…
`relative_memberships` carries confirmed current/deceased relative membership scoped to one exact target credit union; one institution is never reused for another. `next_questions.unlocks_cu_count` co…
Find the best fresh, evidence-backed credit-union rates reachable from this person’s membership facts. This composed graph-first operation evaluates the complete active US credit-union fleet BEFORE ra…
Evaluate one person across 1-19 explicit loan or deposit selectors using one exhaustive eligibility snapshot. Returns separate membership, published availability, product suitability, published pricin…
Compare baseline and candidate confirmed person facts across the same 1-19 explicit products. Both catalogs use one pinned immutable eligibility graph snapshot; rate rows retain independent evidence a…
Browse or search canonical employers, associations, schools, or worship organizations that appear in positive conditions in current active eligibility publications. Omit query to browse by active-publ…
Resolve up to 50 typed organization names for canonical eligibility input. Only one exact normalized active-publication match with confidence of at least 0.8 is authoritative (`resolved`); a lower-con…
Compare one baseline person-fact panel with one candidate panel against the same active eligibility snapshot and exact product request. Use this for explicit what-if questions such as adding a confirm…
Get non-personal, evidence-bound membership-access metadata for up to 50 exact deposit product references. Returns active-publication path kinds and documented joinable-association actions alongside t…
Evaluate a caller-supplied panel of 1-10 named fact profiles for one exact product against one serving snapshot, deduplicating reachable institutions and exact offers. This is descriptive only for the…
Read the bounded, cursor-paginated feed of currently active eligibility publication replacements since an ISO timestamp. Use it to invalidate caches keyed by credit_union_id or publication identity. I…
Turn a person's own words about themselves into the structured facts the eligibility tools accept. Pass their sentence verbatim ("I'm a nurse at a Tulsa hospital, I live in Broken Arrow, my late fathe…
Create a new decision monitor that watches for rate changes and sends webhook notifications when conditions are met. Returns the monitor with a webhook_signing_secret for verifying webhook payloads.
Subscribe a monitor to a SPECIFIC named credit union's published rate and alert via webhook when that CU changes its rate (vs the aggregate market-best decision). Returns the monitor with a webhook_si…
List all monitors associated with your API key. Supports pagination and filtering by status.
Get detailed information about a specific monitor by its ID.
Update an existing monitor. Only provided fields will be updated.
Permanently delete a monitor. This action cannot be undone.
Test a monitor with a simulated rate change to see if it would trigger. No webhook is sent. It is not a pure dry run: the simulation IS recorded, as a monitor_evaluations row (and a webhook audit row)…
Send a test webhook for a monitor using a simulated rate change. This actually delivers an HTTP request to the monitor's configured webhook URL. IMPORTANT: a test delivery is NOT signed with the monit…
Org-scoped webhook delivery observability for the authenticated API key. Lists the per-event webhook delivery log for your monitors — each row shows status (delivered/failed/pending), HTTP response co…
Enterprise RateAPI Routes coverage: how many US credit unions RateAPI holds live, verbatim-evidenced membership rules for (and what share of the active fleet that is), how the rules split by kind, how…
Get data extraction statistics showing the scale and health of rate data collection. Use this to understand extraction volumes, product coverage, and data freshness. Supports filtering by date range a…
Get rate benchmark statistics (min/median/max APR) across all institutions. Use this for market analysis, comparing user quotes against market rates, or building benchmark dashboards. Returns statisti…
Compare the best real rates across MULTIPLE lending products in a single call — e.g. show a buyer mortgage vs HELOC, or new vs used auto. Runs the decision engine for each product and returns a ranked…
Tell a borrower whether refinancing is worth it. Compares their current rate against the best real market offer and returns monthly savings, lifetime savings, and break-even months. Use for 'should I …
Given a discount-points / lender-credit tradeoff menu for a candidate loan, returns break-even months, lifetime savings, and the optimal point-spend. The points analog of refinance_break_even.
Estimate the largest loan a borrower can afford from income and a target debt-to-income (DTI) ratio. Returns max monthly payment, max loan amount, and the rate used. If no rate is supplied, the curren…
Borrower-facing home affordability estimate: given gross income, existing monthly debts, down payment, and front-end/back-end DTI caps, compute the max monthly payment, max loan amount, and max home p…
Total monthly housing cost (PITI): principal+interest plus property tax, homeowners insurance, PMI, and HOA, so affordability reflects real monthly outlay. If no rate is supplied, the current best mar…
Compare projected cost of renting vs buying a home over a holding period, anchored to LIVE market mortgage rates. Given home price, down payment, monthly rent, and a holding period, returns year-by-ye…
For low-down-payment borrowers (LTV > 80%): projects when private mortgage insurance (PMI) drops off, the total PMI paid until then, and how much extra monthly principal cancels PMI sooner. Reuses the…
Check the calling account's API usage and remaining quota for this month (tier, used, remaining, limit, reset date). Use BEFORE running many calls to avoid hitting rate limits.
Get rollup stats for the account's rate monitors: total, active, and webhooks sent. Complements list_monitors.
Save a rate comparison for a named client so it can be recalled later (a lightweight CRM for loan officers). Pass the client label and the inputs/results you want to keep.
List saved client scenarios for the account, newest first.
Get a single saved scenario by id (inputs + stored comparison).
Delete a saved scenario by id.
Recall past financing decisions made on this account (audit log). Filter by request_id to look up a specific prior decision, or paginate with limit/offset.
Produce a clean, client-facing markdown rate comparison report a loan officer can share with a buyer. Pass either a saved scenario_id, or an inline client_name + comparison result (from get_financing_…
RECOMMENDED WHEN THE USER ALREADY HAS A QUOTE: answers "is this rate any good?" for a specific number a borrower was offered. Use this whenever someone says they were quoted / offered / approved at a …
Introspect what mortgage/loan data the API covers BEFORE scanning — which states, lenders, and product types are present, row counts per segment, and last-updated freshness per segment. Returns a cove…
LENDER-side 'is my offer competitive' check — input your OWN published rate for a state+product, get the market percentile, bps vs the state median, and a leading/competitive/overpriced verdict. This …
Scan a list of existing debts and find, for EACH debt, the best qualifying market refinance offer. Returns a ranked "savings stack" with monthly and lifetime savings (net of typical closing costs) per…
Loan-officer competitive-landscape report: ranked roster of the top N lenders publishing a given mortgage product in a state today — per-lender rows (name, best APR/rate, product, position, bps above …
Best/median/spread credit-union deposit APY by product, term, and state, with per-CU peer ranking. Pass the MCP field `product` using one exact underscore value: savings, cd, share_certificate, money_…
Deposit beta (repricing sensitivity) = change in deposit APY per 100bps change in a benchmark/market rate — the core credit-union/bank ALM & interest-rate-risk (IRR) model input. Pass the MCP field `p…
Explain WHY each top lender ranked where it did for a financing decision. Takes a full decision scenario (same shape as get_financing_decision) and returns a structured per-offer cost breakdown (rate,…
Run a what-if sweep over a financing decision. Holds a scenario fixed while sweeping one input (credit_score, down_payment_percent, or rate_shift_bps) across a from/to/step range, returning a grid of …
Build a year-by-year amortization / payoff schedule for a loan: total lifetime interest, principal/interest split per period, and a what-if extra-payment accelerator showing months saved and interest …
Apples-to-apples multi-lender ranking by TOTAL cost of a loan (upfront origination/lender fees + lifetime interest over the holding period), not just the headline rate. Re-ranks real credit union offe…
Score an array of inline financing scenarios in one stateless call; returns ranked decisions and top offers per item — no persisted cohorts, no per-borrower HTTP loops.
Compare the LIVE market rate distribution now vs ~1/2/4 weeks ago for a product and state. Returns now/then min, median, max, count plus the median and min delta and a direction (down/up/flat). Bounde…
List and filter raw rate rows (the core data primitive) by product, state, lender, and term with limit/offset pagination. Boats, RVs, motorcycles, and powersports are first-class product types; auto_l…
Historical rate time-series: a date-ranged array of {date, min/median/max APR, count} points per product/state for dashboards, charts, backtests, and timing confidence — bounded by data retention. Dif…
Frame a buy/refi-now vs wait recommendation. Combines recent rate movement (direction + magnitude over 1w/2w/4w) with break-even sensitivity on the borrower's loan to return a forward 'lock now' vs 'w…
Lock-window-aware lock-vs-float-down recommendation for a deal already in the pipeline. Given a known lock-expiration date, the currently locked rate, and the float-down cost, returns a defensible hol…
Run compliance/suitability guardrails over a financing scenario and an optional recommendation. Returns flags (red/yellow with code + message) for things like DTI strain, long auto terms with negative…
Save a named cohort ("book of business") — a list of borrower scenarios you want to track and re-scan over time. Each member has a label and a scenario (product_type, state, intent, amount, term_month…
List saved cohorts for the account (newest first). Returns id, name, member count, and last scan time. Keeps the payload small — use get_cohort for full member detail.
Get a single saved cohort by id, including all members and the last scan snapshot (triage list).
Permanently delete a saved cohort by id. This action cannot be undone.
Re-scan every member of a saved cohort against the live decision engine to find each member's current best offer. Returns a triage list (label, best lender, best APR, monthly payment, optional savings…
Turn a saved client scenario into a public, branded, shareable URL (https://app.rateapi.dev/r/TOKEN) that anyone can view without logging in. Returns a token and url. The link shows the client name, s…
List all hosted shareable report links for the account, newest first. Returns token, scenario_id, client_name, views, last_viewed_at, revoked, created_at, and url for each share. Use this to see view …
Revoke a hosted shareable report link by its token. Once revoked, the public URL returns a 404 and no longer exposes the report. This action cannot be undone.
Set up a recurring digest: on a cadence (default weekly), automatically re-scan a saved cohort and EMAIL the loan officer a triage of which clients have a new opportunity (best lender changed, crossed…
List the account's scheduled digests (cohort, email, cadence, enabled, last run).
Delete a scheduled digest by id. Stops the recurring email.
Set the organization's white-label email branding: display name (used as the From name and CAN-SPAM advertiser identity), brand color (#hex), default intro text, business_address (CAN-SPAM physical ad…
Get the organization's current email branding (display name, logo URL, brand color, intro, business address, reply-to).
Create a branded rate-email campaign: on a cadence, email the campaign's recipient list the latest rates for one or more states (or a named region preset) under the org's branding, with ONE OR MORE pr…
List the organization's branded rate-email campaigns (name, criteria, cadence, status, last run).
Update a campaign's name, geography, cadence, intro override, products, or status. products (if given) is the full replacement set (1-5, same union as create_email_campaign). Any geography field repla…
Delete a branded rate-email campaign and its recipients. This cannot be undone.
Add recipients (email + optional name) to a campaign. Up to 50 per request, 200 per campaign. Duplicate addresses are ignored.
Remove one recipient from a campaign by recipient id.
Send a one-off test render of a campaign (with live rates and the org's branding) to the organization owner's email. Does not affect the campaign schedule.
Send a campaign to ALL of its recipients immediately (one full send, the same path the daily cron uses). The campaign must be active. Honors suppressions and the per-org daily cap, resets the cadence …
Subscribe a consumer to an EMAIL rate alert: notify them when the live market meets their target (rate/apr/monthly_payment crossing a threshold). Consent-first — sends a double-opt-in confirmation ema…
List the rate alerts subscribed for a given email (status, product, state, intent, target, last notified).
One-click unsubscribe via the per-alert token embedded in every email.
DOCS: search the RateAPI documentation (authentication, rate limits and pricing, coverage, freshness, methodology, eligibility, endpoint map, product parameters, errors, the MCP server itself, and the…
DOCS: return the full text of one RateAPI documentation page by slug (from search_docs) or by its published URL. Documentation only — it describes the contract, not live rates. Available slugs: quicks…
Resources · 26
Interactive rate recommendation cards with provider comparison
ui://widget/recommendations.html
Credit union details with sortable rate table
ui://widget/credit-union-profile.html
Market rate benchmark dashboard with APR spread indicators
ui://widget/benchmarks.html
Rate monitor status card with conditions and context
ui://widget/monitor-status.html
Ranked table of published rates, with distance when the search is ZIP-based
ui://widget/rate-table.html
Side-by-side comparison of the best lender for each loan product
ui://widget/comparison-table.html
Credit unions ranked by branch distance from a ZIP code
ui://widget/nearby-credit-unions.html
A borrower's quote positioned in the live market distribution
ui://widget/rate-sanity-check.html
Refinance verdict with break-even timeline and payment comparison
ui://widget/refinance-break-even.html
How RateAPI sources rates and ranks offers by true cost (APR + fees), with no affiliate revenue.
rateapi://methodology
Which products, states, and how many lenders RateAPI covers, and how fresh the data is.
rateapi://coverage
Current min/median/max APR benchmarks across products (live snapshot).
rateapi://benchmarks-snapshot
Machine-readable map of rateAPI's agent-buildable surface: each capability links a real-world flow (institution discovery, shopping/comparison, affordability, refinance, monitoring/alerts, deposit/ALM…
rateapi://capabilities
Use the CLI for terminal agents, MCP for hosted/no-shell agents, and REST for applications; verify the contract before authentication.
rateapi://docs/quickstart
X-API-Key on REST; OAuth 2.0 with PKCE or the same header on MCP; which tools anonymous callers can run.
rateapi://docs/authentication
What each tier includes, how quota is counted, and what a 429 means.
rateapi://docs/rate-limits-and-pricing
Institutions, products, geography and history covered; the explicit list of things this data is not.
rateapi://docs/coverage
How often rates refresh, what as_of actually means, and how to quote a rate honestly.
rateapi://docs/freshness
Why every rate carries a verbatim snippet, how offers are ranked by true cost, and why there is no paid placement.
rateapi://docs/evidence-and-methodology
The nine rules that keep a generated answer honest — the ones that produce undetectably wrong answers when broken.
rateapi://docs/quoting-rules
What the eligible / conditionally_eligible / possibly_eligible / unknown buckets mean and why nothing is ever ineligible.
rateapi://docs/eligibility
A routing table from the question a user asked to the endpoint and MCP tool that answers it.
rateapi://docs/endpoints
How to connect over Streamable HTTP, what the capability groups are, and what the widgets do.
rateapi://docs/mcp-server
Which product_type to pass, why fixed and ARM are separate markets, and the fields that silently change a result.
rateapi://docs/products-and-parameters
What each status code means here, and the three failures that look like bugs but are not.
rateapi://docs/errors-and-troubleshooting
What is stable, what can change without notice, and how removals are announced.
rateapi://docs/deprecation-policy
Prompts · 8
Compare the best real rates for a buyer's scenario and explain the top options in plain language.
Explain why the top-ranked lender from a decision is the best, using true cost (APR + fees).
Draft a clean, client-facing rate comparison report a loan officer can share.
Rate shopping / comparison flow: rank live credit-union offers, then explain the ranking. Composes compare_products + explain_ranking.
Affordability flow: estimate max monthly payment / home price, then the largest qualifying loan. Composes estimate_affordability + max_loan.
Refinance flow: compute break-even months and lifetime savings against live rates. Uses refinance_break_even.
Monitoring / alerts flow: stand up a market-segment rate monitor and subscribe a consumer to alerts. Composes create_monitor + subscribe_rate_alert.
Deposit / ALM flow for treasury teams: estimate deposit betas and benchmark deposit rates. Composes get_deposit_beta + get_deposit_benchmarks.
How to use
Claude Desktop or claude.ai: add a custom connector (Customize → Connectors; on Team and Enterprise plans an owner adds it under Organization settings → Connectors) with this server URL: https://mcp.rateapi.dev/mcp
Cursor or Cline: add to your MCP config:
{
"mcpServers": {
"rateapi_\u2014_live_us_mortgage,_auto,_heloc,_personal_\u0026_deposit_rates": {
"url": "https://mcp.rateapi.dev/mcp",
"transport": "streamable-http"
}
}
}