# Rates by 402rates (remote · api.402rates.com)

Source-backed treasury data, settlement costs. Free instrument records and history.

- Trust score: 73/100 (medium)
- Change this week: +4
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-09-27

## Components

- remote · `api.402rates.com`: 73/100 (this document), [markdown](https://verifymcp.io/servers/com-402rates-rates/mcp-rates.md), [page](https://verifymcp.io/servers/com-402rates-rates/mcp-rates)

## Channel facts

- Endpoint: `https://api.402rates.com/mcp/rates`
- Transports: `streamable-http`
- Auth: `none`
- Version: `0.2.0`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-09-27.

- **Endpoint Security**: 57/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - Authorisation not fully verified: no authorisation is required to call this server, and 11 tool(s) never declared a destructiveHint. The MCP spec treats an absent hint as destructive by default, so we cannot call this surface safe.
  - HTTPS is enforced; there's no plaintext access path.
  - HSTS check failed: the Strict-Transport-Security header is absent.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 78/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 1241 tokens (~112/item across 11 items; 11 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 57/100
  - Stability observed for 17 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 11 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 11 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Rates by 402rates MCP server?

Rates by 402rates is a hosted endpoint at https://api.402rates.com/mcp/rates, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http com-402rates-rates 'https://api.402rates.com/mcp/rates'
```

### Cursor

```json
{
  "mcpServers": {
    "com-402rates-rates": {
      "url": "https://api.402rates.com/mcp/rates"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "com-402rates-rates": {
      "type": "http",
      "url": "https://api.402rates.com/mcp/rates"
    }
  }
}
```

### Codex

```toml
[mcp_servers.com-402rates-rates]
url = "https://api.402rates.com/mcp/rates"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "com-402rates-rates": {
      "type": "remote",
      "url": "https://api.402rates.com/mcp/rates",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add com-402rates-rates --url 'https://api.402rates.com/mcp/rates' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  com-402rates-rates:
    url: "https://api.402rates.com/mcp/rates"
```

### Netclaw

```json
{
  "McpServers": {
    "com-402rates-rates": {
      "Transport": "http",
      "Url": "https://api.402rates.com/mcp/rates"
    }
  }
}
```

### Vellum

```bash
assistant mcp add com-402rates-rates -t streamable-http -u 'https://api.402rates.com/mcp/rates'
```

### Other

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

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-09-27 (score 73, +1)

No change was recorded against any check on this day. Stability & Change Management went from 53 to 57. That category is still filling its 30-day observation window: 16 days of observed history at the previous scan, 17 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-25 (score 72, +1)

- [functional] We updated how we score, so this day's move reflects our rubric, not a change to the server

### 2026-09-23 (score 71, +1)

No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-21 (score 70, +1)

No change was recorded against any check on this day. Stability & Change Management went from 33 to 37. That category is still filling its 30-day observation window: 10 days of observed history at the previous scan, 11 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-18 (score 69, +1)

No change was recorded against any check on this day. Stability & Change Management went from 23 to 27. That category is still filling its 30-day observation window: 7 days of observed history at the previous scan, 8 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-16 (score 68, +1)

No change was recorded against any check on this day. Stability & Change Management went from 17 to 20. That category is still filling its 30-day observation window: 5 days of observed history at the previous scan, 6 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-14 (score 67, +1)

No change was recorded against any check on this day. Stability & Change Management went from 10 to 13. That category is still filling its 30-day observation window: 3 days of observed history at the previous scan, 4 at this one. The score rises as the window fills, whether or not the server changes.

### 2026-09-13 (score 66, 0)

- [functional regression] Schema quality: 1002 → 1241
- [functional] Server version: 0.1.0 → 0.2.0
- [functional] New tool “compare_rwa_benchmark”
- [functional] New tool “list_rwa_updates”

## MCP tools (11)

### `list_rwa_updates` (~93 tokens)

Read observed Treasury changes since a saved cursor

Free cursor-based change notices for Treasury yields, terms, source evidence and availability. Capture every fifteen minutes; 90-day retention. Notices contain field names and state digests. Full before/after records use the existing instrument access limits. No reconstruction before the first baseline.

Input parameters:

- `cursor` (string): next_cursor from an earlier response; an expired cursor requires a fresh baseline.
- `limit` (number): limit

### `compare_rwa_benchmark` (~146 tokens)

Compare a supplied USD Treasury return with a matching benchmark

Free arithmetic comparison of a saved measured USD instrument response and caller-supplied US Treasury total-return index levels with identical dates. Simple actual/365; 28-32 days. Input provenance is not verified. Spot rates, unmatched windows, quoted yields and other currencies are not comparable. The spread does not establish fees or causality.

Input parameters:

- `benchmark` (object): kind us_treasury_total_return_index, currency USD, start_date/end_date, positive start_value/end_value, HTTPS source_url and retrieved_at date. Caller declarations only.
- `snapshot` (object): Saved single-instrument response, schema_version 0.5.0, with a measured USD return.

### `compare_rwa_snapshots` (~137 tokens)

Compare yield and divergence fields in two saved Treasury responses

Free comparison of two supplied 402rates Treasury snapshots: yield, issuer divergence, source identifiers, calculation windows and data availability. Reports numeric threshold crossings without assigning economic significance. No new data access, authentication of snapshots, historical reconstruction or automatic monitoring. Examples are synthetic.

Input parameters:

- `after` (object): Later saved response. Input origin is not independently authenticated.
- `before` (object): Earlier saved yields, single instrument or complete instrument response; schema_version 0.5.0.
- `threshold_bps` (number): Absolute change in issuer_vs_basis_bps to flag, default 5; zero flags only nonzero changes.

### `list_capabilities` (~31 tokens)

List capabilities for Rates by 402rates

Free capability and MCP tool catalogue for Rates by 402rates. Contains this product and shared service information only.

### `get_manifest` (~54 tokens)

Get the manifest for Rates by 402rates

Free OpenAPI manifest for Rates by 402rates. Contains this product and shared service information only.

Input parameters:

- `base_url` (string): absolute origin to render into the manifest's servers block. Defaults to the configured public base URL.

### `get_rwa_instrument` (~116 tokens)

Get one RWA instrument state

Returns the free frozen-contract state view for one tracked tokenized treasury: identity, Open Treasury Yield Basis result or explicit unavailable reason, issuer-term evidence cells, verified deployments and evidence dates. Three distinct tickers are free per caller in a rolling hour; repeats stay free, and the fourth returns BREADTH_LIMIT with the paid complete-snapshot path. An omitted ticker returns only the known ticker list.

Input parameters:

- `ticker` (string): tracked instrument ticker, case-insensitive. Omit it to receive the complete known ticker list.

### `get_rwa_history` (~191 tokens)

Get one RWA source history

Returns free normalized observations for one tracked instrument, one reconstructible recorder source and one inclusive date window. Every point carries value, date, source id, revision and source-time versus read-time dating. Omit source_id to list the instrument's audited sources. The five current-only issuer series return HISTORY_SOURCE_RESERVED with the data-use URL, never an empty gap. Shares the instrument view's three-ticker rolling-hour breadth limit.

Input parameters:

- `date_from` (string): inclusive first observation date in YYYY-MM-DD form; required with source_id
- `date_to` (string): inclusive last observation date in YYYY-MM-DD form; required with source_id
- `source_id` (string): one source id belonging to ticker. Omit it to list that instrument's sources without observations.
- `ticker` (string): tracked instrument ticker, case-insensitive. Omit it to list tickers and audited history sources.

### `cheapest_settlement_chain` (~109 tokens)

Cheapest chain for a USDC transfer

Returns only the single cheapest chain for a USDC transfer right now, its total transaction fee in USD, the scope of that figure and how long it stays valid. Free and deliberately minimal: no per-chain table, no runner-up, no fee components and no source provenance. The paid tool compare_settlement_costs returns the full comparison with every input disclosed.

Input parameters:

- `chains` (string): comma-separated subset of base, polygon, arbitrum, ethereum, xdc. Defaults to all five.

### `compare_settlement_costs` (~130 tokens)

Measured cost of a USDC transfer per chain, cheapest first

Measured USDC transfer costs on Base, Polygon, Arbitrum, Ethereum and XDC: simulated gas, current token prices, fresh chain heads and applicable rollup L1 fees. Inputs and block references accompany each figure. Cheapest first; unmeasurable chains are excluded, not estimated. Business/professional use only. Terms: https://402rates.com/data-terms/ Price: 0.01 USDC per call over x402.

Input parameters:

- `chains` (string): comma-separated subset of base, polygon, arbitrum, ethereum, xdc. Defaults to all five.

### `get_rwa_yields` (~127 tokens)

Realised 30-day yields of tokenized treasuries, recomputable

Realised 30-day yields for 13 tokenized treasury funds under the Open Treasury Yield Basis. Measured rows use NAV, price or verified passive-holder balances, with observations, sources and dates. Issuer figures and differences appear where available. Quoted and unavailable rows stay explicit; free coverage lists funds and gaps. Business/professional use only. Terms: https://402rates.com/data-terms/ Price: 0.03 USDC per call over x402.

Input parameters:

- `instruments` (string): comma-separated instrument tickers or ids; omitted means all tracked instruments

### `get_rwa_instruments` (~107 tokens)

Complete evidence snapshot for all tracked tokenized treasuries

Complete evidence snapshot for 13 tokenized treasury funds: yield or gap, measured size, subscription/redemption minimums, fees, settlement, access conditions, chain conflicts, quotes, URLs and dates. Same records as the free instrument view. Internal use with attribution included; continuous access, change notices and customer-facing use are separate. Business/professional use only. Terms: https://402rates.com/data-terms/ Price: 5 USDC per call over x402.

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/com-402rates-rates/mcp-rates#diagnostics

## Score history

- 2026-09-27: 73
- 2026-09-26: 72
- 2026-09-25: 72
- 2026-09-24: 71
- 2026-09-23: 71
- 2026-09-22: 70
- 2026-09-21: 70
- 2026-09-20: 69
- 2026-09-19: 69
- 2026-09-18: 69
- 2026-09-17: 68
- 2026-09-16: 68
- 2026-09-15: 67
- 2026-09-14: 67
- 2026-09-13: 66
- 2026-09-12: 66
- 2026-09-11: 66
- 2026-09-10: 65

## Common questions

### What is the Rates by 402rates MCP server?

Rates by 402rates is an MCP server listed in the public MCP registry as com.402rates/rates. Source-backed treasury data, settlement costs. Free instrument records and history. This page covers its hosted endpoint (https://api.402rates.com/mcp/rates).

### Is the Rates by 402rates MCP server safe to use?

Rates by 402rates scores 73 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Rates by 402rates MCP server expose?

Rates by 402rates exposes 11 tools: list_rwa_updates, compare_rwa_benchmark, compare_rwa_snapshots, list_capabilities, get_manifest, and 6 more. Their descriptions and schemas cost roughly 1,241 tokens of context every time the server is loaded.

### Does the Rates by 402rates MCP server require authentication?

No. We connected to Rates by 402rates without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Rates by 402rates MCP server still maintained?

Rates by 402rates is still listed as active in the MCP registry. We last reached this channel on 27 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://api.402rates.com/mcp/rates
- Website: https://402rates.com/
- Changelog RSS feed: https://verifymcp.io/servers/com-402rates-rates/mcp-rates.xml
- Changelog JSON feed: https://verifymcp.io/servers/com-402rates-rates/mcp-rates.json
- HTML version of this page: https://verifymcp.io/servers/com-402rates-rates/mcp-rates
