# Rateapi MCP server

Source: https://glimind.com/server/mcp-registry%2Fdev.rateapi%2Fmcp
Registry id: `mcp-registry/dev.rateapi/mcp`
Status: live (checked 2026-10-27T03:11:00.067Z)

## Measurements (30 days)

- Uptime: 100%
- Checks: 5017
- Outages (90 days): 1

## Install

```json
{
  "mcpServers": {
    "rateapi-mcp-server": {
      "type": "http",
      "url": "https://mcp.rateapi.dev/mcp"
    }
  }
}
```

Claude Code:

```sh
claude mcp add --transport http rateapi-mcp-server https://mcp.rateapi.dev/mcp
```

## Tools (89)

- `add_campaign_recipients`: Add recipients (email + optional name) to a campaign. Up to 50 per request, 200 per campaign. Duplicate addresses are ignored.
- `analyze_rent_vs_buy`: 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, 
- `assess_buy_timing`: 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 l
- `assess_rate_lock`: 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 f
- `batch_decisions`: 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 HTT
- `build_amortization_schedule`: 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 accele
- `check_advice_guardrails`: Run compliance/suitability guardrails over a financing scenario and an optional recommendation. Returns flags (red/yellow with code + message) for things like D
- `check_competitive_position`: 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 leadi
- `check_membership_eligibility`: `relative_memberships` carries confirmed current/deceased relative membership scoped to one exact target credit union; one institution is never reused for anoth
- `compare_personal_access_catalogs`: Compare baseline and candidate confirmed person facts across the same 1-19 explicit products. Both catalogs use one pinned immutable eligibility graph snapshot;
- `compare_products`: 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 engi
- `compare_reachable_offers`: Compare one baseline person-fact panel with one candidate panel against the same active eligibility snapshot and exact product request. Use this for explicit wh
- `compare_total_cost`: 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 headli
- `create_competitor_monitor`: 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
- `create_email_campaign`: 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
- `create_monitor`: 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_
- `delete_cohort`: Permanently delete a saved cohort by id. This action cannot be undone.
- `delete_digest`: Delete a scheduled digest by id. Stops the recurring email.
- `delete_email_campaign`: Delete a branded rate-email campaign and its recipients. This cannot be undone.
- `delete_monitor`: Permanently delete a monitor. This action cannot be undone.
- `delete_scenario`: Delete a saved scenario by id.
- `deliver_test_webhook`: 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 te
- `estimate_affordability`: Borrower-facing home affordability estimate: given gross income, existing monthly debts, down payment, and front-end/back-end DTI caps, compute the max monthly 
- `estimate_monthly_cost`: Total monthly housing cost (PITI): principal+interest plus property tax, homeowners insurance, PMI, and HOA, so affordability reflects real monthly outlay. If n
- `evaluate_eligibility_cohort`: Evaluate a caller-supplied panel of 1-10 named fact profiles for one exact product against one serving snapshot, deduplicating reachable institutions and exact 
- `explain_ranking`: 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 st
- `extract_eligibility_facts`: 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 hospita
- `find_credit_unions_near_zip`: 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,
- `find_eligible_credit_unions`: `relative_memberships` carries confirmed current/deceased relative membership scoped to one exact target credit union; one institution is never reused for anoth
- `find_product_rates_near_zip`: 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. F
- `find_reachable_offers`: Find the best fresh, evidence-backed credit-union rates reachable from this person’s membership facts. This composed graph-first operation evaluates the complet
- `generate_client_report`: 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 
- `generate_share_link`: 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 an
- `get_benchmarks`: Get rate benchmark statistics (min/median/max APR) across all institutions. Use this for market analysis, comparing user quotes against market rates, or buildin
- `get_cohort`: Get a single saved cohort by id, including all members and the last scan snapshot (triage list).
- `get_coverage`: Introspect what mortgage/loan data the API covers BEFORE scanning — which states, lenders, and product types are present, row counts per segment, and last-updat
- `get_credit_union`: Reference tool: Get a credit union's rates, membership eligibility, and source-labelled NCUA quarterly profile: members, assets, year opened, charter, reported 
- `get_deposit_benchmarks`: 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
- `get_deposit_beta`: 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 
- `get_doc`: 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,
- `get_eligibility_changes`: Read the bounded, cursor-paginated feed of currently active eligibility publication replacements since an ISO timestamp. Use it to invalidate caches keyed by cr
- `get_eligibility_coverage`: Enterprise RateAPI Routes coverage: how many US credit unions RateAPI holds live, verbatim-evidenced membership rules for (and what share of the active fleet th
- `get_email_branding`: Get the organization's current email branding (display name, logo URL, brand color, intro, business address, reply-to).
- `get_extraction_stats`: Get data extraction statistics showing the scale and health of rate data collection. Use this to understand extraction volumes, product coverage, and data fresh
- `get_financing_decision`: RECOMMENDED WHEN SHOPPING: Get personalized financing recommendations for ANY loan or credit product across every major type: mortgages (30yr/15yr/20yr/10yr fix
- `get_league_table`: 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
- `get_monitor`: Get detailed information about a specific monitor by its ID.
- `get_monitor_stats`: Get rollup stats for the account's rate monitors: total, active, and webhooks sent. Complements list_monitors.
- `get_personal_access_catalog`: Evaluate one person across 1-19 explicit loan or deposit selectors using one exhaustive eligibility snapshot. Returns separate membership, published availabilit
- `get_product_access_envelopes`: Get non-personal, evidence-bound membership-access metadata for up to 50 exact deposit product references. Returns active-publication path kinds and documented 
- `get_rate_delta`: 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 delt
- `get_rate_history`: 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 con
- `get_scenario`: Get a single saved scenario by id (inputs + stored comparison).
- `get_usage`: 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 hitt
- `list_cohorts`: 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 
- `list_credit_unions`: 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
- `list_decision_logs`: 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.
- `list_digests`: List the account's scheduled digests (cohort, email, cadence, enabled, last run).
- `list_email_campaigns`: List the organization's branded rate-email campaigns (name, criteria, cadence, status, last run).
- `list_monitors`: List all monitors associated with your API key. Supports pagination and filtering by status.
- `list_rate_alerts`: List the rate alerts subscribed for a given email (status, product, state, intent, target, last notified).
- `list_rates`: List and filter raw rate rows (the core data primitive) by product, state, lender, and term with limit/offset pagination. Boats, RVs, motorcycles, and powerspor
- `list_scenarios`: List saved client scenarios for the account, newest first.
- `list_shares`: 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 u
- `list_webhook_deliveries`: Org-scoped webhook delivery observability for the authenticated API key. Lists the per-event webhook delivery log for your monitors — each row shows status (del
- `max_loan`: 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 
- `optimize_buydown`: 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
- `project_pmi_removal`: 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 
- `rate_sanity_check`: 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 the
- `refinance_break_even`: Tell a borrower whether refinancing is worth it. Compares their current rate against the best real market offer and returns monthly savings, lifetime savings, a
- `remove_campaign_recipient`: Remove one recipient from a campaign by recipient id.
- `resolve_eligibility_entities`: 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
- `revoke_share`: 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.
- `save_cohort`: 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
- `save_scenario`: 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 wa
- `scan_portfolio`: 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, bes
- `scan_savings`: 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 sa
- `schedule_digest`: 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 o
- `search_docs`: DOCS: search the RateAPI documentation (authentication, rate limits and pricing, coverage, freshness, methodology, eligibility, endpoint map, product parameters
- `search_eligibility_entities`: Browse or search canonical employers, associations, schools, or worship organizations that appear in positive conditions in current active eligibility publicati
- `send_campaign_now`: 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 th
- `send_test_campaign`: 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.
- `set_email_branding`: 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
- `simulate_decision`: 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 
- `simulate_monitor`: 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_e
- `subscribe_rate_alert`: 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 
- `unsubscribe_rate_alert`: One-click unsubscribe via the per-alert token embedded in every email.
- `update_email_campaign`: 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_em
- `update_monitor`: Update an existing monitor. Only provided fields will be updated.

Measured by Glimind (https://glimind.com): MCP handshake + tool list only, no tool is ever called. CC BY 4.0.
