Tokenized US stocks onchain: listings, holdings, US prices, pre-filled trade links. Read-only.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Where a tokenized stock is cheapest: each issuer's token (ST0x, Coinbase, Robinhood) priced per share for a $100 buy, against the stock's own price (US, or the home exchange's in dollars), with the gap in % and the lowest issuer. From quotes taken every 5 minutes (biggest stocks) or hourly; the time is in the answer. Not a live quote: for an executable best-price buy use trade_link with usd. Up to 12 tickers.
Where a tokenized stock is cheapest: each issuer's token (ST0x, Coinbase, Robinhood) priced per share for a $100 buy, against the stock's own price (US, or the home exchange's in dollars), with the gap in % and the lowest issuer. From quotes taken every 5 minutes (biggest stocks) or hourly; the time is in the answer. Not a live quote: for an executable best-price buy use trade_link with usd. Up to 12 tickers.
| Argument | Type | Description |
|---|---|---|
| tickers* | array |
{
"type": "object",
"required": [
"tickers"
],
"properties": {
"tickers": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 12,
"minItems": 1
}
},
"additionalProperties": false
}Last US market price and market status of listed stocks (what the tokens track). Up to 12 tickers.
| Argument | Type | Description |
|---|---|---|
| tickers* | array |
{
"type": "object",
"required": [
"tickers"
],
"properties": {
"tickers": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 12,
"minItems": 1
}
},
"additionalProperties": false
}Tokenized stocks listed on The River, with ticker, token symbol, issuer, chain and trade link. Filter by chain and/or a search query (ticker, symbol or name).
| Argument | Type | Description |
|---|---|---|
| chain | string | |
| query | string | e.g. NVDA or nvidia |
{
"type": "object",
"properties": {
"chain": {
"enum": [
"base",
"robinhood"
],
"type": "string"
},
"query": {
"type": "string",
"description": "e.g. NVDA or nvidia"
}
},
"additionalProperties": false
}A pre-filled River strategy card link (Base, ST0x stocks). Cards and fields: dip (budget, start, step, rungs); peg (amount, discount, max); recurring (budget, days, hours, max); cycle (budget, buy, step, levels, repeat, top, sell); take-profit (amount, target); sell-ladder (amount, first, last, parts); stop (amount, trigger, floor); breakout (amount, trigger, max); spread (amount, spread, weekend); portfolio (amount, preset, stocks). Missing fields are left for the user. See https://theriver.markets/llms.txt for what each card does. The user reviews this on The River and signs in their own wallet; nothing happens until they do.
| Argument | Type | Description |
|---|---|---|
| card* | string | |
| fields | object | Card fields as plain decimals, e.g. {"amount":"100","discount":"0.3"} |
| symbol | string | Ticker or token symbol, e.g. NVDA or wtNVDA (not for portfolio) |
{
"type": "object",
"required": [
"card"
],
"properties": {
"card": {
"enum": [
"dip",
"peg",
"recurring",
"cycle",
"take-profit",
"sell-ladder",
"stop",
"breakout",
"spread",
"portfolio"
],
"type": "string"
},
"fields": {
"type": "object",
"description": "Card fields as plain decimals, e.g. {\"amount\":\"100\",\"discount\":\"0.3\"}",
"additionalProperties": {
"type": [
"string",
"number"
]
}
},
"symbol": {
"type": "string",
"description": "Ticker or token symbol, e.g. NVDA or wtNVDA (not for portfolio)"
}
},
"additionalProperties": false
}A pre-filled River trade link. A buy by ticker with usd (no address or chain) returns a best-price link that opens the cheapest issuer for the user. Give exactly one of usd (buy only, settlement stablecoin, up to 6 decimals) or qty (tokens, up to 18 decimals). The user reviews this on The River and signs in their own wallet; nothing happens until they do.
| Argument | Type | Description |
|---|---|---|
| qty | string | number | Plain decimal, e.g. 50 or 0.25 |
| usd | string | number | Plain decimal, e.g. 50 or 0.25 |
| side* | string | |
| chain | string | When a ticker is listed on more than one chain |
| ticker | string | e.g. NVDA |
| address | string | Token address (instead of ticker) |
{
"type": "object",
"required": [
"side"
],
"properties": {
"qty": {
"type": [
"string",
"number"
],
"description": "Plain decimal, e.g. 50 or 0.25"
},
"usd": {
"type": [
"string",
"number"
],
"description": "Plain decimal, e.g. 50 or 0.25"
},
"side": {
"enum": [
"buy",
"sell"
],
"type": "string"
},
"chain": {
"enum": [
"base",
"robinhood"
],
"type": "string",
"description": "When a ticker is listed on more than one chain"
},
"ticker": {
"type": "string",
"description": "e.g. NVDA"
},
"address": {
"type": "string",
"description": "Token address (instead of ticker)"
}
},
"additionalProperties": false
}Any wallet's stock-token and cash balances on every chain The River serves (public onchain data), plus its read-only River profile link.
| Argument | Type | Description |
|---|---|---|
| address* | string | 0x... wallet address |
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "0x... wallet address"
}
},
"additionalProperties": false
}Any wallet's profit and loss on Base, from public chain data. Wallet: its stock tokens since 1 Oct 2026, average cost from the wallet's own USDC trades on any venue (DEX or orderbook), realised and unrealised per token; transfers are never priced. Strategies: one row per strategy (live and cancelled orders it placed, incl. its RiverAccount): fills, USDC spent and received, tokens bought and sold, and P&L at today's prices (value now minus what was put in). Robinhood Chain is not counted yet (stated in notes).
| Argument | Type | Description |
|---|---|---|
| address* | string | 0x... wallet address |
{
"type": "object",
"required": [
"address"
],
"properties": {
"address": {
"type": "string",
"description": "0x... wallet address"
}
},
"additionalProperties": false
}