MCP tools
The eight tools the agent gets. No key access; withdrawals are opt-in and capped.
The tools pouch exposes to the agent. There is intentionally no tool that returns the private key. Outbound transfers exist as a send tool but are disabled by default: the owner opts in via policy.transfers, with a per-transfer cap, a rolling 24h budget, and an optional recipient allowlist.
search_tokens
Search tokens by name or symbol via the chain explorer: official tokenized stocks and other onchain assets.
| Param | Type | Description |
|---|---|---|
query | string | Name or symbol, e.g. TSLA, NVDA, AAPL |
Returns candidates with address, holders, and price feed status. Names are fakeable; always follow up with get_token_info before trading.
get_token_info
Classify a token address into a trust tier.
| Param | Type | Description |
|---|---|---|
address | string | Token contract address |
Returns symbol, name, decimals, tier with reasons, holders, price, live pools per quote currency, and the policy that applies to the tier.
quote
Executable price for a swap (exact input, best live pool).
| Param | Type | Description |
|---|---|---|
token_in | string | ETH, USDG, or a token address to sell |
token_out | string | ETH, USDG, or a token address to buy |
amount_in | string | Human-readable amount, e.g. 50.00 |
One side must be ETH or USDG. Returns expected output, USD value, market-hours status, and the pool used.
swap
Execute a swap through the Uniswap v4 Universal Router. Guardrails run first; a blocked trade costs nothing.
| Param | Type | Description |
|---|---|---|
token_in | string | ETH, USDG, or a token address to sell |
token_out | string | ETH, USDG, or a token address to buy |
amount_in | string | Human-readable amount to sell |
slippage_bps | number, optional | Max slippage vs quote, default 100 (1%) |
Returns amounts sold and received (gas-corrected for native ETH), USD value, tier, and an explorer link.
send
Send funds to another address on Robinhood Chain (withdrawal). Irreversible. Disabled unless policy.transfers.enabled is true; guardrails check the optional recipient allowlist, the per-transfer USD cap, and the rolling 24h transfer budget before signing. Blocked transfers cost nothing.
| Param | Type | Description |
|---|---|---|
token | string | ETH, USDG, or a token contract address |
to | string | Destination address. Must come from the user, never guessed. |
amount | string | Human-readable amount, e.g. 50.00 |
get_portfolio
Balances: ETH (gas) with live USD value, USDG (trading balance), and previously traded tokens. If the wallet is unfunded it says so and includes the funding address.
No parameters.
get_limits
Current policy: per-tier rules, market-hours behavior, the rolling 24h budget, and how much of it is used.
No parameters.
get_trade_history
Recent trades and transfers, newest first, with USD values, tiers, and explorer links.
| Param | Type | Description |
|---|---|---|
limit | number, optional | Max entries, default 20 |