# RateZip Bank Deposit and Mortgage Rates

> Live US savings, CD, mortgage & HELOC rates with source + timestamp on every figure.

- name: com.ratezip/rates
- version: 1.0.0
- connection class: R0 (autonomous)
- trust: 79/100 flags: no-repository
- quality: 85/100 (good)
- owner: not claimed
- descriptor: https://api.protogrid.dev/v1/servers/com.ratezip%2Frates
- tools: https://api.protogrid.dev/v1/servers/com.ratezip%2Frates/tools

**An agent can connect right now, no human step.** Remote endpoint, no authentication, reachable on the last probe.

## Connection (mcpServers)

```json
{
  "mcpServers": {
    "rates": {
      "type": "http",
      "url": "https://mcp.ratezip.com/mcp"
    }
  }
}
```


## Trust

- hygiene: 80
- liveness: 99
- freshness: 85
- provenance: 55
- drivers: +dns-namespace +website +reachable +uptime-98% ~updated-72d-ago -no-repository
- Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed.

## Quality 85/100 (good)

### protocol: 75 (weight 25)

- warn `protocol.modern`: newest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
- n/a `protocol.stateless`: only applies to 2026-07-28 servers
- pass `protocol.transport`: streamable HTTP
- n/a `protocol.list_ttl`: only applies to 2026-07-28 servers

### authorization: n/a (weight 15)

- n/a `auth.prm`, `auth.as_metadata`, `auth.cimd`: no remote uses OAuth
- n/a `auth.secret_in_url`: no templated URL

### tool hygiene: 86 (weight 30)

- pass `tools.descriptions`: every tool has a description
- pass `tools.description_length`: descriptions are concise
- pass `tools.schemas`: every tool has an object input schema
- pass `tools.annotations`: 5 of 5 tools declare readOnlyHint or destructiveHint
- fail `tools.directory_hints`: no tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: get_savings_rates (idempotentHint); get_cd_rates (idempotentHint); get_mortgage_rates (idempotentHint); …
- pass `tools.token_cost`: about 1,968 tokens to load every tool
- pass `tools.api_dump`: tools are not a one-to-one API dump

### stability: 100 (weight 15)

- pass `stability.changes`: 4 tool changes in 30 days
- pass `stability.rug_pull`: no tool changed its meaning under the same name

### dependencies: n/a (weight 15)

- n/a `deps.known_vulns`, `deps.mcp_sdk_version`, `deps.resolvable`: no npm or PyPI package

- tools: 5, about 1,968 tokens to load them all
- tool set hash: 39a53f699dcef460450c343576d71241
- tools last changed: 2026-10-08T07:03:07.589Z
- badge: [![protogrid quality](https://protogrid.dev/badge/com.ratezip/rates.svg)](https://protogrid.dev/servers/com.ratezip/rates)
- Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed.

### Tool changes

- 2026-10-08 `get_mortgage_rates` changed (description, inputSchema)
  - before: Current mortgage rates grouped by loan type: rates RateZip observed on lenders' own published rate pages, each with note rate, APR, representative-scenario conditions, observation timestamp, source, and staleness status. No third-party national-average benchmark is redistributed. Loan types include '30-year fixed' and 'HELOC'. Pass loan_type to filter to one; omit for all grouped by type. Compare only within the same loan type. Factual rate data only: never estimate or invite a personalized quote, imply approval, or recommend a lender.
  - after: Current mortgage rates grouped by loan type: rates RateZip observed on lenders' own published rate pages, each with note rate, APR, representative-scenario conditions, observation timestamp, source, and staleness status. No third-party national-average benchmark is redistributed. Loan types include '30-year fixed' and 'HELOC'. Pass loan_type to filter to one; omit for all grouped by type. Compare only within the same loan type. Factual rate data only: never estimate or invite a personalized quote, imply approval, or recommend a lender. Pass max_results to cap the number of rows and include_provenance=false for a shorter response.
- 2026-10-08 `get_cd_rates` changed (description, inputSchema)
  - before: Current CD APYs: FDIC national averages by term plus RateZip-observed institution rates (with terms, minimums/conditions, observation timestamps, sources, and staleness status). Pass term_months (e.g. 3, 6, 12, 24, 36, 60) to filter to one term; omit for all terms grouped by term. Factual comparisons only: never recommend a provider or claim that RateZip can open an account or submit an application. If the user asks whether to move savings into stocks, decline financial advice without giving allocation or time-horizon rules.
  - after: Current CD APYs: FDIC national averages by term plus RateZip-observed institution rates (with terms, minimums/conditions, observation timestamps, sources, and staleness status). Pass term_months (e.g. 3, 6, 12, 24, 36, 60) to filter to one term; omit for all terms grouped by term. Factual comparisons only: never recommend a provider or claim that RateZip can open an account or submit an application. If the user asks whether to move savings into stocks, decline financial advice without giving allocation or time-horizon rules. If no institution publishes the requested term, the result names the terms that are available. Pass max_results to cap the number of rows and include_provenance=false for a shorter response.
- 2026-10-08 `get_savings_rates` changed (description, inputSchema)
  - before: Current savings APYs: FDIC national average plus rates RateZip observed on institutions' own published rate pages. Every row carries an observation timestamp, source, and staleness status. Optional balance/state/credit_score personalize the results transparently (balance resolves the applicable tier APY; nothing is fabricated). Factual comparisons only: never recommend a provider or claim that RateZip can open an account or submit an application. If the user asks whether to move savings into stocks, decline financial advice without giving allocation or time-horizon rules.
  - after: Current savings APYs: FDIC national average plus rates RateZip observed on institutions' own published rate pages. Every row carries an observation timestamp, source, and staleness status. Optional balance/state/credit_score personalize the results transparently (balance resolves the applicable tier APY; nothing is fabricated). Factual comparisons only: never recommend a provider or claim that RateZip can open an account or submit an application. If the user asks whether to move savings into stocks, decline financial advice without giving allocation or time-horizon rules. Pass max_results to cap the number of rows and include_provenance=false for a shorter response.
- 2026-10-06 `compare_deposit_options` added
  - Compare observed US savings and CD APYs for a balance, holding period, state, monthly-fee and direct-deposit requirements. Returns sourced facts, unknown/conflicting terms and conditional gross-interest illustrations. Unknown terms never count as a match. No eligibility decision, personalized offer, application or account opening. Use for a multi-constraint deposit comparison; use get_savings_rates/get_cd_rates for simple rate lookups.

Full history: https://api.protogrid.dev/v1/servers/com.ratezip%2Frates/changes

## Remotes

- https://mcp.ratezip.com/mcp (streamable-http, auth none, reachable true, uptime30d 0.982906)

## Packages

_none_

## Tools (5)

- `calculate_deposit_earnings_difference`: Illustrative annualized earnings difference between two savings APYs for a given balance and horizon. Defaults: current = FDIC national average savings rate, comparison = highest RateZip-observed savings APY. States every omission (taxes, penalties, rate changes, tiers, availability). Not financial advice; never use the result to recommend an investment allocation.
- `compare_deposit_options`: Compare observed US savings and CD APYs for a balance, holding period, state, monthly-fee and direct-deposit requirements. Returns sourced facts, unknown/conflicting terms and conditional gross-interest illustrations. Unknown terms never count as a match. No eligibility decision, personalized offer, application or account opening. Use for a multi-constraint deposit comparison; use get_savings_rates/get_cd_rates for simple rate lookups.
- `get_cd_rates`: Current CD APYs: FDIC national averages by term plus RateZip-observed institution rates (with terms, minimums/conditions, observation timestamps, sources, and staleness status). Pass term_months (e.g. 3, 6, 12, 24, 36, 60) to filter to one term; omit for all terms grouped by term. Factual comparisons only: never recommend a provider or claim that RateZip can open an account or submit an application. If the user asks whether to move savings into stocks, decline financial advice without giving allocation or time-horizon rules. If no institution publishes the requested term, the result names the terms that are available. Pass max_results to cap the number of rows and include_provenance=false for a shorter response.
- `get_mortgage_rates`: Current mortgage rates grouped by loan type: rates RateZip observed on lenders' own published rate pages, each with note rate, APR, representative-scenario conditions, observation timestamp, source, and staleness status. No third-party national-average benchmark is redistributed. Loan types include '30-year fixed' and 'HELOC'. Pass loan_type to filter to one; omit for all grouped by type. Compare only within the same loan type. Factual rate data only: never estimate or invite a personalized quote, imply approval, or recommend a lender. Pass max_results to cap the number of rows and include_provenance=false for a shorter response.
- `get_savings_rates`: Current savings APYs: FDIC national average plus rates RateZip observed on institutions' own published rate pages. Every row carries an observation timestamp, source, and staleness status. Optional balance/state/credit_score personalize the results transparently (balance resolves the applicable tier APY; nothing is fabricated). Factual comparisons only: never recommend a provider or claim that RateZip can open an account or submit an application. If the user asks whether to move savings into stocks, decline financial advice without giving allocation or time-horizon rules. Pass max_results to cap the number of rows and include_provenance=false for a shorter response.
