TokenBank MCP
An MCP server providing tools for querying tokenized real-world assets, comparing yields, building portfolios, and accessing agent buying guides for investment research.
Endpoint and access
No sign-in to connect and list tools. Individual tools may still need a vendor account, credentials, or permissions; check the documented prerequisites.
https://mcp.tokenbank.worldWhat its tools do
16 tools, grouped by the hints the server advertises. Hints are self-declared, not verified behavior.
Read-only (16)
find_answeryield_picks_of_the_weeksearch_yield_productsget_product_detailsget_agent_buying_guidebuild_portfolioget_purchase_stepscompare_with_savings_accountfind_permissionless_assetscompare_assetsget_market_statsget_market_coverageget_country_registerssearch_realt_propertiesfind_tokenized_securitycompare_tokenized_access
Checks and signals
Each line is separate evidence, not a trust score.
- Passed Endpoint answered the live check ·
- Passed Endpoint and vendor documentation share a domain
- Availability 1 of 1 checks passed in 30 days
What you can do with it
- Search for yield products and tokenized securities
- Build diversified portfolios based on risk and amount
- Compare assets with savings accounts or each other
- Get agent buying guides and purchase steps
Source and maintenance
Protocol and capabilities
- Server
- tokenbank 1.7.0
- MCP protocol negotiated in check
- 2025-06-18
- Tools
- 16 advertised
- Resources
- Not advertised
- Resource templates
- Not advertised
- Prompts
- Not advertised
{
"tools": {}
}Server-provided instructions
Untrusted server output shown for inspection. It is not Koskamo guidance and is excluded from knowledge search.
Tools
16 advertised
find_answer — Find an answer page
Find TokenBank answer pages for a natural-language question — e.g. "can I buy Tesla as a token", "best stablecoin yield on Base", "euro stablecoins MiCA", "pre-IPO OpenAI token", "fixed yield on-chain". Returns the best-matching questions with the first sentence of each computed answer (figures from the live dataset), the page URL to cite and a JSON URL with every row, plus the matching guides (explainers such as how a bot buys a token, how to verify a contract, what happens if an issuer fails), each with a JSON URL. A question in Arabic, German, Spanish, Japanese, Chinese, Korean, Thai, Vietnamese or Indonesian also returns our pages written in that language (localPages), e.g. "صكوك مرمّزة". Use this first for a question a person would type; use the other tools to filter beyond it.
{
"type": "object",
"required": [
"query"
],
"properties": {
"limit": {
"type": "integer",
"maximum": 10,
"minimum": 1,
"description": "How many answers (default 3)"
},
"query": {
"type": "string",
"description": "The question, in plain words"
}
}
}{
"title": "Find an answer page",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}yield_picks_of_the_week — Yield picks of the week
Per category (treasury tokens, staking, private credit, yield stablecoins, reinsurance, stablecoin pools, fixed rate), the tokens an AI agent can buy on its own whose stated yield is highest right now — with a risk level 1-5 next to each, the purchase route (DEX pool, deposit contract, Pendle market), contracts and the page. Categories are ordered from low to high risk. Ranked by yield under printed rules, not recommended. Use it for "what looks good this week" or "top tokens a bot can buy".
{
"type": "object",
"properties": {
"ref": {
"type": "string",
"description": "Your agent name, added to the page links as utm_source"
},
"max_risk": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Leave out picks above this risk level (default 5)"
},
"per_category": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Picks per category (default 2)"
}
}
}{
"title": "Yield picks of the week",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_yield_products — Search yield products
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.
{
"type": "object",
"properties": {
"tier": {
"enum": [
"curated",
"imported",
"all"
],
"type": "string",
"description": "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 rows, which carry identity and classification only. Use them for identity questions (\"is X tokenized\"), never for yield rankings."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 20)"
},
"query": {
"type": "string",
"description": "Free-text match on name, ticker, issuer or type"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "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": {
"enum": [
"Fixed Income",
"Real Assets",
"Market Tokens",
"Staking"
],
"type": "string",
"description": "Limit to one category pillar"
},
"max_risk": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Maximum risk on a 1-5 scale (1=very low, 3=medium, 5=high)"
},
"min_yield_pct": {
"type": "number",
"description": "Minimum headline yield in percent"
}
}
}{
"type": "object",
"required": [
"count",
"totalMatching",
"results"
],
"properties": {
"tier": {
"type": "string"
},
"count": {
"type": "integer",
"description": "Rows returned"
},
"results": {
"type": "array",
"items": {
"type": "object"
}
},
"nextOffset": {
"type": "integer",
"description": "Pass as offset to fetch the next page; absent when there is no more"
},
"totalMatching": {
"type": "integer",
"description": "Rows that matched before the limit"
}
}
}{
"title": "Search yield products",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_product_details — Get instrument details
Full record for one instrument by ticker (case-insensitive): yield, risk, custody, availability, how to buy, source link, verification date.
{
"type": "object",
"required": [
"ticker"
],
"properties": {
"ticker": {
"type": "string",
"description": "e.g. USDY, stETH, PAXG"
}
}
}{
"type": "object",
"required": [
"ticker"
],
"properties": {
"name": {
"type": "string"
},
"tier": {
"type": "string"
},
"ticker": {
"type": "string"
}
}
}{
"title": "Get instrument details",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_agent_buying_guide — How agents buy tokens
Start here when building or running an AI agent or trading bot that buys tokens on its own. Returns the whole how-to as data: the six steps from wallet to confirmed purchase with the MCP/API call for each, the purchase paths (wallet only / owner onboarded once / platform account) with live counts, which asset classes a self-custody wallet can reach without an identity check, the highest-yield wallet-only candidates, how to choose among them and when not to buy (howToDecide: checks naming the fields that answer them, not recommendations), the guardrails a wallet policy should enforce, and the guides that explain it (each with a JSON URL). Then call get_purchase_steps for one ticker.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "How many candidates (default 10)"
},
"min_yield_pct": {
"type": "number",
"description": "Only list candidates at or above this stated yield, in percent"
}
}
}{
"title": "How agents buy tokens",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}build_portfolio — Build a diversified portfolio
Use this before buying more than one product: spreads an amount over several sources of yield instead of putting everything into the single highest yield. Returns the blocks (one product per category, never the same exposure twice, each checked at its own amount incl. gas, weight capped), a 10 % admixture above the risk budget for extra yield, the median yield and risk per category, the blended yield vs. the single best, the worst single failure as % of the amount, and a guide written for agents: why spreading is better (with failures on record), the steps (then get_purchase_steps per block) and when to rebalance. Checks, not advice.
{
"type": "object",
"properties": {
"max_risk": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Highest risk level for the core blocks (default 3)"
},
"amount_usd": {
"type": "number",
"description": "Total to invest in USD (default 1000)"
},
"admixture_pct": {
"type": "number",
"description": "Share above the risk budget, 0–20 % (default 10)"
},
"max_block_pct": {
"type": "number",
"description": "Highest weight of one block, % (default 30)"
},
"price_exposure": {
"type": "boolean",
"description": "Allow blocks that move with a crypto price, e.g. staking or pools with ETH (default false)"
}
}
}{
"title": "Build a diversified portfolio",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_purchase_steps — How an agent buys it
How an AI agent or bot buys one instrument on its own, step by step: the purchase path (wallet only / owner onboarded once / platform account), the three KYC gates, network and verified contract, the issuer route, the measured trading venues, the exit terms where researched (KYC to redeem, minimum, fee, settlement, from issuer documentation), the ordered steps (fund, verify contract, approve exact amount, simulate, deposit or swap, confirm, exit) and the guardrails a wallet policy should enforce. Read-only: it does not build, sign or send a transaction, and it does not say who may buy.
{
"type": "object",
"required": [
"ticker"
],
"properties": {
"ticker": {
"type": "string",
"description": "e.g. sUSDS, USDY, USYC"
},
"amount_usd": {
"type": "number",
"description": "Optional amount, used only to word the approval step"
}
}
}{
"type": "object",
"required": [
"ticker",
"path",
"steps"
],
"properties": {
"path": {
"enum": [
"wallet-only",
"onboarding",
"platform",
"unclear"
],
"type": "string"
},
"steps": {
"type": "array",
"items": {
"type": "string"
}
},
"ticker": {
"type": "string"
},
"guardrails": {
"type": "array",
"items": {
"type": "string"
}
}
}
}{
"title": "How an agent buys it",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}compare_with_savings_account — Compare with a savings account
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.
{
"type": "object",
"properties": {
"bank_rate_pct": {
"type": "number",
"description": "Your bank's rate in percent (default 2.0)"
}
}
}{
"type": "object",
"required": [
"bankRatePct",
"instruments"
],
"properties": {
"bankRatePct": {
"type": "number"
},
"instruments": {
"type": "array",
"items": {
"type": "object"
}
},
"honestTradeoffs": {
"type": "array",
"items": {
"type": "string"
}
}
}
}{
"title": "Compare with a savings account",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_permissionless_assets — Find permissionless assets
Instruments whose secondary market needs no KYC and which a self-custody wallet holds itself — a property of how the token works, read from hand-verified gates. For real-world assets the gate to MINT and the gate to trade 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 gate is merely unverified is excluded. This says nothing about who may buy it: the issuer's terms and local law decide that.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 20)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "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": {
"enum": [
"Fixed Income",
"Real Assets",
"Market Tokens",
"Staking"
],
"type": "string",
"description": "Limit to one category pillar"
},
"min_yield_pct": {
"type": "number",
"description": "Minimum comparable yield in percent"
},
"include_unverified": {
"type": "boolean",
"description": "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."
}
}
}{
"type": "object",
"required": [
"count",
"results"
],
"properties": {
"count": {
"type": "integer"
},
"results": {
"type": "array",
"items": {
"type": "object"
}
},
"nextOffset": {
"type": "integer",
"description": "Pass as offset to fetch the next page; absent when there is no more"
},
"unverified": {
"type": "integer",
"description": "Possibly open, not confirmed — excluded from results"
},
"confirmedOpen": {
"type": "integer",
"description": "Secondary-market gate verified as no KYC"
},
"totalMatching": {
"type": "integer"
}
}
}{
"title": "Find permissionless assets",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}compare_assets — Compare instruments
Put two or more instruments side by side on the fields that decide between them: yield, risk, minimum, custody, the three KYC gates, target/area, issuer and verification date. Use for "X vs Y" questions instead of calling get_product_details repeatedly.
{
"type": "object",
"required": [
"tickers"
],
"properties": {
"tickers": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 6,
"minItems": 2,
"description": "e.g. [\"USDY\", \"OUSG\", \"BUIDL\"]"
}
}
}{
"type": "object",
"required": [
"compared"
],
"properties": {
"compared": {
"type": "array",
"items": {
"type": "object"
}
},
"notFound": {
"type": "array",
"items": {
"type": "string"
}
},
"readThis": {
"type": "array",
"items": {
"type": "string"
}
}
}
}{
"title": "Compare instruments",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_market_stats — Dataset statistics
Shape of the dataset: how many instruments, split by pillar, category and risk, how many need no KYC on the secondary market, and how fresh the figures are. Use to ground a claim about coverage before making one.
{
"type": "object",
"properties": {}
}{
"type": "object",
"required": [
"total",
"byTier"
],
"properties": {
"total": {
"type": "integer",
"description": "Every instrument, both tiers"
},
"byTier": {
"type": "object",
"properties": {
"curated": {
"type": "integer"
},
"imported": {
"type": "integer"
}
}
}
}
}{
"title": "Dataset statistics",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_market_coverage — Market coverage by country
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.
{
"type": "object",
"properties": {
"country": {
"type": "string",
"description": "Country slug or name, e.g. japan, korea, brazil, india, switzerland. Omit to list all."
},
"readable_only": {
"type": "boolean",
"description": "Only markets whose instruments we can actually read (default false — the closed ones are the point)"
}
}
}{
"type": "object",
"required": [
"markets"
],
"properties": {
"markets": {
"type": "array",
"items": {
"type": "object"
}
},
"summary": {
"type": "object"
}
}
}{
"title": "Market coverage by country",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}get_country_registers — Official country registers
Official registers of tokenized assets and digital-asset firms for any of 250 jurisdictions (ISO 3166 + EU): which authority supervises, which public registers exist, which we read, and the entries themselves. Use it for "what is registered in Lithuania", "is firm X licensed anywhere" (pass `query` without `country`), or "which countries publish a list of token issues" (kind=issuance). A register entry records a licence, registration or approval by an authority — it is NOT proof that a token was issued, and it says nothing about who may buy. Provider registers list companies, not instruments: never add their entries to a count of tokens.
{
"type": "object",
"properties": {
"kind": {
"enum": [
"issuance",
"issuer",
"provider",
"sandbox",
"event",
"candidate"
],
"type": "string",
"description": "issuance = individual issues; issuer = registered issuers; provider = licensed firms; sandbox = sandbox participants; event = decisions/letters; candidate = full-text search hits, unconfirmed"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max entries (default 25)"
},
"query": {
"type": "string",
"description": "Free-text match on entry name, issuer, ISIN or register number"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "Skip this many entries (use nextOffset from the previous answer)"
},
"country": {
"type": "string",
"description": "ISO code (DE, HK), English name or slug (germany, hong-kong). Omit to search every register."
}
}
}{
"type": "object",
"required": [
"totalMatching",
"entries"
],
"properties": {
"country": {
"type": "object"
},
"entries": {
"type": "array",
"items": {
"type": "object"
}
},
"readThis": {
"type": "array",
"items": {
"type": "string"
}
},
"nextOffset": {
"type": "integer",
"description": "Pass as offset to fetch the next page; absent when there is no more"
},
"totalMatching": {
"type": "integer"
},
"registersSearched": {
"type": "integer"
}
}
}{
"title": "Official country registers",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}search_realt_properties — Search RealT properties
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.
{
"type": "object",
"properties": {
"city": {
"type": "string",
"description": "City name, e.g. Detroit, Cleveland, Chicago"
},
"sort": {
"enum": [
"yield",
"price",
"rent"
],
"type": "string",
"description": "Sort by net yield (default), token price (cheapest first) or monthly rent"
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 20)"
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "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": {
"type": "boolean",
"description": "Only properties with at least one rented unit (default true)"
},
"min_yield_pct": {
"type": "number",
"description": "Minimum net rental yield in percent"
},
"max_token_price_usd": {
"type": "number",
"description": "Maximum price per token in USD"
}
}
}{
"type": "object",
"required": [
"issuer",
"totalMatching"
],
"properties": {
"issuer": {
"type": "string"
},
"results": {
"type": "array",
"items": {
"type": "object"
}
},
"nextOffset": {
"type": "integer",
"description": "Pass as offset to fetch the next page; absent when there is no more"
},
"portfolioUrl": {
"type": "string"
},
"snapshotDate": {
"type": "string"
},
"totalMatching": {
"type": "integer"
},
"portfolioTotal": {
"type": "integer"
},
"medianNetYieldPct": {
"type": [
"number",
"null"
]
}
}
}{
"title": "Search RealT properties",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}find_tokenized_security — Find a tokenized security
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: issuer catalogues from Backed / xStocks, Ondo Global Markets, Dinari, Robinhood, Coinbase, Backpack, Reality (Bitget), ST0x, Jarsy, Midas, Lofty, Swiss SME share registers from Aktionariat, Japanese security tokens, El Salvador's CNAD register (registered offerings — sale not confirmed, say so) and European and Asian digital bonds from official registers, plus an aggregated tier (CoinGecko) covering the rest. 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, holder rights, chain and the market each issuer aims them at (targetArea). Report the issuer, not just that the token exists. (2) Sources differ in AUTHORITY. Issuer catalogues state what that issuer issued. The aggregated rows only observe that a token exists: they carry no KYC gate and no custody claim. targetArea is a description of the issuer's stated audience, never an eligibility check. (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.
{
"type": "object",
"required": [
"query"
],
"properties": {
"line": {
"enum": [
"xstocks",
"btokens"
],
"type": "string",
"description": "Backed only. xstocks = the xStocks line; btokens = the older bToken DeFi line."
},
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 20)"
},
"query": {
"type": "string",
"description": "Company name, ticker or ISIN — e.g. \"Apple\", \"AAPL\", \"US0378331005\", \"Silver Trust\""
},
"issuer": {
"enum": [
"backed",
"ondo"
],
"type": "string",
"description": "Restrict to one issuer. Omit to search both, which is usually what you want — the comparison between them is the useful part."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "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."
},
"include_halted": {
"type": "boolean",
"description": "Include instruments Backed has flagged as trading-halted. Default false."
}
}
}{
"type": "object",
"required": [
"matched",
"instruments"
],
"properties": {
"matched": {
"type": "integer"
},
"readThis": {
"type": "array",
"items": {
"type": "string"
}
},
"catalogues": {
"type": "object"
},
"nextOffset": {
"type": "integer",
"description": "Pass as offset to fetch the next page; absent when there is no more"
},
"instruments": {
"type": "array",
"items": {
"type": "object"
}
},
"issuedByMoreThanOneIssuer": {
"type": "array",
"items": {
"type": "string"
}
}
}
}{
"title": "Find a tokenized security",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}compare_tokenized_access — Compare tokens on one security
For a security tokenized by more than one issuer, compare every token on it side by side — issuer, structure, KYC gates, custody, chain, and the target/area each issuer states — plus every Hyperliquid perpetual on it (fees, funding, leverage; no ownership). The right tool for "which tokenized versions of Apple exist?" and "where can I get NVIDIA on-chain, and at what cost?": the tokens and perps share a price driver and differ in almost everything else. Securities that exist on-chain only as a perp are included too. Hundreds of securities here are tokenized more than once — Apple exists as seven separate tokens; the response carries the exact counts, do not quote a figure from this description. targetArea describes who each issuer aims the product at and where; it is not an eligibility check — who may buy is set by the issuer. Omit `query` to list every such security.
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"maximum": 100,
"minimum": 1,
"description": "Max results (default 10)"
},
"query": {
"type": "string",
"description": "Company name, underlying ticker or ISIN — e.g. \"Apple\", \"AAPL\", \"US0378331005\". Omit to list all."
},
"offset": {
"type": "integer",
"minimum": 0,
"description": "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."
},
"sector": {
"enum": [
"technology",
"communication",
"consumer",
"healthcare",
"financials",
"crypto",
"industrials",
"energy",
"materials",
"real-estate",
"funds"
],
"type": "string",
"description": "Only securities in this sector, e.g. \"crypto\" or \"funds\"."
},
"industry": {
"enum": [
"semiconductors",
"semiconductor-equipment",
"memory-storage",
"software",
"cybersecurity",
"ai-cloud",
"ai-models",
"hardware",
"networking",
"electronic-components",
"quantum",
"it-services",
"internet-platforms",
"media-entertainment",
"telecom",
"ecommerce",
"autos-ev",
"retail",
"restaurants",
"consumer-staples",
"leisure-apparel",
"pharma-biotech",
"medtech",
"health-services",
"banks",
"payments",
"brokers-exchanges",
"asset-managers",
"insurance",
"financial-data",
"bdc-private-credit",
"bitcoin-miners",
"crypto-treasury",
"crypto-platforms",
"aerospace-defense",
"space",
"machinery-electrical",
"transport-logistics",
"construction-engineering",
"business-services",
"oil-gas",
"utilities-power",
"nuclear-uranium",
"clean-energy",
"metals-mining",
"chemicals-materials",
"reits",
"real-estate-services",
"index-etf",
"country-etf",
"thematic-etf",
"leveraged-etf",
"bond-etf",
"commodity-etp",
"crypto-etp"
],
"type": "string",
"description": "Only securities in this industry, e.g. \"bitcoin-miners\", \"semiconductors\", \"memory-storage\"."
}
}
}{
"type": "object",
"required": [
"matched",
"underlyings"
],
"properties": {
"matched": {
"type": "integer"
},
"nextOffset": {
"type": "integer",
"description": "Pass as offset to fetch the next page; absent when there is no more"
},
"underlyings": {
"type": "array",
"items": {
"type": "object"
}
}
}
}{
"title": "Compare tokens on one security",
"readOnlyHint": true,
"openWorldHint": false,
"idempotentHint": true,
"destructiveHint": false
}Prompts
Not advertised
Resources
Not advertised
90-day uptime
A lightweight connection check about every six hours, sampled on hosts with many listings. It shows the server answered, not that its tools work.
- 2026-11-09: 1 of 1 checks answered
30-day availability
Aggregated from read-only remote checks; this is not a tool-execution or security guarantee.
- Successful checks
- 1 of 1 (100%)
- Average latency
- 2335 ms
- 95th percentile latency
- 2335 ms
Maintenance history
Public check and source-refresh events. Editorial and ownership records remain private.
- · probe · passed · 2335 ms · metadata changed · 16 tool(s)
Connect from your client
Each snippet registers the same endpoint; pick the client you use.
Claude Code
claude mcp add --transport http tokenbank-mcp https://mcp.tokenbank.worldCodex
codex mcp add tokenbank-mcp --url https://mcp.tokenbank.worldCursor
{
"mcpServers": {
"tokenbank-mcp": {
"url": "https://mcp.tokenbank.world"
}
}
}Cline
{
"mcpServers": {
"tokenbank-mcp": {
"type": "streamableHttp",
"url": "https://mcp.tokenbank.world",
"disabled": false
}
}
}VS Code
{
"servers": {
"tokenbank-mcp": {
"type": "http",
"url": "https://mcp.tokenbank.world"
}
}
}Gemini CLI
gemini mcp add --transport http tokenbank-mcp https://mcp.tokenbank.worldClaude Desktop
https://mcp.tokenbank.worldWindsurf
{
"mcpServers": {
"tokenbank-mcp": {
"serverUrl": "https://mcp.tokenbank.world"
}
}
}Let your agent find its tools
Find servers like TokenBank MCP from your agent. Add Koskamo once to search the index for endpoints, access requirements, and client setup. Public discovery needs no key.
Other data and analytics servers
Do you run TokenBank MCP?
Prove ownership with a DNS record, a well-known file, or your Official MCP Registry entry, and your edits publish immediately. Proofs are re-checked weekly; admins can still hide or remove a listing.