# TokenBank — tokenized real-world assets (remote · mcp.tokenbank.world)

4,168 tokenized real-world assets: yield, risk, and who is actually allowed to buy each one

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

## Components

- remote · `mcp.tokenbank.world`: 69/100 (this document), [markdown](https://verifymcp.io/servers/world-tokenbank-tokenbank/mcp.md), [page](https://verifymcp.io/servers/world-tokenbank-tokenbank/mcp)

## Channel facts

- Endpoint: `https://mcp.tokenbank.world`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.7.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-28.

- **Endpoint Security**: 63/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement.
  - 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**: 66/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 2132 tokens (~213/item across 10 items; 10 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 40/100
  - Stability observed for 12 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.
  - Structured output schemas are declared (100% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 10 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**: 60/100
  - Spec-recency check failed: implements MCP spec 2025-06-18; the latest is 2026-07-28.

## Install

### How do I install the TokenBank — tokenized real-world assets MCP server?

TokenBank — tokenized real-world assets is a hosted endpoint at https://mcp.tokenbank.world/, 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 world-tokenbank-tokenbank 'https://mcp.tokenbank.world/'
```

### Cursor

```json
{
  "mcpServers": {
    "world-tokenbank-tokenbank": {
      "url": "https://mcp.tokenbank.world/"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "world-tokenbank-tokenbank": {
      "type": "http",
      "url": "https://mcp.tokenbank.world/"
    }
  }
}
```

### Codex

```toml
[mcp_servers.world-tokenbank-tokenbank]
url = "https://mcp.tokenbank.world/"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "world-tokenbank-tokenbank": {
      "type": "remote",
      "url": "https://mcp.tokenbank.world/",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add world-tokenbank-tokenbank --url 'https://mcp.tokenbank.world/' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  world-tokenbank-tokenbank:
    url: "https://mcp.tokenbank.world/"
```

### Netclaw

```json
{
  "McpServers": {
    "world-tokenbank-tokenbank": {
      "Transport": "http",
      "Url": "https://mcp.tokenbank.world/"
    }
  }
}
```

### Vellum

```bash
assistant mcp add world-tokenbank-tokenbank -t streamable-http -u 'https://mcp.tokenbank.world/'
```

### Other

```json
{
  "mcpServers": {
    "world-tokenbank-tokenbank": {
      "type": "http",
      "url": "https://mcp.tokenbank.world/"
    }
  }
}
```

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-28 (score 69, 0)

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

### 2026-09-27 (score 69, +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-25 (score 68, +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 67, +1)

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

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

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

### 2026-09-19 (score 65, +1)

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

### 2026-09-17 (score 64, +1)

- [functional improvement] Stability: unverified → 0.03

### 2026-09-16 (score 63)

First indexed and scored.

## MCP tools (10)

### `search_yield_products` (~316 tokens)

Search and filter TokenBank's instruments for earning yield with crypto. Searches the CURATED tier by default (the rows that state a yield, minimum and risk); pass tier to reach the imported issuer-catalogue rows (tokenized treasuries, yield stablecoins, gold, real estate, tokenized stocks, staking, DeFi/CeFi earn, alternative funds). Returns compact records; use get_product_details for the full record.

Input parameters:

- `eu_only` (boolean): Only instruments available to EU investors
- `limit` (integer): Max results (default 20)
- `max_risk` (integer): Maximum risk on a 1-5 scale (1=very low, 3=medium, 5=high)
- `min_yield_pct` (number): Minimum headline yield in percent
- `offset` (integer): Skip this many matches before returning. Use the nextOffset from the previous answer to walk the whole set; its absence means you reached the end.
- `pillar` (string): Limit to one category pillar
- `query` (string): Free-text match on name, ticker, issuer or type
- `tier` (string): Which tier to search. Default "curated": the instruments that state a yield, minimum and risk — the only ones that can answer "what does this pay". "imported" and "all" reach the issuer-catalogue row…

Output parameters:

- `count` (integer): Rows returned
- `nextOffset` (integer): Pass as offset to fetch the next page; absent when there is no more
- `results` (array)
- `tier` (string)
- `totalMatching` (integer): Rows that matched before the limit

### `get_product_details` (~58 tokens)

Full record for one instrument by ticker (case-insensitive): yield, risk, custody, availability, how to buy, source link, verification date.

Input parameters:

- `ticker` (string, required): e.g. USDY, stETH, PAXG

Output parameters:

- `name` (string)
- `ticker` (string)
- `tier` (string)

### `compare_with_savings_account` (~93 tokens)

Compare low-risk, instant-access crypto savings instruments against a typical bank savings account rate. Returns the honest trade-offs, not just the bigger number.

Input parameters:

- `bank_rate_pct` (number): Your bank's rate in percent (default 2.0)
- `eu_only` (boolean): Optional: restrict to EU-available instruments. Default false — everything is shown, each row carries an euAvailable flag instead.

Output parameters:

- `bankRatePct` (number)
- `honestTradeoffs` (array)
- `instruments` (array)

### `find_permissionless_assets` (~228 tokens)

Instruments a self-custody wallet can buy without KYC and hold itself. This is the question a token list cannot answer: for real-world assets the gate to MINT and the gate to BUY on a secondary market routinely differ, so a fund can be permissioned at the issuer while its token trades freely. Strict by design — an instrument whose access is merely unverified is excluded, not included.

Input parameters:

- `eu_only` (boolean): Only instruments explicitly stated as EU-available
- `include_unverified` (boolean): Default false. When true, also returns instruments whose secondary-market gate is unknown — clearly flagged. Use only when the user asked what MIGHT be open, never to answer what IS open.
- `limit` (integer): Max results (default 20)
- `min_yield_pct` (number): Minimum comparable yield in percent
- `offset` (integer): Skip this many matches before returning. Use the nextOffset from the previous answer to walk the whole set; its absence means you reached the end.
- `pillar` (string): Limit to one category pillar

Output parameters:

- `confirmedOpen` (integer): Verified as buyable without KYC
- `count` (integer)
- `nextOffset` (integer): Pass as offset to fetch the next page; absent when there is no more
- `results` (array)
- `totalMatching` (integer)
- `unverified` (integer): Possibly open, not confirmed — excluded from results

### `compare_assets` (~84 tokens)

Put two or more instruments side by side on the fields that decide between them: yield, risk, minimum, custody, the three access gates, EU availability, issuer and verification date. Use for "X vs Y" questions instead of calling get_product_details repeatedly.

Input parameters:

- `tickers` (array, required): e.g. ["USDY", "OUSG", "BUIDL"]

Output parameters:

- `compared` (array)
- `notFound` (array)
- `readThis` (array)

### `get_market_stats` (~60 tokens)

Shape of the dataset: how many instruments, split by pillar, category and risk, how many are EU-available, how many are buyable without KYC, and how fresh the figures are. Use to ground a claim about coverage before making one.

Output parameters:

- `byTier` (object)
- `total` (integer): Every instrument, both tiers

### `get_market_coverage` (~239 tokens)

Which countries this dataset can see into, which it cannot, and why — the question "what is tokenized in Japan / Korea / Brazil / India" answers from here rather than from a general search. This matters because the honest answer is uncomfortable: roughly $9bn of tokenized securities sits in markets NO Western aggregator indexes, this one included. Japan holds over ¥1tn on a permissioned consortium chain run by eighteen banks. Korea issued $2.2bn in 2026 under regulatory sandbox exemptions, with legal recognition phased in from 4 February 2027 and retail capped by amount PER VENUE. India, Vietnam, Indonesia and Thailand have no stablecoin in their own currency at all. Call this before stating what a market holds, or before quoting any total as if it were the world. Omit `country` for every market.

Input parameters:

- `country` (string): Country slug or name, e.g. japan, korea, brazil, india, switzerland. Omit to list all.
- `readable_only` (boolean): Only markets whose instruments we can actually read (default false — the closed ones are the point)

Output parameters:

- `markets` (array)
- `summary` (object)

### `search_realt_properties` (~223 tokens)

Drill into the RealT portfolio: the individual tokenized US rental properties behind the REALT entry, each with its own net rental yield (computed as annual net rent / tokenized property value), token price, monthly rent and occupancy. Use this when someone asks which specific tokenized property to buy, or for the yield/price spread within one issuer.

Input parameters:

- `city` (string): City name, e.g. Detroit, Cleveland, Chicago
- `limit` (integer): Max results (default 20)
- `max_token_price_usd` (number): Maximum price per token in USD
- `min_yield_pct` (number): Minimum net rental yield in percent
- `offset` (integer): Skip this many matches before returning. Use the nextOffset from the previous answer to walk the whole set; its absence means you reached the end.
- `rented_only` (boolean): Only properties with at least one rented unit (default true)
- `sort` (string): Sort by net yield (default), token price (cheapest first) or monthly rent

Output parameters:

- `issuer` (string)
- `medianNetYieldPct` (number|null)
- `nextOffset` (integer): Pass as offset to fetch the next page; absent when there is no more
- `portfolioTotal` (integer)
- `properties` (array)
- `snapshotDate` (string)
- `totalMatching` (integer)

### `find_tokenized_security` (~473 tokens)

Does a tokenized version of a given company, ETF or bond exist, and from which issuer? Searches the whole imported tier by company name, ticker or ISIN: Backed / xStocks, Ondo Global Markets, Swiss SME share registers from Aktionariat, tokenized property from Binaryx, and an aggregated tier covering Dinari, Coinbase, Robinhood Chain, bStocks, Anchored Finance and others. Use this BEFORE saying a stock is not available on-chain. THREE THINGS MATTER IN THE ANSWER: (1) many companies are issued SEVERAL times over — Apple exists as seven different tokens — and those are not duplicates. They differ in issuer, legal form and, decisively, in WHO MAY BUY THEM: Backed xStocks reach EU retail via Kraken, Ondo Stocks are offered inside the EEA to MiFID II professional clients only. Always report the eligibility line, not just that the token exists. (2) Sources differ in AUTHORITY. Issuer catalogues state what that issuer issued, including access terms. The aggregated rows only observe that a token exists: they carry no eligibility, no KYC gate and no custody claim, so never turn one into an availability answer. (3) This is identity data: the source states no yield, no minimum and no risk grade, so those fields are absent rather than zero. For instruments that do carry a comparable rate, use search_yield_products instead.

Input parameters:

- `include_halted` (boolean): Include instruments Backed has flagged as trading-halted. Default false.
- `issuer` (string): Restrict to one issuer. Omit to search both, which is usually what you want — the comparison between them is the useful part.
- `limit` (integer): Max results (default 20)
- `line` (string): Backed only. xstocks = retail line via Kraken; btokens = older DeFi line, primary issuance for eligible investors only.
- `offset` (integer): Skip this many matches before returning. Use the nextOffset from the previous answer to walk the whole set; its absence means you reached the end.
- `query` (string, required): Company name, ticker or ISIN — e.g. "Apple", "AAPL", "US0378331005", "Silver Trust"

Output parameters:

- `catalogues` (object)
- `instruments` (array)
- `issuedByMoreThanOneIssuer` (array)
- `matched` (integer)
- `nextOffset` (integer): Pass as offset to fetch the next page; absent when there is no more
- `readThis` (array)

### `compare_tokenized_access` (~318 tokens)

For a security tokenized by more than one issuer, return every token on it with a verdict on WHO MAY BUY each. This is the right tool for "which tokenized Apple should I buy?" — a question that cannot be answered from a token list, because the tokens differ mainly in eligibility. Hundreds of securities here are tokenized more than once — Apple exists as seven separate tokens — and in most of them the answer differs between them: one is offered to EU retail, another is gated to MiFID II professional clients, a third states nothing at all. The response carries the exact counts; do not quote a figure from this description. Call this before recommending any tokenized stock. Omit `query` to list every such security.

Input parameters:

- `limit` (integer): Max results (default 10)
- `offset` (integer): Skip this many matches before returning. Use the nextOffset from the previous answer to walk the whole set; its absence means you reached the end.
- `query` (string): Company name, underlying ticker or ISIN — e.g. "Apple", "AAPL", "US0378331005". Omit to list all.
- `reach` (string): Only underlyings with at least one instrument of this reach. Use "retail" to find what a normal EU investor can buy.
- `split_only` (boolean): Only securities where the reach DIFFERS between their tokens — i.e. the company is buyable, but not through every token on it. Default false.

Output parameters:

- `matched` (integer)
- `nextOffset` (integer): Pass as offset to fetch the next page; absent when there is no more
- `underlyings` (array)

## Diagnostics

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

## Score history

- 2026-09-28: 69
- 2026-09-27: 69
- 2026-09-26: 68
- 2026-09-25: 68
- 2026-09-24: 67
- 2026-09-23: 67
- 2026-09-22: 66
- 2026-09-21: 66
- 2026-09-20: 65
- 2026-09-19: 65
- 2026-09-18: 64
- 2026-09-17: 64
- 2026-09-16: 63

## Common questions

### What is the TokenBank — tokenized real-world assets MCP server?

TokenBank — tokenized real-world assets is an MCP server listed in the public MCP registry as world.tokenbank/tokenbank. 4,168 tokenized real-world assets: yield, risk, and who is actually allowed to buy each one. This page covers its hosted endpoint (https://mcp.tokenbank.world).

### Is the TokenBank — tokenized real-world assets MCP server safe to use?

TokenBank — tokenized real-world assets scores 69 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 TokenBank — tokenized real-world assets MCP server expose?

TokenBank — tokenized real-world assets exposes 10 tools: search_yield_products, get_product_details, compare_with_savings_account, find_permissionless_assets, compare_assets, and 5 more. Their descriptions and schemas cost roughly 2,092 tokens of context every time the server is loaded.

### Does the TokenBank — tokenized real-world assets MCP server require authentication?

No. We connected to TokenBank — tokenized real-world assets without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the TokenBank — tokenized real-world assets MCP server still maintained?

TokenBank — tokenized real-world assets is still listed as active in the MCP registry. We last reached this channel on 28 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://mcp.tokenbank.world/
- Website: https://tokenbank.world/
- Changelog RSS feed: https://verifymcp.io/servers/world-tokenbank-tokenbank/mcp.xml
- Changelog JSON feed: https://verifymcp.io/servers/world-tokenbank-tokenbank/mcp.json
- HTML version of this page: https://verifymcp.io/servers/world-tokenbank-tokenbank/mcp
