Skip to main content
Glama

toll-plugins

Toll on HEY Research Lab

SDKs, agent plugins and skills for Toll, the safety check for agents on Robinhood Chain (chain id 4663, the only chain Toll reads): who is behind a coin, the dev's record, whether there is a real product behind it, what a transaction, signature or x402 payment does before it is signed (check_tx, ALLOW / WARN / BLOCK), what an ERC-8004 agent's registration and payment terms say, which paid APIs an agent can buy over x402 (find_paid_api), what a Uniswap v4 hook can do (check_hook), and Robinhood Stock Token data (SEC fundamentals, insider trades, 13F holders, earnings guidance, the event feed, US macro), read over Toll's MCP server. Every package exposes the server's tools.

Toll's token is $TOLL on Robinhood Chain: 0xff9e86e6b21fd688027981bee4b64c8b6b804ed3 (site: t0ll.xyz, X: @Tollxyz_).

The line to add it

Where

The line

Claude Code

claude mcp add --transport http toll https://t0ll.xyz/mcp

Claude Desktop, Cursor, Windsurf, Cline (stdio)

{"mcpServers": {"toll": {"command": "npx", "args": ["-y", "@tollxyz/mcp"]}}}

Cursor, VS Code, any client that takes a URL

{"mcpServers": {"toll": {"type": "http", "url": "https://t0ll.xyz/mcp"}}}

ElizaOS

plugins: ["@tollxyz/plugin-elizaos"]

Coinbase AgentKit

AgentKit.from({ walletProvider, actionProviders: [tollActionProvider()] })

GOAT

getTools({ wallet, plugins: [toll()] })

Vercel AI SDK

generateText({ model, tools: tollTools(), prompt })

LangChain JS / LangGraph

createAgent({ model, tools: tollTools() })

Mastra

new Agent({ id, name, instructions, model, tools: tollTools() })

OpenAI Agents SDK (Python)

MCPServerStreamableHttp(name="Toll", params={"url": "https://t0ll.xyz/mcp"}) in mcp_servers (example)

OpenAI Agents SDK (JS)

new MCPServerStreamableHttp({ url: "https://t0ll.xyz/mcp", name: "Toll" }) in mcpServers (example)

CrewAI

MCPServerAdapter({"url": "https://t0ll.xyz/mcp", "transport": "streamable-http"}) as the agent's tools (example)

OpenClaw

openclaw mcp add toll --url https://t0ll.xyz/mcp --transport streamable-http, plus the skill

Hermes agent

mcp_servers: { toll: { url: "https://t0ll.xyz/mcp" } } in ~/.hermes/config.yaml, plus hermes skills install https://t0ll.xyz/skill.md

Any agent that reads skills

https://t0ll.xyz/skill.md (source)

Related MCP server: hood-mcp

Building on Hookr

Hookr is a Uniswap v4 hook builder and launchpad on Robinhood Chain. Its own MCP server (https://hookr.fun/api/mcp) builds unsigned calls; Toll checks each one before the wallet signs.

  1. Build the call with Hookr's MCP for your wallet: hookr_build_swap, hookr_build_launch, hookr_build_claim, hookr_build_agent_link, hookr_build_fill, or the liquidity builders (hookr_build_add_liquidity, hookr_build_remove_liquidity, hookr_build_collect_fees).

  2. Check it: pass what Hookr returned (to, data, value) to check_tx with from set to that wallet.

  3. Sign only on ALLOW. Pass every warning on; on BLOCK do not sign without the user's say.

What check_tx reads of those calls: HookrRouter swaps, HookrLauncher launches (the token, the pools, who holds the liquidity, a dev buy), a launch's own withdrawal and fee collection, a pool core's claim, the Agent gate link and the order book fill. Each is named as Hookr's contract, not audited. An unknown hook, rules contract or add-on, or a payout to anyone but from, is a warning. Any other function of those contracts is undecoded: WARN, never ALLOW.

Hookr's root hook: check_hook 0x89c9fb50d1f03192230ffb1c279bb6e7d3fe6acc. Steps: https://t0ll.xyz/hooks/hookr#agents

Sell over x402: the Toll facilitator

Toll runs an x402 facilitator for USDG on Robinhood Chain at https://x402.t0ll.xyz: keyless, free, no account. Before it settles, it checks the payTo against the seller's ERC-8004 identity (ERC-8478), and every settlement comes back with a Toll-signed EIP-712 receipt (who paid whom, how much, which transaction, what the payee check said).

What it does (its /supported lists them):

  • Schemes: exact (EIP-3009 transferWithAuthorization) and upto (Permit2 through the x402UptoPermit2Proxy 0x4020a4f3b7b90cca423b9fabcc0ce57c6c240002: the buyer signs a ceiling, the seller charges what was used), both on eip155:4663 USDG.

  • Payee check (erc8478, enforced): payTo must be the agentWallet the seller's ERC-8004 identity registered.

  • Signed receipt (toll-receipt) with every settlement.

  • Builder code (builder-code, ERC-8021): each settlement's calldata names who settled it and, when the seller sends its app code in the 402 (extensions["builder-code"].info.a, ^[a-z0-9_]{1,32}$; appCode in @tollxyz/x402-seller), the app that sold it.

  • Safety screen (toll-screen): every /verify and /settle answer carries extensions.screen = { outcome: "allow" | "warn" | "block" | "not-read", codes }, check_tx's word on the payment, for the seller (payment.screen and settlement.screen in @tollxyz/x402-seller, screenOf() in @tollxyz/sdk).

  • Discovery (x402 bazaar): GET /discovery/resources?type&payTo&operator&limit&offset and GET /discovery/search?query= list the paid APIs an agent can buy on Robinhood Chain, verified payTo first; also the find_paid_api MCP tool, findPaidApis() / find_paid_apis() in the SDKs and https://t0ll.xyz/x402/discover. A seller is listed once a payment settles with the bazaar extension (bazaar in @tollxyz/x402-seller).

  • Paid before: GET /paid?payer=&payTo=[&resource=][&since=] answers { paid, count, last: { tx, ts, amount, receiptId, via }, network, sources }: whether a wallet already paid a seller through the facilitator (settlements, escrow captures, batch charges), facts already public on chain. With x402 sign-in-with-x a seller lets a returning wallet in without a second charge (paidBefore() in @tollxyz/x402-seller and @tollxyz/sdk, paid_before() in toll-sdk).

  • Seller-signed receipts (x402 offer-receipt): a payment carrying extensions["offer-receipt"] gets extensions["toll-offer-receipt"] = { offer, receiptPayload } in the settle answer: the seller's signed offer checked (facts, never a refusal) and the spec's receipt payload for the seller to sign with its own key (domain x402 receipt / 1 / chainId 1); /receipt/<id or tx> carries it as offerReceipt on a settled row. Toll never signs the spec's receipt (it attests delivery). signReceipt in @tollxyz/x402-seller signs it and returns it to the buyer as extensions["offer-receipt"].info.receipt; receiptTypedData() in the SDKs.

  • Per-payer budgets (live since 2026-11-11): a payer signs its own spending limits (EIP-712 Budget, domain Toll Facilitator Budget / 1 / 4663: perPayment, perDay, per-payTo day caps, allowed payTos, expiry) with POST /budget, reads them with GET /budget?payer=, and /verify and /settle refuse any payment past them, across every scheme. budgetTypedData(), setBudget(), revokeBudget(), getBudget() in the SDKs; guardBudget() in @tollxyz/guard mirrors guard's caps into one. If budgets are ever switched off the facilitator answers 404 budgets_off.

Start from the template: npx degit t0ll-xyz/toll-plugins/templates/x402-starter my-api (templates/x402-starter, a Next.js API with one paid route). Or add @tollxyz/x402-seller: export const GET = paywall({ payTo, price: "0.05", agentId }, handler). With another x402 library, point your server at the facilitator URL and name USDG and its signing domain explicitly (most x402 libraries have no default for chain 4663):

{
  "scheme": "exact",
  "network": "eip155:4663",
  "asset": "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168",
  "amount": "50000",
  "payTo": "0xYourAgentWallet",
  "maxTimeoutSeconds": 300,
  "extra": {
    "name": "Global Dollar",
    "version": "1",
    "erc8004": { "registry": "eip155:4663:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432", "agentId": "<your agent id>" }
  }
}

Endpoints: /verify, /settle, /supported, /stats, /receipt/<id or tx>, /discovery/resources, /discovery/search, /paid, /budget. Its limits (the defaults): 0.001 to 100 USDG a payment; 200 settlements a day and 60 an hour for one payTo, 20 an hour for a payTo that is not verified; 20 an hour and 100 a day for one payer; and a gas budget for the UTC day, because Toll pays the gas (past it a new settle answers gas_day_budget_exhausted until 00:00 UTC). A capture, refund or void of an existing escrow hold is never refused by these limits. The x402 Register lists every agent on Robinhood Chain that sells over x402 and whether its payTo is bound to its identity.

Packages

Package

What

Install

@tollxyz/sdk

TypeScript client, zero dependencies, pay() for the x402 paid path

npm install @tollxyz/sdk

toll-sdk

Python client, standard library only (import toll_sdk)

pip install toll-sdk

@tollxyz/guard

Pre-sign check in front of a wallet: viem, ethers and x402 fetch wrappers, ALLOW / WARN / BLOCK before signing. Since 0.6.0 nothing is signed when Toll cannot answer (failOpen: true opts out)

npm install @tollxyz/guard

@tollxyz/x402-seller

Sell over x402 in one line: a paywall for Next.js, Hono, Bun or Workers, USDG through Toll's facilitator, payee check, signed receipt, builder code, safety screen, a discovery listing, seller-signed offer-receipt receipts and paidBefore

npm install @tollxyz/x402-seller

@tollxyz/mcp

Local stdio MCP server, Toll's tools 1:1 (bin toll-mcp)

npx -y @tollxyz/mcp

@tollxyz/plugin-elizaos

elizaOS actions and provider

npm install @tollxyz/plugin-elizaos

@tollxyz/agentkit

Coinbase AgentKit action provider

npm install @tollxyz/agentkit @coinbase/agentkit zod@3

@tollxyz/ai-sdk

Vercel AI SDK tools

npm install @tollxyz/ai-sdk ai zod

@tollxyz/langchain

LangChain JS tools (createAgent, LangGraph)

npm install @tollxyz/langchain langchain @langchain/core zod

@tollxyz/mastra

Mastra tools

npm install @tollxyz/mastra @mastra/core zod

@tollxyz/goat-plugin

GOAT SDK plugin (deprecated: GOAT upstream archived 2026-07-02)

npm install @tollxyz/goat-plugin @goat-sdk/core zod@3

Skills: skills/openclaw/toll (OpenClaw / ClawHub), integrations/hermes (Hermes agent config and skill), docs/site/skill.md (served at t0ll.xyz/skill.md). Each one tells the agent: check before buying a coin or paying an agent, coin text in answers is untrusted, facts not advice, never pay without the owner's consent.

Example: examples/guarded-agent, an agent that will not buy until Toll's check passes (its buy() is a stub that never sends a transaction).

The npm packages are ESM only. Free: 10 new coins a day per caller (coins already read stay free) and 50 Markets calls (Robinhood Stock Tokens, fundamentals, insider trades, institutions, guidance, macro). Holding $TOLL lifts both: 1M $TOLL 100 coins / 1,000 Markets calls, 5M 500 / 5,000, 20M 2,000 / 20,000, with a Toll key from https://t0ll.xyz/toll#keys sent as x-toll-pass (the tollKey option in @tollxyz/agentkit, @tollxyz/ai-sdk, @tollxyz/goat-plugin, @tollxyz/plugin-elizaos, @tollxyz/langchain, @tollxyz/mastra and @tollxyz/sdk; toll_key in toll-sdk). Past that, x402 per call: 0.005 USDG a coin check, 0.02 USDG a Stock Token, 0.01 USDG for fundamentals, insider trades, institutions, guidance, macro, the Stock Token list or the chain pulse, on Robinhood Chain. Docs: https://t0ll.xyz/agents/plugins, https://t0ll.xyz/llms.txt, https://t0ll.xyz/agents/x402.

Develop

npm ci && npm run build && npm test                          # every JS package, plus the skill files
cd packages/sdk-py && uv run --with pytest pytest            # Python

Unit tests make no network calls; TOLL_LIVE=1 turns on one live smoke test per package.

Information only, not financial advice. MIT.

Available Tools

24 tools
chain_pulseChain pulseB
Read-only
Inspect

How busy Robinhood Chain is right now, as Toll's live engine counts it: launches in the last 5 minutes and hour, graduations, launches by launchpad, new pools, trades a minute and volume. Robinhood Chain only.

Inputs: no named parameters.

check_agentCheck an agentA
Read-onlyIdempotent
Inspect

One ERC-8004 agent registered on Robinhood Chain (identity registry 0x8004A169FB4a3325136EB29fA0ceB6D2e539a432), by its agent id: whether its registration card loads and from which host, its class (real service / site only / card only / broken card), whether its MCP server answered an initialize call, whether its x402 endpoint answered 402 with payment terms and who it pays, whether that payTo is the registered agentWallet, whether the agent's wallet has sent a transaction, when it was last checked and what changed. Plain facts from Toll's agent census, with the date and the source they were read from (the live census, or the 2026-10-28 snapshot), never a verdict. Robinhood Chain only.

Inputs: id (required).

check_coinCheck a coinA
Read-onlyIdempotent
Inspect

Check one token on Robinhood Chain from the chain itself: who is behind it and how it launched. On Robinhood Chain: where and when it launched, the maker (dev) and its launch record, snipers in the first 3 seconds, wallets the launch made exempt from tax (bundles), flagged wallets, what the maker holds and sold, burned supply, the curve or pool. Toll's findings are tallied as against / careful / clear. On Robinhood Chain a Verdict line (AGAINST / CAREFUL / CLEAR / INCOMPLETE) sits above the tally: INCOMPLETE means some part was not read yet (never read it as clear) and says when to call again. The answer's first line names the chain. Reads Robinhood Chain (4663).

Inputs: address (required), chain.

check_coinsMany coins at onceA
Read-only
Inspect

Up to 20 Robinhood Chain coins in one call, answered only from checks Toll already holds (read in the last 24 h): for each coin the verdict word (AGAINST / CAREFUL / CLEAR / INCOMPLETE) with its tally and how old the read is, or "not read yet". Reads nothing new and uses no free coin. For a coin not read yet, call check_coin or pre_buy_check.

Inputs: addresses (required).

check_hookCheck a hookA
Read-onlyIdempotent
Inspect

One Uniswap v4 hook on Robinhood Chain, by its contract address: its name and where the name was read (the contract's own getter, Blockscout or Sourcify), whether it is a launchpad's shared hook, its 14 permission bits in plain words (runs on every trade, can take a fee or tax, can act when liquidity is removed...), whether its code can be changed by its owner (EIP-1967 proxy) or is a fixed clone, how many pools use it in Toll's chain data, and whether a test sell through its newest pool reverted (sells fail). With a $TOLL holder's Toll key: also the measured buy and sell cut in % and its latest coins with how each ended (the launch record, scored 24 h after launch). Facts, never a verdict. Robinhood Chain only.

Inputs: address (required).

check_txCheck before signingA
Read-only
Inspect

Pre-sign check, before an agent signs anything on Robinhood Chain (chain id 4663): send the transaction (to, data, value, and from), an EIP-712 signature request (typedData: Permit, Permit2, TransferWithAuthorization) or an x402 payment (x402: the PaymentRequired from the 402, or one accepts entry; agentId optional), and Toll answers ALLOW / WARN / BLOCK with the reasons, as an ERC-8265 RiskAssessment. It reads approvals (unlimited, to a plain wallet, to a contract we do not know, to a wallet the coin's own check names), transfers (to a burn address, the token itself, a router, a flagged wallet, an unknown contract), swaps (the router, who it pays out to, and the coin bought, through Toll's coin check: BLOCK only for findings whose coins rugged at 40% or more in our calibration), and x402 payments (ERC-8478 payee verification: payTo against the seller's ERC-8004 agent wallet or a payee delegation it signed, read live from the Robinhood Chain or Base identity registry, with the outcome in x-toll; the seller's last delivery spot-check, the asset and amount). Calldata it cannot read is WARN, never ALLOW; a coin still being read is WARN with the seconds to wait. Robinhood Chain only. Facts, not advice.

Inputs: to, data, from, x402, +6 more.

dev_recordDeployer recordB
Read-onlyIdempotent
Inspect

Every coin one wallet launched on Robinhood Chain. On Robinhood Chain (Pons and Long launchpads): how many, how many graduated from the bonding curve, whether the dev sold, and the latest launches with how each ended. Reads Robinhood Chain.

Inputs: wallet (required), chain.

fresh_launchesNewest coinsA
Read-only
Inspect

The newest coins launched on Robinhood Chain, newest first, from Toll's live engine: launchpad, age, pair, and the engine's short notes on each (dev record, first buyers, buyers, curve), with a link to the full check. At most 20. Robinhood Chain only.

Inputs: limit.

fundamentalsCompany fundamentalsA
Read-only
Inspect

The company numbers behind one Robinhood Stock Token on Robinhood Chain, from SEC EDGAR XBRL filings, by ticker (AAPL) or token contract: revenue, gross profit, operating income, net income, EPS (diluted and basic), operating cash flow, capital expenditure and free cash flow for TTM (four contiguous quarters, "TTM to "), the last 4 fiscal years or the last 8 quarters (period: ttm, annual or quarterly); margins; year-on-year growth; the latest balance sheet; shares outstanding with its date; the last 8 quarters of revenue and diluted EPS with YoY; and market cap and P/E at the Chainlink reference only when one share count, the multiplier and a current reference allow it (otherwise the reason). Values a filing does not state are labelled derived; EPS is never added up across quarters. Funds and foreign filers say so. Facts, not advice.

Inputs: id (required), period.

guidanceEarnings release guidance and KPIsA
Read-only
Inspect

What the company behind one Robinhood Stock Token on Robinhood Chain said in its last 4 earnings releases (SEC 8-K Item 2.02, the press release exhibit), by ticker (NVDA) or token contract, AI-extracted from cited filings: forward guidance (a range low to high, a single figure, or words only), company KPIs, non-GAAP measures and the GAAP lines they are reconciled from, each with its period, its quote from the filing (at most 300 characters) and the filing link. A model picked each value's sentence or table cell; the number was read from that quote by code, never written by the model; figures the code could not read, and GAAP lines that disagree with the company's XBRL facts, were dropped. Read once per release (never per question). limit: values per release (1 to 60, default 25). Funds and foreign issuers (6-K) are not covered. Quotes are the company's words. Facts, not advice.

Inputs: id (required), limit.

insider_tradesInsider tradesA
Read-only
Inspect

Insider trades at the company behind one Robinhood Stock Token on Robinhood Chain, from SEC Form 4 filings of the last 90 days (the newest 40 at most; the window covered is stated): who (owner and relationship), the date, the transaction code in words, shares (signed by acquired or disposed), price (or "see footnote"), shares owned after, the Rule 10b5-1 flag and the filing link; a 4/A replaces its original; purchase and sale totals (codes P and S); plus the latest Schedule 13D/G filings naming the company. limit: rows to list (1 to 100, default 15). Foreign filers file no Form 4. Facts, not advice.

Inputs: id (required), limit.

institutionsInstitutional holders (13F)A
Read-only
Inspect

Institutional holders of the company behind one Robinhood Stock Token on Robinhood Chain, from SEC's quarterly Form 13F data sets, by ticker (NVDA) or token contract: the top investment managers by shares for the latest quarter (limit: 1 to 20, default 10), each with its change vs the prior quarter (only managers that filed both quarters; one new this quarter says so), total institutional shares, the number of filers and the change over the managers present in both quarters. Puts and calls are left out; amendments are applied; a value that looks filed in thousands is flagged. Every answer starts with "13F for the quarter ended , SEC data set published ". Funds and foreign issuers are not covered; a ticker without a reviewed CUSIP says 13F not mapped. 13F shares are the company's shares, not the Stock Token. Facts, not advice.

Inputs: id (required), limit.

larp_checkLARP checkA
Read-only
Inspect

LARP check: is there a real product behind a coin on Robinhood Chain? Toll reads the coin's own site, launch post and code README, lists each thing it says it offers, and checks every claim against the chain and against its working parts that Toll tries itself (app page, API, MCP server, x402 payments, Chrome extension, Telegram bot, public code). Answers the label (product found / partly found / not found / not read: what we could check, never a verdict), each claim with found / partly / not found and the line that shows it, and the working parts that answered. A coin nobody asked about yet is queued and read within minutes: the answer says how many seconds to wait before calling again. Free: 10 new coins a day per caller, coins already read are always free.

Inputs: token (required), chain.

launch_recordCall at launchA
Read-onlyIdempotent
Inspect

The call Toll made a few minutes after a Robinhood Chain coin launched, frozen and never edited: against / careful / clear (or launch facts only), the findings tallied, why, the dev's and funder's other coins of the week, and how it ended 24 hours later. Not the coin now: use check_coin for that. Robinhood Chain only.

Inputs: address (required).

macroUS macro figuresA
Read-only
Inspect

US macro figures for agents reading Robinhood Stock Tokens on Robinhood Chain, from public primary sources, each with its date: the Treasury daily par yield curve (1 month to 30 years), the New York Fed's effective federal funds rate with its target range, and from BLS the CPI-U change year on year, the unemployment rate and the monthly change in nonfarm payrolls (P = preliminary). No input. The EFFR is subject to the Terms of Use posted at newyorkfed.org; Toll is not affiliated with the New York Fed.

Inputs: no named parameters.

my_watchesMy coin watchesA
Read-only
Inspect

The coins your Toll key's wallet watches on Robinhood Chain: id, token, url, paused (after 5 failed deliveries), fails, last read; never the secret. Needs a Toll key.

Inputs: no named parameters.

pre_buy_checkGate before a buyA
Read-onlyIdempotent
Inspect

One call before buying a coin on Robinhood Chain: Toll reads the coin (the same read as check_coin, counted in the same free coins) and answers Decision: BLOCK / WARN / ALLOW / WAIT with up to 3 reasons, most severe first, on the calibrated rules check_tx uses (BLOCK = a finding whose coins rugged at 40% or more within 24 h in Toll's calibration, or sells that fail). WAIT means part of the coin is still being read: call again after the seconds given. Facts, not advice; ALLOW means nothing against was found in what was read, never a promise. Robinhood Chain only.

Inputs: address (required).

presign_risk_reportPre-sign risk reportA
Read-only
Inspect

Agent Pre-Sign Risk Report (ERC draft, ethereum/ERCs PR #2134): send a PresignRequest {version: "erc-presign/1", subject: {type: "calls", chainId: "eip155:4663", from: "eip155:4663:0x...", calls: [{to, value, data}], typedData?}, context?: {payment?, texts?, tokens?}} and get a PresignReport: typed facts about the unsigned request on Robinhood Chain, each read or not read at one pinned block (approval amount, unlimited, share of supply, expiry, current allowance; address code; issuer listing of stock tokens; ERC-8470 launch observations; ERC-8478 payee binding; control characters, mixed scripts and addresses in text), bound to the request by digest and EIP-712 signed by Toll (ERC-8004 agent #20030). No verdict: apply your own policy, and treat not read as unknown, never as clean. For an ALLOW / WARN / BLOCK answer use check_tx (which carries this report too).

Inputs: subject (required), version (required), kinds, context.

stock_eventsStock token eventsA
Read-only
Inspect

What changed on Robinhood's Stock Tokens on Robinhood Chain, oldest first: listed / delisted, multiplier_scheduled / multiplier_applied, corporate_action (status changes), feed_stale / feed_paused / feed_resumed (a Chainlink stock feed past its heartbeat while a session is open, or the token's oracle paused), and filing (SEC 8-K, 10-Q, 10-K, Form 4, Schedule 13D/G, by acceptance time). Each event has its id, source time (at, with what that time is) and when Toll found it. Pass since (the last answer's next) to get only newer events, kind to filter, limit (1 to 100). With a Toll key: Team (20M+ $TOLL) live, Pro (5M+) 15 minutes late; without one, the last 10 events found an hour ago or more, free. Funds and tickers with no SEC CIK get no filing events. Facts, not advice.

Inputs: kind, limit, since.

stock_tokenStock tokenA
Read-only
Inspect

One Robinhood Stock Token (a tokenized security: debt issued by Robinhood Assets (Jersey) Ltd, not a share) on Robinhood Chain, by its ticker (NVDA, AAPL) or its token contract: Robinhood's listing (company, contract, shares per token and any announced change), Chainlink's reference price read on chain with its age and the US session (stale only past the feed's heartbeat while a session is open), the price in the token's deepest pool priced from the chain and its venue (Uniswap v3 or v4) with its liquidity, the difference vs the reference in percent, supply in shares, whether its oracle is paused, Robinhood's corporate actions (dividends, splits), and the company from SEC EDGAR (CIK, industry, exchange, latest 10-K / 10-Q / 8-K with links). Every number with its source and time; anything not read says so. Facts, not advice.

Inputs: id (required).

stock_tokensStock tokensA
Read-only
Inspect

The Stock Tokens Robinhood lists on Robinhood Chain (about 200): ticker, issuer's name, contract, Chainlink's reference price (or no feed) and its status, with how many have a feed, how many have SEC filings and how many corporate actions fall this month. Pass query (a ticker or part of a company name) to filter, limit for how many. For one token in full use stock_token.

Inputs: limit, query.

unwatch_coinStop watching a coinA
DestructiveIdempotent
Inspect

Remove one of your coin watches on Robinhood Chain by its id (from my_watches). Needs a Toll key.

Inputs: id (required).

wallet_privacyWallet privacy checkA
Read-onlyIdempotent
Inspect

What anyone can learn about a wallet from Robinhood Chain alone: a privacy grade (A to F), a score out of 100, and each leak found (who funded it, linked wallets, holdings, active hours, launches, trading record, linked accounts) with tips. The grade measures what anyone can see, not whether the wallet is good or bad. Robinhood Chain only.

Inputs: wallet (required).

watch_coinWatch a coin (webhook)A
Idempotent
Inspect

Watch one Robinhood Chain coin for your agent: Toll re-reads it about every 10 minutes and POSTs a signed JSON event to your https url when its verdict word changes or a new finding against appears (dev sold, liquidity pulled, wallets dumping together). The first read sends nothing. Answers the watch id and, the first time, the secret that signs every event (x-toll-signature: sha256=<hex HMAC-SHA256(secret, raw body)>). Needs a Toll key; the cap is your tier's (3 / 20 / 50 / 100 by $TOLL held). Facts, not advice.

Inputs: url (required), address (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.6/5.0

    Scored across 24 tools

    Disambiguation4/5

    Most tools target clearly distinct resources or actions: single-coin vs batch-coin reads, stock token vs stock token list, watch lifecycle management, and separate SEC datasets. A few boundaries are blurry: check_coin and pre_buy_check share the same underlying coin read but return facts versus a buy decision, and check_tx and presign_risk_report both cover pre-sign risk with different outputs. The descriptions do enough to disambiguate them.

    Naming Consistency3/5

    The set is mostly readable snake_case, but conventions are mixed: check_coin/check_tx/check_agent, pre_buy_check/larp_check, noun-only tools like institutions, fundamentals, guidance, macro, and verb-led watch_coin/unwatch_coin. It is not chaotic, but there is no single predictable verb_noun pattern across all 24 tools.

    Tool Count3/5

    At 24 tools this is at the upper end of what feels comfortable; the domain is broad enough that each tool has a plausible role, but the surface is heavy. Several adjacent tools could arguably be consolidated or grouped, making the count borderline rather than well-scoped.

    Completeness4/5

    Coverage is strong across coin safety checks, stock-token data, SEC fundamentals/insider/guidance data, macro context, transaction risk, and watch lifecycle management. Minor gaps remain, such as discovery/listing tools for agents and hooks and richer watch administration, but core workflows do not hit dead ends.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      C
      maintenance
      On-chain Solana token safety for trading agents — traces coordinated wallet funding, same-block Jito bundles, serial-rug deployers and live coordinated dumps into one Exit-Liquidity Risk verdict before a swap. Free tier, then $0.02 USDC/query via x402.
      1
      103 npm
      2
      MIT
    • F
      license
      A
      quality
      B
      maintenance
      A zero-config data server for read-only queries on Robinhood Chain (stock tokens, memecoins, launches, chain stats) and an opt-in trading server with spend caps and confirm gates for executing swaps and transfers.
      9
      66 npm
      8
      -