# TokenBel Financial Data (remote · mcp.tokenbel.info)

Read-only MCP server for Belarusian securities: tokens, shares, bonds, companies.

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

## Components

- remote · `mcp.tokenbel.info`: 70/100 (this document), [markdown](https://verifymcp.io/servers/andreidrang-tokenbel-mcp/mcp.md), [page](https://verifymcp.io/servers/andreidrang-tokenbel-mcp/mcp)

## Channel facts

- Endpoint: `https://mcp.tokenbel.info/mcp`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.0.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-08-03.

- **Endpoint Security**: 63/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 19 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.
  - The HSTS (Strict-Transport-Security) header is present.
  - 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**: 80/100
  - 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 5039 tokens (~179/item across 28 items; 19 tools + 9 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 27/100
  - Stability observed for 8 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.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### Claude

```bash
claude mcp add --transport http andreidrang-tokenbel-mcp https://mcp.tokenbel.info/mcp
```

### Codex

```toml
[mcp_servers.andreidrang-tokenbel-mcp]
url = "https://mcp.tokenbel.info/mcp"
```

### opencode

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

### OpenClaw

```bash
openclaw mcp add andreidrang-tokenbel-mcp --url https://mcp.tokenbel.info/mcp --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  andreidrang-tokenbel-mcp:
    url: "https://mcp.tokenbel.info/mcp"
```

### Other

```json
{
  "mcpServers": {
    "andreidrang-tokenbel-mcp": {
      "type": "http",
      "url": "https://mcp.tokenbel.info/mcp"
    }
  }
}
```

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-08-02 (score 70, +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-07-31 (score 69, +1)

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

### 2026-07-30 (score 68, 0)

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

### 2026-07-29 (score 68, +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-07-28 (score 67, +1)

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

### 2026-07-27 (score 66, 0)

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

### 2026-07-26 (score 66)

First indexed and scored.

## MCP tools (19)

### `token_get_by_uuid` (~131 tokens)

Get a single token by its TokenBel internal identifier (field name: uuid). Tokens are TokenBel-native tokenized corporate securities on fintech platforms (fainex/finstore/bynex/whitebird), not BCSE-listed tickers. Returns platform, lifecycle status, pricing, coupon rate, and company info.

Input parameters:

- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Token id, usually d…

Output parameters:

- `company_name`
- `company_uuid`
- `created_at` (string)
- `currency` (string)
- `emission_stop`
- `is_active` (boolean)
- `name` (string)
- `percent_rate`
- `platform` (string)
- `sold`
- `status` (string)
- `token_price`
- `total_tokens`
- `updated_at` (string)
- `uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `token_list` (~243 tokens)

List active tokens with optional filtering by fintech platform and token lifecycle status. Tokens do not have tickers; use this list tool to browse tokenized securities by platform/status. Supports cursor-based pagination.

Input parameters:

- `cursor_created_at` (string): Pagination cursor datetime (ISO 8601)
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Pagination cursor i…
- `limit` (integer): Max results (1-1000, default 50)
- `platform` (string): Filter by tokenization platform: fainex, finstore, bynex, or whitebird.
- `status` (string): Filter by token lifecycle status: SELL_NOT_STARTED (sale not open yet), SELL_IN_PROGRESS (currently selling), SELL_SUSPENDED (sale paused), SOLD_OUT (fully sold), SELL_ENDED (sale ended), CIRCULATION…

Output parameters:

- `count` (number)
- `next_cursor`
- `tokens` (array)

### `share_get_by_uuid` (~136 tokens)

Get a single BCSE exchange-listed share by its TokenBel internal identifier (field name: uuid). Returns ticker, issuer_uuid/issuer_name, share_kind (common/preferred), nominal value, lot size, and is_trading (traded today, not historical liquidity). Use search_by_ticker first when starting from a ticker.

Input parameters:

- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Share id, usually d…

Output parameters:

- `admission_date`
- `created_at` (string)
- `currency`
- `is_active` (boolean)
- `is_trading`
- `issuer_name`
- `issuer_uuid`
- `lot_size`
- `name`
- `nominal_value`
- `security_kind` (string)
- `share_kind`
- `ticker`
- `updated_at` (string)
- `uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `share_list` (~243 tokens)

List active BCSE exchange-listed shares with optional filtering by securities issuer TokenBel internal id (parameter name: issuer_uuid) and today-trading flag. Use issuer_uuid from search_by_name results where entity_type="issuer". Supports cursor-based pagination.

Input parameters:

- `cursor_created_at` (string): Pagination cursor datetime (ISO 8601)
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Pagination cursor i…
- `is_trading` (boolean): Filter by is_traded_today flag: true means traded today, not historical liquidity
- `issuer_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Filter by security_…
- `limit` (integer): Max results (1-1000, default 50)

Output parameters:

- `count` (number)
- `next_cursor`
- `shares` (array)

### `share_payouts_get` (~191 tokens)

Get dividend/payout history and an aggregate summary for a single share by its TokenBel internal identifier (field name: uuid). Use search_by_ticker to find a share, then call this tool with the returned uuid value. Event period_type is annual/halfyear/quarterly. Event status meanings: declared = payout declared/expected/paid depending on dates, no_dividend = issuer declared no payout, cancelled = revoked. Summary money totals use declared events only. dividend_yield_pct is a nominal-based proxy (latest declared amount / nominal value * 100), not a market-price dividend yield.

Input parameters:

- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Share id, usually d…

Output parameters:

- `currency`
- `events` (array)
- `nominal_value`
- `share_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `summary` (object)
- `ticker`

### `bond_get_by_uuid` (~155 tokens)

Get a single BCSE exchange-listed bond by its TokenBel internal identifier (field name: uuid). Returns ticker, issuer_uuid/issuer_name, bond_kind, current coupon/annual yield rate, payment type, maturity date, and is_trading (traded today). Use search_by_ticker first when starting from a ticker. Trading history is available via trading_stats_get; no separate bond payout schedule is exposed by this worker.

Input parameters:

- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Bond id, usually di…

Output parameters:

- `admission_date`
- `bond_kind`
- `created_at` (string)
- `currency`
- `is_active` (boolean)
- `is_trading`
- `issuer_name`
- `issuer_uuid`
- `maturity_date`
- `name`
- `nominal_value`
- `percent_payment_type`
- `percent_rate`
- `security_kind` (string)
- `ticker`
- `updated_at` (string)
- `uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `bond_list` (~243 tokens)

List active BCSE exchange-listed bonds with optional filtering by securities issuer TokenBel internal id (parameter name: issuer_uuid) and today-trading flag. Use issuer_uuid from search_by_name results where entity_type="issuer". Supports cursor-based pagination.

Input parameters:

- `cursor_created_at` (string): Pagination cursor datetime (ISO 8601)
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Pagination cursor i…
- `is_trading` (boolean): Filter by is_traded_today flag: true means traded today, not historical liquidity
- `issuer_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Filter by security_…
- `limit` (integer): Max results (1-1000, default 50)

Output parameters:

- `bonds` (array)
- `count` (number)
- `next_cursor`

### `company_get_by_uuid` (~136 tokens)

Get a single company catalogue row by its TokenBel internal identifier (field name: uuid). Returns name, full_name, UNP (Belarusian tax ID), industry, logo, and activity flag. Companies are not always the same row as securities issuers; use search_by_name to discover both companies and issuers.

Input parameters:

- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Company id, usually…

Output parameters:

- `address`
- `created_at` (string)
- `full_name`
- `industry`
- `is_active` (boolean)
- `logo_path`
- `name` (string)
- `unp`
- `updated_at` (string)
- `uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `company_list` (~163 tokens)

List active company catalogue rows with optional filtering by industry. This does not list security_issuer rows directly; use search_by_name to find issuers and then share_list/bond_list with issuer_uuid. Supports cursor-based pagination.

Input parameters:

- `cursor_created_at` (string): Pagination cursor datetime (ISO 8601)
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Pagination cursor i…
- `industry` (string): Filter by company_industry.name exact value
- `limit` (integer): Max results (1-1000, default 50)

Output parameters:

- `companies` (array)
- `count` (number)
- `next_cursor`

### `search_by_ticker` (~165 tokens)

Search BCSE exchange-listed shares and bonds by ticker (case-insensitive substring match). Tokens are excluded because they do not have ticker symbols. Use the returned uuid value as an opaque TokenBel internal id (usually 8 hex chars, not an RFC UUID) with share_get_by_uuid/bond_get_by_uuid, share_payouts_get for share rows, or trading_stats_get for either share/bond row. Returns entity_type, ticker, issuer_uuid, issuer_name, and is_trading (traded today).

Input parameters:

- `limit` (integer): Max results (1-100, default 20)
- `query` (string, required): Ticker search query for listed shares/bonds only (case-insensitive substring, e.g. 'MTB' matches 'MTBank')

Output parameters:

- `count` (number)
- `query` (string)
- `results` (array)

### `search_by_name` (~172 tokens)

Search companies AND securities issuers by name, full name, or UNP (Belarusian tax ID). Results are tagged with entity_type: "company" (use company_get_by_uuid) or "issuer" (use uuid as issuer_uuid in share_list/bond_list). The returned uuid/issuer_uuid values are opaque TokenBel internal ids (usually 8 hex chars, not RFC UUIDs). Companies and issuers are different tables and may overlap; linked_company_uuid connects an issuer to a company when known.

Input parameters:

- `limit` (integer): Max results (1-100, default 20)
- `query` (string, required): Company/issuer name or UNP (Belarusian tax ID) search query; case-insensitive, e.g. 'bank' matches 'MTBank', 'Priorbank'

Output parameters:

- `count` (number)
- `query` (string)
- `results` (array)

### `currency_rate_get` (~252 tokens)

Get NBRB (National Bank of Belarus) official FX rates against BYN (Belarusian ruble) for USD, EUR, and/or RUB. Rates are BYN per 1 unit of foreign currency. Modes: latest (no dates), single_date (date), range (date_from/date_to, either bound optional), or grouped weekly/monthly aggregates (group_by + range). Only usd/eur/rub are supported; BYN is the implicit base currency.

Input parameters:

- `currency` (string): Filter to one supported foreign currency: usd, eur, or rub. Omit to return all three. BYN is the base currency, not a target.
- `date` (string): Single date in YYYY-MM-DD format. Mutually exclusive with date_from/date_to.
- `date_from` (string): Range start date in YYYY-MM-DD format (inclusive). Can be omitted for open-start range.
- `date_to` (string): Range end date in YYYY-MM-DD format (inclusive, >= date_from). Open-ended or today-bounded ranges bypass cache.
- `group_by` (string): Aggregate by week or month. Requires a date range (date_from/date_to), not a single date.

Output parameters:

- `base_currency` (string)
- `count` (number)
- `currency` (array)
- `date_from`
- `date_to`
- `group_by` (string)
- `mode` (string)
- `results` (array)

### `trading_stats_get` (~312 tokens)

Get trading statistics for a BCSE exchange-listed share or bond by TokenBel internal identifier (field name: uuid). Use search_by_ticker first. Modes: latest_30d (default, no dates) reads the refreshed 30-day materialized view and includes latest price/yield plus yield_wavg; range (both date_from and date_to, YYYY-MM-DD, inclusive) aggregates raw trade history live and returns yield_min/yield_max only — yield_wavg and all *_latest fields are null in range mode. Omit both dates or provide both; one bound is rejected. Both modes also return daily_series: one point per trade_date (same-day buckets collapsed across market_type/trade_mode/payment_code) with per-day turnover, transactions, price_wavg/min/max, and yield_min/max — no range-level rollup.

Input parameters:

- `date_from` (string): Range start date YYYY-MM-DD (inclusive). Provide both date_from and date_to for range mode; omit both for latest_30d mode.
- `date_to` (string): Range end date YYYY-MM-DD (inclusive, >= date_from). Provide both date_from and date_to for range mode; ranges ending today bypass cache.
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Listed share or bon…

Output parameters:

- `daily_series` (array)
- `last_trade_date`
- `mode` (string)
- `period` (object)
- `price_latest_date`
- `price_max`
- `price_min`
- `price_wavg`
- `price_wavg_latest`
- `security_kind` (string)
- `ticker`
- `trading_days` (number)
- `transactions_count`
- `turnover_amount`
- `uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `yield_latest_date`
- `yield_max`
- `yield_min`
- `yield_wavg`
- `yield_wavg_latest`

### `token_trading_stats_get` (~224 tokens)

Get primary-market sales statistics for a token by its TokenBel internal identifier (field name: uuid). Returns a per-day series of tokens sold (derived from the cumulative instrument_log.sold counter), range totals, and a token snapshot (status, token_price, percent_rate, sold_total, total_tokens, sold_pct). Find the id via token_list first. Always a date range: omit both dates for the last 30 days, or provide date_from and/or date_to. Secondary-market data is not included.

Input parameters:

- `date_from` (string): Range start date YYYY-MM-DD (inclusive). Defaults to date_to minus 30 days when omitted.
- `date_to` (string): Range end date YYYY-MM-DD (inclusive, >= date_from). Defaults to today when omitted.
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Token id, usually d…

Output parameters:

- `currency` (string)
- `daily` (array)
- `mode` (string)
- `period` (object)
- `platform` (string)
- `security_kind` (string)
- `snapshot` (object)
- `totals` (object)
- `uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `company_financial_params_get` (~177 tokens)

Get financial parameters for a company or securities issuer by TokenBel internal identifier (field name: uuid). Returns periodic financial statement metrics (balance, equity, long/short-term assets and liabilities) and calculated financial ratios (liquidity, leverage, independence, stability, capitalization). Accepts a company id or an issuer id — issuer ids are resolved to their linked company. Find the id via search_by_name first.

Input parameters:

- `limit_periods` (integer): Max number of periods to return (newest first). Default 8.
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Company or issuer i…

Output parameters:

- `company_name` (string)
- `company_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `count` (number)
- `issuer_name`
- `issuer_uuid`
- `periods` (array)
- `requested_entity_type` (string)
- `requested_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `company_tokens_list` (~219 tokens)

List summary cards of a company's active tokens (emissions). Accepts a company OR issuer TokenBel id; resolves the company and returns its tokens.

Input parameters:

- `cursor_created_at` (string): Opaque cursor datetime part (ISO 8601) from the next_cursor returned by a prior call; pass both cursor parts together.
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Opaque cursor id pa…
- `limit` (integer): Max results per page (default 50).
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Company or issuer i…

Output parameters:

- `company_name` (string)
- `company_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `count` (number)
- `issuer_name`
- `issuer_uuid`
- `limit` (number)
- `next_cursor`
- `requested_entity_type` (string)
- `requested_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `tokens` (array)

### `company_shares_list` (~217 tokens)

List summary cards of a company's active shares. Accepts a company OR issuer TokenBel id; resolves the company and returns its shares.

Input parameters:

- `cursor_created_at` (string): Opaque cursor datetime part (ISO 8601) from the next_cursor returned by a prior call; pass both cursor parts together.
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Opaque cursor id pa…
- `limit` (integer): Max results per page (default 50).
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Company or issuer i…

Output parameters:

- `company_name` (string)
- `company_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `count` (number)
- `issuer_name`
- `issuer_uuid`
- `limit` (number)
- `next_cursor`
- `requested_entity_type` (string)
- `requested_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `shares` (array)

### `company_bonds_list` (~217 tokens)

List summary cards of a company's active bonds. Accepts a company OR issuer TokenBel id; resolves the company and returns its bonds.

Input parameters:

- `cursor_created_at` (string): Opaque cursor datetime part (ISO 8601) from the next_cursor returned by a prior call; pass both cursor parts together.
- `cursor_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Opaque cursor id pa…
- `limit` (integer): Max results per page (default 50).
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Company or issuer i…

Output parameters:

- `bonds` (array)
- `company_name` (string)
- `company_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `count` (number)
- `issuer_name`
- `issuer_uuid`
- `limit` (number)
- `next_cursor`
- `requested_entity_type` (string)
- `requested_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

### `entity_news_list` (~396 tokens)

List full published news events across a company's or issuer's full entity graph (the company, its security_issuers, their bonds/shares, and emissions under the company). Accepts a company OR issuer TokenBel id; resolves the entity and returns enriched news events with aggregated links and tags. Supports filtering by event_types, impact_types, and a date_from/date_to range, plus cursor-based pagination.

Input parameters:

- `cursor_event_id` (string): Opaque pagination cursor part 1 (the last event id) from the next_cursor returned by a prior call; pass both cursor parts together.
- `cursor_published_at` (string): Opaque pagination cursor part 2 (the last event sort-key timestamp) from the next_cursor returned by a prior call; pass both cursor parts together.
- `date_from` (string): Optional inclusive lower bound on the event date (ISO YYYY-MM-DD).
- `date_to` (string): Optional inclusive upper bound on the event date (ISO YYYY-MM-DD).
- `event_types` (array): Optional filter on news_event.event_type. Valid values: company_news, share_event, bond_event, token_event, emission_event, corporate_action, payment_event, default_risk, financial_report, regulatory…
- `impact_types` (array): Optional filter on news_event.impact_type. Valid values: positive, neutral, negative, mixed. Case-insensitive.
- `limit` (integer): Max results per page (default 20, max 50).
- `uuid` (string, required): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field/tool names, it is not an RFC UUID and normally has no hyphens. Company or issuer i…

Output parameters:

- `company_name` (string)
- `company_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.
- `count` (number)
- `events` (array)
- `filters` (object)
- `issuer_name`
- `issuer_uuid`
- `limit` (number)
- `next_cursor`
- `requested_entity_type` (string)
- `requested_uuid` (string): TokenBel internal identifier: opaque hexadecimal string, usually 8 characters such as "78c7e502"; despite uuid field names, it is not an RFC UUID and normally has no hyphens.

## Diagnostics

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

## Score history

- 2026-08-03: 70
- 2026-08-02: 70
- 2026-08-01: 69
- 2026-07-31: 69
- 2026-07-30: 68
- 2026-07-29: 68
- 2026-07-28: 67
- 2026-07-27: 66
- 2026-07-26: 66

## Links

- Remote endpoint: https://mcp.tokenbel.info/mcp
- Repository: https://github.com/AndreiDrang/tokenbel-mcp
- Changelog RSS feed: https://verifymcp.io/servers/andreidrang-tokenbel-mcp/mcp/changelog.xml
- Changelog JSON feed: https://verifymcp.io/servers/andreidrang-tokenbel-mcp/mcp/changelog.json
- HTML version of this page: https://verifymcp.io/servers/andreidrang-tokenbel-mcp/mcp
