OneSource MCP

io.onesource由 onesource.io 发布v5.24.0更新于 Oct 30, 2026

Blockchain data, Deepstate and Standard Reserve markets, live chain queries, and API docs

发布方自己的服务:Source

概览

AI 生成的概览

OneSource MCP 让助手查询实时 EVM 链上数据、Deepstate 与 Standard Reserve 市场数据,并检索 OneSource REST API 文档,按次付费或使用 API 密钥。

可以做什么
  • 读取代币、NFT 与合约状态:余额、授权额度、总量、持有人、元数据、字节码、代理检测、存储槽
  • 查看链与交易信息:区块详情、链 ID、Gas 估算、nonce、待处理区块、调用模拟、交易回执、事件日志
  • 查询 Deepstate 市场数据:订单簿、成交、K 线、统计、做市商分析、深度历史、2DEEP 迁移数据
  • 读取 Standard Reserve 数据:已验证合约登记表、拍卖、特许权、储备支撑、K 线与决策摘要
  • 检索内置的 OneSource REST API 文档:端点、价格、网络、认证与支付信息
  • 管理支付模式与支付通道、运行配置检查、提交缺陷报告
适用场景
适合需要跨 EVM 网络获取实时链上数据,或需要 Robinhood Chain 上 Deepstate 与 The Standard Reserve 市场与协议分析的场景,无需自行编写 RPC 调用。也适合在集成前查询 OneSource REST API 的端点与价格。
运行要求
通过 npx 以 stdio 本地运行(需 Node.js),也可自托管为 HTTP 服务。区块链工具需要一项凭据:ONESOURCE_API_KEY,或为 Base 上的 x402、Tempo 上的 MPP 准备已充值的钱包私钥。文档与配置工具无需认证。需要能访问 OneSource API 的网络。
安装前请注意
付费工具会花钱:设置 X402_PRIVATE_KEY 或 MPP_PRIVATE_KEY 后服务器会自动签名 USDC 支付,通道模式还会预先锁定一笔押金,需用退款工具取回。钱包私钥属高价值机密,切勿提交到代码仓库。服务器默认发送分析数据,可关闭。缺陷报告会发送到厂商的 Slack 或 GitHub。

安装

在 SourceWeft 中

  1. 打开 控制台中的 OneSource MCP,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

@one-source/mcp

Unified MCP server for OneSource — 91 tools for blockchain data, live chain queries, Deepstate market data, The Standard Reserve, and REST API documentation in a single server.

What is MCP? The Model Context Protocol lets AI assistants call tools and access data sources. This server exposes both the OneSource blockchain API and its documentation as tools.

Quick Start

Claude Code

bash
claude mcp add onesource -- npx -y @one-source/mcp@latest

Claude Desktop / Cursor

Add to your MCP config:

json
{  "mcpServers": {    "onesource": {      "command": "npx",      "args": ["-y", "@one-source/mcp@latest"]    }  }}

Any MCP Client (stdio)

bash
npx -y @one-source/mcp@latest

HTTP Server (self-hosted)

bash
npx -y @one-source/mcp@latest --httpnpx -y @one-source/mcp@latest --http --port=8080

Then connect your MCP client to http://localhost:3000/ (or your --port value, e.g. 8080 in the second example above).

Health check: GET http://localhost:3000/health (substitute your port).

Tools (99)

Blockchain API — Live Chain (12 tools)

ToolDescription
1s_allowance_liveERC20 allowance check
1s_contract_info_liveContract type detection via ERC165
1s_erc1155_balance_liveERC1155 balance via RPC
1s_erc20_balance_liveERC20 balance via balanceOf
1s_erc20_transfers_liveERC20 Transfer logs via eth_getLogs
1s_erc721_tokens_liveERC721 token enumeration
1s_events_liveEvent logs via eth_getLogs
1s_multi_balance_liveETH + multiple ERC20 balances
1s_nft_metadata_liveNFT metadata via tokenURI
1s_nft_owner_liveNFT owner via ownerOf
1s_total_supply_liveToken total supply
1s_tx_details_liveTransaction + receipt via RPC

Blockchain API — Chain Utilities (13 tools)

RPC only.

ToolDescription
1s_block_by_numberBlock details by number via RPC
1s_block_numberLatest block number
1s_chain_idEIP-155 chain ID
1s_contract_codeContract bytecode
1s_ens_resolveENS name/address resolution
1s_estimate_gasGas estimation
1s_network_infoChain ID, block number, gas price
1s_nonceTransaction count
1s_pending_blockPending block from mempool
1s_proxy_detectProxy contract detection
1s_simulate_callSimulate eth_call
1s_storage_readRead storage slot
1s_tx_receiptTransaction receipt

Payments (2 tools)

ToolDescription
1s_payment_modeView or switch the payment rail + scheme across all four modes: x402-exact / x402-batch (USDC on Base) and mpp-charge / mpp-session (USDC.e / pathUSD on Tempo). batch and session open a channel that funds many calls.
1s_refundReclaim an open payment channel's unspent deposit on demand — works for both an x402 batch channel (Base) and an MPP session voucher channel (Tempo)

Deepstate Market Data (10 tools)

Deepstate is an on-chain order-book protocol on Robinhood Chain (chain 4663). These tools read market data — order books, trades, candles, stats, maker analytics, and gas/depth analytics. They're ordinary tools on the same API and take no network parameter — always Robinhood Chain — and are paid like every other tool: API key, x402, or MPP. Since the DGP-3 migration (2026-09-22), maker rewards are per-market rather than a single fixed token — always check a market's reward_token on 1s_ds_markets rather than assuming DEEP.

ToolDescription
1s_ds_marketsList the Deepstate markets (order books) this API serves, with each market's slug, token layout, pool/router addresses, status, and reward_token
1s_ds_bookOrder-book snapshot for a market — bids descending, asks ascending, with each price level's resting size
1s_ds_tradesTrade tape for a market, newest first — each fill's price, size, side, and block
1s_ds_candlesOHLCV candles for a market at a given timeframe
1s_ds_statsRolling 24h / 7d / 30d volume and price change for a market, plus the latest traded price
1s_ds_makersPer-maker analytics for a market — time at top of book, resting notional, fill count/rate, and maker rewards earned (reward token is per-market — see reward_token on 1s_ds_markets)
1s_ds_cost_to_quoteGas spent resting and cancelling orders on a market, bucketed over time
1s_ds_depth_historyDepth heatmap for a market — resting order size by price level over time
1s_ds_token_2deep2DEEP supply, cap, float, reward pool and endowment balances, migration liabilities, and pool price — live from chain
1s_ds_migrationDEEP/STATE-to-2DEEP redemption progress since DGP-3 (2026-09-22): totals, counts, remaining, and a daily series

Every Deepstate tool except 1s_ds_markets takes a book parameter: the market's canonical uppercase slug (e.g. NVDA-USDG) or its 32-byte book_id. Call 1s_ds_markets first for the full list.

The Standard Reserve (51 tools)

The Standard Reserve is an on-chain central-bank protocol on Robinhood Chain (chain id 4663). These tools read the deployed contracts' state as indexed and served by OneSource, with basis, as_of_block, and serving_state on every response. 1s_std_addresses and 1s_std_genesis_live are free; every other tool here is paid the same way as the rest of this API: API key, x402, or MPP. Several tools (1s_std_supply, _vaults, _pool, _exit_pressure, _backing, _policy_current) also take an atBlock param to read that state as of a past block instead of the latest one.

ToolDescription
1s_std_addressesVerified registry of TSR contracts and pool, with a verification status per entry. Free, no payment required.
1s_std_auction_daysPer-day auction history for the license or charter auction: open/floor/close price, sold vs. offered, time to sell out; license days add purchase counts, distinct charters, average and total paid, and a purchases-per-transaction breakdown
1s_std_auction_salesRecent sales for the license or charter auction, newest first: buyer, unit price, count, and block. Filter by kind, page with before/limit
1s_std_auctions_currentCurrent state of the daily license auction and charter auction: price, floor, sold/remaining today, phase, and last sale
1s_std_backingReserve backing: vault ETH balances, reserve-asset holdings, the vault's Uniswap v4 positions, and ETH backing per STANDARD in three variants: vault ETH only, with protocol-owned liquidity added, and with all reserve assets added at the Reserve's own pool prices (USDG at $1). Current, history, or as of a past block
1s_std_branch_auction_liveRaw head-fresh state of the Branch license auction: phase, price, today's sold/remaining counts, and recent sale velocity
1s_std_branches_doiDays of Issuance for the Branch license auction, plus a buy-now-vs-wait table
1s_std_branches_summarySummary across TSR's active Branches: count, issuance per Branch per day, and license price in days of issuance
1s_std_buyback_readinessContraction-vault buyback-tick readiness: this tick's ETH capacity, binding constraint, cooldown, TWAP deviation, and recent executed ticks
1s_std_candlesOHLC price candles for the ETH/STANDARD pool in ETH per STANDARD, with swap counts and volume. Set tf for candle width (1m to 1d) and from/to for the window
1s_std_charterOne charter by id, or charters filtered by owner: holder, branch count, mint kind, owed production, branch history, its share of the one-time charter stimulus (claimable by the charter's owner until a deadline returned in the response), and its share of each launchpad charter drop
1s_std_decision_branchComposite: should I buy a Branch/license right now. Bundles Days of Issuance, license cost vs. the charter auction, recent auction history, policy outlook, pending governance changes, and what a branch earned in past launchpad charter drops (history, not a forecast)
1s_std_decision_bidComposite: when would a standing license-auction bid at this max price be reached, how many bids and licenses are ahead of it, and (with charter_id) whether that charter's pending STANDARD and caps cover it. Fill is a separate transaction anyone may send; the response states that and the measured fill history. Takes max_unit_price; count and charter_id optional
1s_std_decision_charterComposite: should I buy into a new charter right now. Bundles charter-auction state, license-cost cheapest path, Days of Issuance, backing ratio, holder concentration, and what a branch earned in past launchpad charter drops (history, not a forecast)
1s_std_decision_exitComposite: should I exit a charter's branches right now. Bundles the exit quote, fee curve, fee forecast, tax schedule, pool state, policy outlook, pending governance changes, the unclaimed stimulus a full exit forfeits, and the charter drops closing would release, with a noteOwner warning
1s_std_decision_holdComposite: should I keep holding STANDARD. Bundles the policy outlook, issuance runway, pending governance changes, tax schedule, buyback readiness, and dormancy state; takes no arguments
1s_std_decision_planSimulate three Branch-buying strategies (keep, selective, aggressive) over a horizon, seeded from live prices, issuance, and license cost unless overridden. With a charter id, launchpad drop shares appear beside the strategies and outside every ETH result. A planning tool, not a forecast: it never names a winning strategy
1s_std_decision_sbillComposite: what should I do with this S-Bill. Before maturity: the exit payout now, the premium given up, and the exit fee on each coming day if nobody else exits (derived). After maturity: the redeem payout and what a roll would lock (derived), and the note that there is no auto-roll. Takes bill_id
1s_std_decision_stakeComposite: should I stake this STANDARD in an S-Bill now, or wait. Bundles the S-Bills quote, caps checked against the wallet, the exit fee right after depositing, and the rate over 1h/6h/24h if nobody else deposits (derived). Takes amount; wallet is optional
1s_std_dormancyWallets past their reportable dormancy window, or the full tracked wallet list
1s_std_dormancy_bountiesDormancy bounty board: wallets already past their reportable window, ranked by estimated bounty
1s_std_epochsTSR epoch history: net flow, signal, regime, multiplier, and issuance per epoch. Page with before/limit
1s_std_eventsRaw decoded protocol events, optionally filtered by contract_label, event_name, addresses, token_id, epoch, or block/log cursor, and paginated with before/limit
1s_std_exit_fee_curveHow the exit fee changes with withdrawal size: current fee rate plus a ladder at 1/5/10/25/50/100% of a gross withdrawal
1s_std_exit_fee_forecastCurrent-pace projection of the exit fee if no more withdrawals happen, day by day, plus days until the fee reaches its floor and the exact instant each recorded withdrawal day leaves the fee window
1s_std_exit_pressureExit-pressure reading and the resulting resolution fee rate. Current, history, or as of a past block
1s_std_exit_quotePro-rata exit quote for retiring a charter's open Branches, plus a realizable-ETH estimate as of a given block
1s_std_flow_chartersETH/STANDARD pool buys and sells grouped by wallets that held a Charter when each swap happened. Set hours and limit for the result window
1s_std_flow_hourlyHourly ETH flow into and out of the ETH/STANDARD pool, with swap counts. Set hours for how far back to look
1s_std_genesis_liveHead-fresh stats for the genesis Dutch mint: phase, minted, remaining, price, and sale velocity. Free.
1s_std_governance_changesGovernance/param-change history across TSR's 15 tracked contracts, what's currently queued, switch states, and guardian pause state
1s_std_holders_concentrationCharter/Branch ownership concentration: distribution across Charters, top owners, an HHI (Herfindahl-Hirschman Index) score, and the genesis-vs-auction cohort split
1s_std_issuance_runwayCumulative STANDARD issued against the Central Bank's issuance budget, current stream rate, and a same-state projection of when the budget runs out
1s_std_license_bidsEvery standing bid on the license auction, read at one block: bidder, count, max unit price, whether the contract can fill it, what blocks each bid, stale or prunable flags, and a derived effective crossing price. Filter by charter, bidder or fillable, and sort
1s_std_license_costWhat a Branch license costs in ETH right now, and whether the charter auction is a cheaper path to the same outcome
1s_std_license_headroomHow many more Branch licenses a charter can still buy today, with a live per-unit quote ladder
1s_std_policy_currentCurrent epoch's monetary policy: regime, multiplier, net flow, and the two-epoch signal. Current or as of a past block
1s_std_policy_outlookSame-state projection of the policy multiplier and issuance rate if the current epoch's net-flow sign holds to close
1s_std_poolLatest ETH/STANDARD Uniswap v4 pool state: price, tick, liquidity, reserves, and remaining launch tax. Current or as of a past block
1s_std_protocol_flowsMoney movements by the protocol, newest first: holdings migrated, taxes forwarded, fees recycled, team claims, POL buybacks, fees and pairings, incentive sends, and outflows from the multisig-held reserve vault with the method that moved them and a to_label naming the recipient. Filter with kind, page with cursor
1s_std_sbills_billsOne S-Bill by id, or S-Bills filtered by owner or status: principal, premium, locked rate, maturity, and how each closed. The single-bill form also returns a live exit and redeem quote
1s_std_sbills_currentS-Bills staking terms right now: the per-term rate and its simple APR, drift state, locked principal, premium budget, caps, and the early-exit fee window. Rates are per term, not annual
1s_std_sbills_eventsDecoded S-Bills contract events, newest first: deposits, early exits, redemptions, rolls, settlements, bonus distributions, rate changes, and admin changes
1s_std_sbills_quoteLive quote for staking STANDARD into an S-Bill: the rate you'd lock, the premium escrowed, the rate after your deposit, and whether caps or a pause would block it. Read straight from the contract
1s_std_sbills_rate_historyHow the S-Bill rate has moved: every on-chain rate change plus periodic drift samples, each tagged with the term length in force at the time
1s_std_supplySTANDARD supply ledger: circulating, cumulative minted, cumulative burned by path, max supply, and the unclaimed charter stimulus (null for past blocks). Current, history, or as of a past block
1s_std_tax_scheduleLaunch tax-hook schedule: current buy/sell tax, decay configuration, and a labeled projection while the launch schedule is active
1s_std_vaultsExpansion and Contraction vault balances: WETH and STANDARD held, protocol-owned liquidity, and buyback capacity. Current, history, or as of a past block
1s_std_walletOne wallet's full TSR position across every Charter it holds: pending owed, a summary exit quote, dormancy status, license headroom, claimable charter stimulus, and claimable and locked charter drops

Documentation (8 tools)

No authentication required. These answer from a documentation corpus bundled with the server, so they cost nothing and work even before a payment method is configured. They share their names with the standalone @one-source/docs-mcp server, which serves the same corpus.

ToolDescription
1s_search_docsKeyword search across the OneSource developer documentation
1s_get_api_overviewWhat the REST API covers — operation count, tags, networks, payment protocols
1s_list_endpointsEvery REST endpoint with method, path, price, and summary; filter by tag
1s_get_endpoint_referenceOne endpoint in full — parameters, request body, example response, price, curl
1s_search_use_casesFind the right endpoint from a plain-language description of the task
1s_list_networksNetworks the REST API routes, as declared by its published spec
1s_get_payment_infoPrice range, payment rails, and pay-to address; per-endpoint when given one
1s_get_authentication_guideHow to authenticate to the REST API and which method to choose

Setup & Ops (3 tools)

No authentication required.

ToolPurposeWhen to use
1s_setup_checkInteractive setup & health check. Walks the user through every configuration choice for both rails (auth method, x402, MPP, payment modes, channel prefs) one decision at a time — every run, even when already configured — plus version, auth status, channel status, and connectivityFirst thing to call — to set up, change configuration, or troubleshoot
1s_batch_configView or change payment-channel preferences (autonomy, threshold, x402 deposit multiplier, MPP session deposit cap, default mode) and persist them across restarts — no config editing requiredConfigure channel behaviour from the session
1s_report_bugReport bugs to Slack (or GitHub Issues fallback)When a tool errors or user wants to report an issue

Networks

All blockchain API tools accept an optional network parameter:

NetworkDescription
ethereumEthereum mainnet (default)
sepoliaEthereum Sepolia testnet
robinhoodRobinhood Chain, chain 4663 (Arbitrum Orbit L2) — live-RPC only

Authentication

Blockchain API tools require authentication. Three options are available — if an API key is set alongside a wallet key, the API key takes priority and the wallet is ignored.

Tip: the fastest way to configure any of these is the 1s_setup_check tool — it walks you through every option interactively and hands you a ready-to-run command, so you never have to hand-edit env vars or config files. The manual instructions below are the reference.

MethodVariableDescription
API keyONESOURCE_API_KEYUnlimited calls, no per-call cost
x402 micropaymentsX402_PRIVATE_KEYPay-per-call via USDC on Base, no account required
MPP micropaymentsMPP_PRIVATE_KEYPay-per-call via USDC.e / pathUSD on Tempo, no account required

Option 1: API Key

  1. Go to app.onesource.io and create an account.
  2. Complete the API key subscription through Stripe checkout.
  3. Navigate to API Keys and generate a key.
  4. Copy the key — it starts with sk_.
Claude Code
bash
claude mcp add onesource -e ONESOURCE_API_KEY=<key> -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor

Add the env block to your MCP config:

json
{  "mcpServers": {    "onesource": {      "command": "npx",      "args": ["-y", "@one-source/mcp@latest"],      "env": {        "ONESOURCE_API_KEY": "<key>"      }    }  }}
Any MCP Client (stdio)
bash
ONESOURCE_API_KEY=<key> npx -y @one-source/mcp@latest

After adding, reload the MCP server and call 1s_setup_check — under Current configuration it should report Active auth method: API key (with the first 6 characters of your key).

Option 2: x402 Micropayments

Blockchain API endpoints are priced in USDC on Base via x402. When you set X402_PRIVATE_KEY, the server automatically handles payments — tool calls are paid and retried transparently without any extra work from the agent.

  1. Get an EVM private key — export one from MetaMask, Coinbase Wallet, or any EVM wallet, or generate a fresh one. The key is a 64-character hex string. The 0x prefix is optional — both formats are accepted.
  2. Pass the key to the server using one of the methods below.
  3. Reload and find your wallet address — reload the MCP server, then call 1s_setup_check. Under Current configuration it lists your x402 (Base) wallet — the address derived from your key.
  4. Fund that address with USDC on Base — send USDC to the address shown in 1s_setup_check, on the Base network. A few dollars ($1–5 USDC) is enough for hundreds of calls. If your USDC is on Ethereum mainnet, bridge it using the Base Bridge.
  5. Verify — call 1s_network_info for ethereum. If it returns chain data (block number, gas price), x402 payments are working end-to-end.
Claude Code
bash
claude mcp add onesource -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor

Add the env block to your MCP config:

json
{  "mcpServers": {    "onesource": {      "command": "npx",      "args": ["-y", "@one-source/mcp@latest"],      "env": {        "X402_PRIVATE_KEY": "<key>"      }    }  }}
Any MCP Client (stdio)
bash
X402_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest

Option 3: MPP Micropayments (Tempo)

Blockchain API endpoints can also be paid on the Tempo network via MPP — an alternative to x402 on Base. When you set MPP_PRIVATE_KEY, the server handles payments automatically; tool calls are paid and retried transparently.

  1. Get an EVM private key — same format as x402 (64-char hex, 0x optional). Export one or generate a fresh key.
  2. Pass the key to the server using one of the methods below.
  3. Reload and find your wallet address — reload the MCP server, then call 1s_setup_check. Under Current configuration it lists your MPP (Tempo) wallet — the address derived from your key.
  4. Fund that address with USDC.e or pathUSD on Tempo — a few dollars covers hundreds of calls.
  5. Verify — call 1s_network_info. If it returns chain data, MPP payments are working end-to-end.
Claude Code
bash
claude mcp add onesource -e MPP_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest
Claude Desktop / Cursor
json
{  "mcpServers": {    "onesource": {      "command": "npx",      "args": ["-y", "@one-source/mcp@latest"],      "env": {        "MPP_PRIVATE_KEY": "<key>"      }    }  }}
Any MCP Client (stdio)
bash
MPP_PRIVATE_KEY=<key> npx -y @one-source/mcp@latest

By default MPP pays per call (mpp-charge). For a burst of calls, switch to a Tempo voucher channel with 1s_payment_mode { "mode": "mpp-session" } (or set MPP_PAYMENT_MODE=session) — one deposit funds many off-chain calls; reclaim the unspent balance any time with 1s_refund, or it settles automatically on clean shutdown.

Config File Locations

If you prefer editing the config file directly instead of using CLI commands:

ClientConfig file path
Claude CodeRun claude mcp get onesource to see the file path
Claude Desktop (macOS)~/Library/Application Support/Claude/claude_desktop_config.json
Claude Desktop (Windows)%APPDATA%\Claude\claude_desktop_config.json
Cursor (macOS)~/.cursor/mcp.json
Cursor (Windows)%USERPROFILE%\.cursor\mcp.json

Add the onesource entry inside "mcpServers" using the JSON block shown above.

Alternative: Set as an Environment Variable

Instead of the env config block, you can set any of these variables as a shell or system environment variable: export ONESOURCE_API_KEY=<key> (bash/zsh) or $env:ONESOURCE_API_KEY = "<key>" (PowerShell). Set it at the OS level for persistence across sessions.

Payment channels (optional)

By default each paid call signs one payment per call (x402-exact on Base, mpp-charge on Tempo). For a burst of calls, open a payment channel — one on-chain deposit funds many off-chain calls, settled together — which is cheaper than paying per call:

  • x402 (Base): switch to x402-batch with 1s_payment_mode { "mode": "x402-batch" } (or X402_PAYMENT_MODE=batch). The first call deposits price × X402_DEPOSIT_MULTIPLIER (default 10).
  • MPP (Tempo): switch to mpp-session with 1s_payment_mode { "mode": "mpp-session" } (or MPP_PAYMENT_MODE=session). The first call deposits up to MPP_MAX_DEPOSIT (default 1).

Reclaim the unused balance any time with the 1s_refund tool (works for both rails); the residual is always recoverable on-chain. An idle x402 channel also auto-refunds after a few hours, and an MPP session settles automatically on clean shutdown.

When paying via a wallet, the agent receives channel guidance in its system prompt at startup, so it can manage this for you rather than leaving it as a manual step: when it anticipates a burst of calls it offers to switch to the channel mode for the active rail and reminds you to 1s_refund when finished. Control how proactive it is with X402_BATCH_PROMPT (ask / auto / off) and X402_BATCH_THRESHOLD (how many anticipated calls count as a burst — shared across both rails) — see Environment Variables. 1s_setup_check reports your current mode, whether the channel is available, and all settings.

Security

Never commit keys to source control. Use environment variables, a .env file (excluded from git), or a secrets manager.

After any config change: Run /reload-plugins in Claude Code, or restart Claude Desktop / Cursor. The MCP server must be reloaded to pick up new environment variables.

Environment Variables

Required

Set one to access the blockchain API tools. Without any, only the no-auth Setup & Ops tools work. The API key takes priority when set alongside a wallet key.

VariableDefaultDescription
ONESOURCE_API_KEY—OneSource API key for Bearer token auth. Takes priority over the wallet rails.
X402_PRIVATE_KEY—EVM private key (64-char hex, 0x prefix optional) for automatic x402 USDC payments on Base.
MPP_PRIVATE_KEY—EVM private key for automatic MPP payments (USDC.e / pathUSD) on Tempo.

Optional / Advanced

All have sensible defaults — channel modes run out of the box. Set these only to override an endpoint, tune how channel modes behave, or adjust analytics. Payment modes can also be switched at runtime with the 1s_payment_mode tool. The channel knobs below (X402_PAYMENT_MODE, X402_DEPOSIT_MULTIPLIER, MPP_PAYMENT_MODE, MPP_MAX_DEPOSIT, X402_BATCH_PROMPT, X402_BATCH_THRESHOLD) can be set and persisted from a session with the 1s_batch_config tool — no config editing or restart required; a saved config takes priority over these env vars.

VariableDefaultDescription
ONESOURCE_BASE_URLhttps://api.onesource.ioAPI base URL.
X402_PAYMENT_MODEexactInitial x402 scheme: exact (per-call) or batch (payment channel). Switch in-session with 1s_payment_mode.
X402_RPC_URLBase defaultBase RPC endpoint used to submit channel deposits in batch mode.
X402_DEPOSIT_MULTIPLIER10Batch mode: deposit = price × this multiplier, funding that many calls per channel. Unused balance is reclaimable via 1s_refund.
X402_CHANNEL_DIR—Directory to persist batch channel state across restarts. Unset = in-memory (channel lost on restart).
X402_CHANNEL_SALTzeroBatch mode: 32-byte hex salt to derive the starting channel id. The client auto-rotates to the next salt when a channel is exhausted or refunded.
MPP_PAYMENT_MODEchargeInitial MPP scheme: charge (per-call) or session (Tempo voucher channel). Switch in-session with 1s_payment_mode.
MPP_MAX_DEPOSIT1Session mode: max USDC.e / pathUSD locked per Tempo voucher channel. Unused balance is reclaimable via 1s_refund.
MPP_RPC_URLTempo defaultTempo RPC endpoint used to submit channel deposits in session mode.
X402_BATCH_PROMPTaskHow the agent handles switching to a channel mode (both rails): ask (confirm before switching), auto (switch on its own), or off (only switch when explicitly asked).
X402_BATCH_THRESHOLD5Number of anticipated calls in a session at/above which the agent considers a channel mode (both rails). Advisory — the agent estimates the call count; it is not a hard runtime counter.
ONESOURCE_CONFIG_DIR~/.onesourceDirectory holding the server-managed channel config (batch-config.json) written by 1s_batch_config.
ONESOURCE_ANALYTICStrueSet to false to disable analytics.
ONESOURCE_ANALYTICS_URLhttps://1s-analytics.vercel.appDashboard endpoint for analytics.
ONESOURCE_ANALYTICS_KEYonesource-mcpAPI key for dashboard analytics. Legacy alias X402_ANALYTICS_KEY still works but is deprecated.

Troubleshooting

1s_setup_check shows "Active auth method: none" (blockchain tools locked) Under Current configuration, "Active auth method: none" means no authentication is set. Set one of ONESOURCE_API_KEY (API key), X402_PRIVATE_KEY (x402 on Base), or MPP_PRIVATE_KEY (MPP on Tempo) — or just run 1s_setup_check and let it walk you through it. Reload the MCP server after setting any variable (see note above). If the key still isn't reaching the server, set it as a shell environment variable directly.

Getting 403 / wrong key active despite correct setup A key set in your shell profile (e.g. ~/.zshrc, ~/.bash_profile) is picked up by the MCP server process even if it isn't in your Claude MCP config. Run echo $ONESOURCE_API_KEY in your terminal to check. If it prints a value you didn't intend, unset it (unset ONESOURCE_API_KEY) or explicitly clear it when adding the server: claude mcp add onesource -e ONESOURCE_API_KEY= -e X402_PRIVATE_KEY=<key> -- npx -y @one-source/mcp@latest. 1s_setup_check shows the first 6 characters of whichever key is active so you can confirm which one the server is using.

Instructions show wrong auth method after reinstall /reload-plugins in Claude Code reconnects tools but may not refresh the system prompt the LLM sees. If you switch auth method (e.g. API key → x402), do a full Claude Code restart to ensure the instructions reflect the new auth.

"MCP server onesource already exists" error Run claude mcp remove onesource first, then re-add with your updated config.

Windows: npx requires cmd /c wrapper Claude Code's /doctor command may warn about this. Update your MCP config to use "command": "cmd" with "args": ["/c", "npx", "-y", "@one-source/mcp@latest"].

**npx hangs with no output** That's normal — stdio mode waits for JSON-RPC input on stdin. Use --http if you want an HTTP server you can curl.

Port already in use Specify a different port: npx -y @one-source/mcp@latest --http --port=8080

Registry Publishing

This package is listed on the official MCP Registry under the verified namespace io.onesource/mcp and on Glama. When releasing a new version, update both registries.

MCP Registry

First-Time Setup
1. Install Go

Download the installer for your platform from go.dev/dl and run it. Verify:

bash
go version
2. Install mcp-publisher
bash
go install github.com/modelcontextprotocol/registry/cmd/mcp-publisher@latest

If the Go module path has changed and the command fails, download the binary directly from the mcp-publisher GitHub releases page instead.

On Windows, add Go's bin directory to your PATH if the command isn't recognized:

powershell
$env:PATH += ";$env:USERPROFILE\go\bin"

Verify:

bash
mcp-publisher --help
3. DNS Authentication (already done)

The onesource.io domain has a DNS TXT record that proves ownership of the io.onesource namespace. This is already configured — you don't need to redo it.

The record is on the root domain (onesource.io, not _mcp-registry.onesource.io):

v=MCPv1; k=ed25519; p=7D3U5rufgNXb/lH2MthTRZdDzEGeE7/Jvg8YkiArQc8=

You can verify it resolves:

bash
nslookup -type=TXT onesource.io 8.8.8.8
4. Get the Private Key

Authentication requires the ed25519 private key in hex format that corresponds to the public key in the DNS record. Ask the team lead for this key — it's stored in the team's password manager / vault.

If you need to regenerate the keypair (this invalidates the current DNS record and requires updating it):

  1. Generate a new ed25519 keypair (e.g., openssl genpkey -algorithm Ed25519 -out key.pem)
  2. Extract the raw 32-byte private key seed and convert to hex:
bash
 openssl pkey -in key.pem -outform DER | tail -c 32 | xxd -p -c 32
  1. Extract the public key in base64 for the DNS TXT record:
bash
 openssl pkey -in key.pem -pubout -outform DER | tail -c 32 | base64
  1. Update the DNS TXT record on onesource.io with the new public key:
 v=MCPv1; k=ed25519; p=<base64-public-key>
  1. Wait for DNS propagation before attempting to log in.
Publishing a New Version

Use the release script. Releases are normally run via the coordinated release script in the sre-services repo (scripts/release-mcp.mjs — see sre-services/RELEASING.md), which performs all of the steps below across both @one-source/api-mcp and @one-source/mcp in the correct order, including the server.json bump and mcp-publisher publish. The First-Time Setup above is still the prerequisite for the registry step. The manual steps below are the fallback for registry-only fixes or when the script can't run.

Every time you release a new npm version, update the MCP Registry:

  1. Publish to npm (the registry validates the package exists, so this must happen first):
bash
 npm run build npm publish --access public
  1. Update server.json — set both version fields to match the new npm version:
json
 {   "version": "x.y.z",   ...   "packages": [{ "version": "x.y.z", ... }] }

The mcpName field in package.json must be "io.onesource/mcp" and must match the name field in server.json. This is already set — don't remove it. 3. Authenticate (tokens expire, so do this each time):

bash
 mcp-publisher login dns --domain onesource.io --private-key <ed25519-hex-private-key>
  1. Publish to the registry:
bash
 mcp-publisher publish
  1. Verify:
bash
 curl "https://registry.modelcontextprotocol.io/v0.1/servers?search=onesource"

Glama

Glama auto-syncs from the GitHub repo daily. No manual steps needed after a release — just make sure changes are pushed to develop (the default branch). The glama.json file in the repo root controls ownership. Manual re-sync is available from the Glama admin panel after claiming the server.

Privacy Policy

Use of this extension connects to the OneSource API. See the OneSource Privacy Policy for details on how data is handled.

License

Apache 2.0 — see LICENSE for details.

来源:README.md,提交 8b6144b

工具

99

1s_allowance_live

ERC-20 Allowance

Check ERC20 token allowance (approved spending amount) via the allowance(owner,spender) RPC call. Use this before executing transferFrom or to verify approvals. Returns the allowance amount in raw token units. Optional fields the response could not confirm are listed in warnings; a field that is missing or false for that reason is unknown for this response, not a confirmed answer.

输入参数owner必填token必填networkspender必填

1s_contract_info_live

Contract Info

Detect contract type and supported interfaces via eth_getCode and ERC165 supportsInterface. Returns detected standards (ERC20, ERC721, ERC1155, ERC165). Optional fields the response could not confirm are listed in warnings; a field that is missing or false for that reason is unknown for this response, not a confirmed answer.

输入参数address必填network

1s_erc1155_balance_live

ERC-1155 Token Balance

Get real-time ERC1155 token balance via balanceOf(address,uint256) RPC call. Returns the raw balance as a numeric string.

输入参数account必填networkcontract必填token_id必填

1s_erc20_balance_live

ERC-20 Token Balance

Get real-time ERC20 token balance directly from the blockchain via balanceOf. Use this for pre-transaction checks or when zero indexing delay is needed. Returns raw token units (divide by 10^decimals); non-standard tokens may return empty name/symbol. Optional fields the response could not confirm are listed in warnings; a field that is missing or false for that reason is unknown for this response, not a confirmed answer.

输入参数token必填account必填network

1s_erc20_transfers_live

ERC-20 Transfer History

Query ERC20 Transfer(from, to, value) event logs via eth_getLogs directly from the node. Filter by token contract and/or wallet address. Block params accept decimal, hex, or named tags ("latest", "pending", etc.). Returns decoded transfer events with sender, recipient, and value, plus the from_block/to_block actually queried. Omitting from_block/to_block queries ONLY the latest block — a single block, not a recent window. Size ranges by TIME, not by a fixed block count: block time varies from ~12s (ethereum) to ~100ms (robinhood and other L2s), so 10 blocks is two minutes on one chain and one second on another. Call 1s_network_info first and use avg_block_time_ms to convert the window you want into blocks. A count of 0 usually means the range was too narrow rather than that no transfers occurred — check the returned from_block/to_block before reporting a token as inactive. A busy token can exceed the response limit in far fewer blocks than expected. When that happens the result is still usable: you get the first whole blocks of the range plus "truncated": true, "returned", "total" and "next_from_block". Call again with from_block=next_from_block to continue — pages are cut on block boundaries, so this skips nothing and repeats nothing. Page through rather than retrying the same window smaller, which pays twice for overlapping data.

输入参数tokenwalletnetworkto_blockfrom_block

1s_erc721_tokens_live

ERC-721 NFT Tokens

Enumerate ERC721 tokens owned by an address via ERC721Enumerable. Only works for contracts that implement the Enumerable extension. Returns token IDs owned by the address. If warnings lists the token collection, the returned tokens are an incomplete set, not the full holdings for that address.

输入参数owner必填networkcontract必填

1s_events_live

Contract Events

Query raw event logs via eth_getLogs directly from the node. Filter by contract address and/or topic0 (keccak256 hash of event signature, e.g. Transfer(address,address,uint256)). Block params accept decimal, hex, or named tags ("latest", "pending", etc.). Returns raw log entries with topics, data, and block context, plus the from_block/to_block actually queried. Always specify a contract address when possible. Omitting from_block/to_block queries ONLY the latest block — a single block, not a recent window. Size ranges by TIME, not by a fixed block count: block time varies from ~12s (ethereum) to ~100ms (robinhood and other L2s), so 10 blocks is two minutes on one chain and one second on another. Call 1s_network_info first and use avg_block_time_ms to convert the window you want into blocks. A count of 0 usually means the range was too narrow rather than that nothing happened — check the returned from_block/to_block before concluding a contract is idle. A busy contract can exceed the response limit in far fewer blocks than expected. When that happens the result is still usable: you get the first whole blocks of the range plus "truncated": true, "returned", "total" and "next_from_block". Call again with from_block=next_from_block to continue — pages are cut on block boundaries, so this skips nothing and repeats nothing. Page through rather than retrying the same window smaller, which pays twice for overlapping data.

输入参数topicnetworkcontractto_blockfrom_block

1s_multi_balance_live

Multi-Address Balance

Get native ETH plus balances for up to 20 caller-supplied ERC20 contract addresses in one bounded RPC batch. Tokens are queried, not discovered, and the tool does not calculate a portfolio value. Individual token errors are returned per-token without failing the entire request; exceeding the 20-token cap rejects the request. Optional fields the response could not confirm are listed in warnings; a field that is missing or false for that reason is unknown for this response, not a confirmed answer.

输入参数tokensaddress必填network

1s_nft_metadata_live

NFT Metadata

Fetch NFT metadata directly from the blockchain via tokenURI/uri RPC call. Resolves all URI formats: ipfs://, ar://, data: URIs, bare CIDs, and ERC1155 {id} templates.

输入参数networkcontract必填token_id必填

1s_nft_owner_live

NFT Owner

Get the current NFT owner via ownerOf(tokenId) RPC call. Only works for ERC721 tokens.

输入参数networkcontract必填token_id必填

1s_total_supply_live

Token Total Supply

Get the total supply of an ERC20 or ERC721 token via totalSupply() RPC call. Use this for real-time supply data. Returns raw token units for ERC20 (divide by 10^decimals) or total count for ERC721. Optional fields the response could not confirm are listed in warnings; a field that is missing or false for that reason is unknown for this response, not a confirmed answer.

输入参数networkcontract必填

1s_tx_details_live

Transaction Details

Get full transaction data and receipt directly from the RPC node. Returns both transaction fields and receipt (status, gas used, logs).

输入参数hash必填network

1s_block_by_number

Block by Number

Get full block details by block number via RPC. Returns transactions, gas used, miner, timestamp, and other header fields. Accepts decimal (e.g. "21000000"), hex (e.g. "0x1406F40"), or a named tag ("latest", "pending", "earliest", "safe", "finalized").

输入参数number必填network

1s_block_number

Current Block Number

Get the latest block number for a network. Returns the current chain head as a hex-encoded value. Use 1s_network_info to also get chain ID and gas price in the same call.

输入参数network

1s_chain_id

Chain ID

Get the EIP-155 chain ID for a network as a hex-encoded value. Use this to verify the network before signing transactions. Use 1s_network_info to get chain ID, block number, and gas price together.

输入参数network

1s_contract_code

Contract Bytecode

Get the deployed bytecode of a contract via eth_getCode. Returns '0x' for EOA (non-contract) addresses. Bytecode can be very large for complex contracts. Prefer 1s_proxy_detect or 1s_contract_info_live for type checks without fetching full bytecode.

输入参数address必填network

1s_ens_resolve

ENS Name Resolution

Resolve ENS names to addresses (forward) or addresses to ENS names (reverse). Accepts either a .eth name or a 0x address. Only works on networks with the ENS registry deployed: ethereum and sepolia. On robinhood the registry is absent, and the response is HTTP 200 with supported:false and an error naming the chain — that is a fact about the network, not evidence that the name is unregistered. Do not conclude a name has no resolver from a non-ENS chain.

输入参数input必填network

1s_estimate_gas

Gas Estimate

Estimate gas required for a transaction via eth_estimateGas. Use this before sending transactions to set appropriate gas limits. Returns the estimated gas as a hex value; reverts return the revert reason.

输入参数to必填datafromvaluenetwork

1s_network_info

Network Info

Get network information and chain characteristics in one call: chain ID, latest block number, gas price, how far behind the chain head is, and what kind of chain this is. Returns hex-encoded values; gas price is in wei. CALL THIS FIRST when working with an unfamiliar network — it is the only way to learn the properties that make other results interpretable. The "chain" object reports layer, stack, settles_to, avg_block_time_ms, native_currency, and whether ens, a public mempool, and indexed history are available. Use avg_block_time_ms to size block ranges: cadence spans ~12s (ethereum) to ~100ms (L2s), so a fixed block count means very different windows per chain. Check "stale" before trusting ANY latest-relative read: it reports whether head_age_seconds exceeds this network's stale_after_seconds threshold. A frozen chain client and a genuinely idle chain return identical-looking data, and stale is the only signal that distinguishes them — if it is true, treat block numbers, balances and logs as a snapshot from head_age_seconds ago, not as current. Historical reads remain correct when a head is stale. On layer-2 networks gas_price is the L2 base fee only and gas_price_note explains why: the L1 data cost is charged as additional gas units, so use 1s_estimate_gas for a total cost basis rather than multiplying gas_price yourself.

输入参数network

1s_nonce

Account Nonce

Get the transaction count (nonce) for an address via eth_getTransactionCount. Use this to set the correct nonce when constructing transactions. Returns the count as a hex value.

输入参数address必填network

1s_payment_mode

Payment Mode

View or switch how this session pays for metered calls. Two rails, each with two modes: x402-exact (per-call USDC on Base, default), x402-batch (Base payment channel — one deposit funds many off-chain calls), mpp-charge (per-call on Tempo, USDC.e/pathUSD), and mpp-session (Tempo voucher channel). Channel modes are cheaper for a burst of calls but lock a deposit until the channel is closed/refunded. Each rail uses its own wallet (X402_PRIVATE_KEY on Base / MPP_PRIVATE_KEY on Tempo). Call with no arguments to see the current mode and which modes are available. Only applies when paying via a wallet; with an API key, calls are covered by your plan.

输入参数mode

1s_pending_block

Pending Block

Get the current pending block via eth_getBlockByNumber("pending"). On networks with a public mempool (ethereum, sepolia) this shows transactions waiting for inclusion, and the response can be very large (1MB+) on mainnet. On single-sequencer chains it is NOT a mempool view: robinhood and other L2s order transactions first-come-first-served with no public pending pool, so the call still succeeds but returns essentially the next block rather than a queue. An empty or near-empty result there means "not applicable on this chain", NOT "no activity" and NOT "no front-running risk" — check the mempool field from 1s_network_info before drawing either conclusion. Prefer 1s_network_info for chain status or 1s_tx_details_live for specific transactions.

输入参数network

1s_proxy_detect

Proxy Contract Detection

Detect if a contract is a proxy and read its implementation address. Checks EIP-1967 (transparent/UUPS/beacon) storage slots. Returns the proxy type, implementation address, and admin if applicable. Optional fields the response could not confirm are listed in warnings; a field that is missing or false for that reason is unknown for this response, not a confirmed answer.

输入参数address必填network

1s_refund

Refund x402 Channel

Reclaim the unused deposit from an open payment channel back to your wallet right away, instead of waiting for the channel to be closed or auto-refunded. Channel modes deposit funds up front to cover many calls; whatever you do not spend stays locked until reclaimed. Works for whichever channel is active this session: x402 batch (USDC on Base) or MPP session (USDC.e/pathUSD on Tempo). Call this when you are done making channel-mode calls. Not needed for per-call modes (x402-exact / mpp-charge) or API-key auth — there is no channel deposit to reclaim.

无需输入参数。

1s_simulate_call

Simulate Contract Call

Simulate a contract call via eth_call without sending a transaction. Use this to preview call results, decode return data, or check for reverts before sending. Returns the raw hex result or revert reason.

输入参数to必填gasdata必填fromvaluenetwork

1s_storage_read

Contract Storage Read

Read a raw storage slot from a contract via eth_getStorageAt. Use this for low-level state inspection (e.g. reading proxy implementation slots, packed storage). Slot accepts decimal (e.g. "0") or hex (e.g. "0x0").

输入参数slot必填networkcontract必填

1s_tx_receipt

Transaction Receipt

Get a transaction receipt via RPC. Returns status (1=success, 0=revert), gas used, logs, and contract address if deployment. Use 1s_tx_details_live for both transaction data and receipt together.

输入参数hash必填network

1s_ds_book

Deepstate Order Book

Get a Deepstate order-book snapshot for a market — bids descending, asks ascending, with each price level’s resting size. Reflects the last completed on-chain state read rather than every intervening block; the returned block number names exactly which height it was read at. Call 1s_ds_markets for the list of available book slugs.

输入参数book必填depth

1s_ds_candles

Deepstate Candles

Get Deepstate OHLCV candles for a market at a given timeframe. Open/high/low/close are real trade prices, not recomputed; volumes are exact sums. The most recent (still-open) bucket updates as new trades arrive; earlier buckets are final. Call 1s_ds_markets for the list of available book slugs.

输入参数tf必填tobook必填from

1s_ds_cost_to_quote

Deepstate Cost to Quote

Get gas spent resting and cancelling orders on a Deepstate market, bucketed over time — total fee, median fee, and how much of the fee is L2-to-L1 data cost. Requires a book — call 1s_ds_markets for the list of available book slugs.

输入参数toresbook必填from

1s_ds_depth_history

Deepstate Depth History

Get a depth heatmap for a Deepstate market: resting order size by price level over time, bucketed and optionally restricted to one side. Each bucket also reports how much of it is covered by a sized order count, so a caller can tell how complete a given level is. Requires a book — call 1s_ds_markets for the list of available book slugs.

输入参数toresbook必填fromside

1s_ds_makers

Deepstate Maker Analytics

Get per-maker analytics for a Deepstate market over a time window: time spent at the top of book, current resting notional, fill count and fill rate, and maker rewards earned. The reward token is per-market, not fixed — call 1s_ds_markets and read that market’s `reward_token` (NVDA/USDG has paid 2DEEP since the DGP-3 migration on 2026-09-22; DEEP/USDG is a legacy book and earns no rewards). Rows are keyed by maker (resting-order owner) address. Requires a book — call 1s_ds_markets for the list of available book slugs.

输入参数tobook必填fromlimit

1s_ds_markets

Deepstate Markets

List the Deepstate markets (order books) this API serves, with each market’s slug, token layout, pool/router addresses, lifecycle `status`, and `reward_token`. `status` is one of `live`, `price_decode_pending`, `legacy` (token superseded, may still have resting orders), or `registered` (exists on-chain, not yet trading). `reward_token` is the token maker rewards pay in for that market — 2DEEP for NVDA/USDG since the DGP-3 migration on 2026-09-22; DEEP/USDG is legacy and pays no rewards. Call this first: every other Deepstate tool takes a book identifier, and this is the source of truth for which books exist and their canonical uppercase slug form (e.g. "NVDA-USDG"). Static configuration data, safe to cache client-side.

无需输入参数。

1s_ds_migration

Deepstate DGP-3 Migration

Track how much of the old DEEP and STATE supply has been redeemed for 2DEEP since the DGP-3 upgrade on 2026-09-22, and how much is still outstanding. Returns the redemption ratio, when the upgrade executed (block and time), DEEP and STATE redeemed totals and counts, 2DEEP minted for STATE redemptions, and what remains redeemable of each, plus a daily series over an optional from/to window. These totals and counts come from an indexed event stream and are a floor, not an exact count: `truncated` is true when the window held more events than one read caps at, and the index is still being backfilled for 2026-09-22/23 while a replay runs, so until that finishes, treat counts as at-least, not exact. Redemption has no deadline; this reports progress so far. Call 1s_ds_token_2deep for the current live totals instead of a point-in-time snapshot.

输入参数tofrom

1s_ds_stats

Deepstate Market Stats

Get rolling 24h / 7d / 30d volume and price change for a Deepstate market, plus the latest traded price. Call 1s_ds_markets for the list of available book slugs.

输入参数book必填

1s_ds_token_2deep

Deepstate 2DEEP Token

Get 2DEEP’s current supply, supply cap, float, Rewarder V3 balance, endowment locked, and outstanding migration liabilities, read live from chain. 2DEEP replaced DEEP and STATE in the DGP-3 upgrade on 2026-09-22, and every figure here reflects that migration: `state_to_2deep_wad`/`state_to_2deep` (1 STATE redeems for 3.0155 2DEEP; DEEP redeems 1:1), plus `legacy_deep_total_supply_raw`/`legacy_state_total_supply_raw`, the old tokens’ current total supplies (the DEEP figure includes about 793M DEEP stranded forever in the retired Rewarder V1, which can never be redeemed; for what’s actually still redeemable see 1s_ds_migration’s `remaining_deep_redeemable_raw`/`remaining_state_redeemable_raw`). `price_usdg`/`price_usdg_raw` come from the USDG/2DEEP Uniswap v4 pool and are omitted from the response until that pool has a trade; `price_source` still names the pool, so a client can tell "no price yet" from "wrong pool". There is no deadline to redeem old DEEP or STATE.

无需输入参数。

1s_ds_trades

Deepstate Trade Tape

Get the Deepstate trade tape for a market, newest first — each fill’s price, size, side, and the block it happened in. Page backward in time with `before` (returns trades strictly below that block number). Call 1s_ds_markets for the list of available book slugs.

输入参数book必填limitbefore

1s_std_addresses

TSR Address Registry

Get the verified registry of The Standard Reserve (TSR) contracts and pool on Robinhood Chain: token, Charter NFT, Central Bank, tax hook, vaults, auctions, genesis minter, registry, and pool, each with a verification status. Check an address here before sending funds; more than 100 lookalike contracts exist. Always answers, even before every address is fully verified: check registry_status (placeholder|partial|verified) and each row's own verification_status before trusting an address. Free, no payment required.

无需输入参数。

1s_std_auction_days

TSR Auction Day History

List per-day history for The Standard Reserve (TSR)'s license or charter auction on Robinhood Chain, newest day first: open/floor/close price, offered vs. sold, first/last sale time, sold-out time, and minutes to sell out. License days also carry purchase aggregates: transaction_count, distinct_charters, average_price_raw, total_paid_raw, and purchase_size_distribution (licenses bought per transaction to number of transactions); these are null for charter days. Requires kind (license or charter). Page with before (a day number, exclusive) and limit. Fields ending in _raw are 18-decimal integers as strings.

输入参数kind必填limitbefore

1s_std_auction_sales

TSR Auction Sales

List recent sales for The Standard Reserve (TSR)'s license or charter auction on Robinhood Chain, newest first: buyer, unit price, count, and block. Filter by kind (license or charter, both returned when omitted), optionally narrow to charter_id, and page with before (a "block:log_index" cursor from a prior page) and limit. Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

输入参数kindlimitbeforecharter_id

1s_std_auctions_current

TSR Current Auction

Get The Standard Reserve (TSR)'s current Dutch-auction quotes on Robinhood Chain for the daily STANDARD license auction and the ETH charter auction: price now (when the formula allows it), floor, last sale, daily license supply, and expected license prices at short wait horizons. Each side also reports units_offered/units_sold/units_remaining, sold_out, and phase (not_started, live, sold_out, paused, or unknown). When sold_out is true, price_now_raw is still the decay curve's value, not a live price you can actually buy at; check sold_out (and price_now_note) before trading on it. A side with price_available false still returns its floor and last sale. Each side also carries a day_clock object (current_day, day_started_at, next_day_starts_at, seconds_to_next_day) telling you when today's auction day rolls into the next one, null with day_clock_reason before that side's auction has started. For fills, call 1s_std_auction_sales filtered by kind. Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

无需输入参数。

1s_std_backing

TSR Reserve Backing

Get The Standard Reserve (TSR)'s reserve backing on Robinhood Chain: vault ETH balances, reserve-asset holdings, the Uniswap v4 positions the expansion vault owns (vault_positions), and eth_backing_per_standard (ETH per circulating STANDARD) in three variants. excluding_pol is vault ETH only, the conservative figure. including_pol adds total POL-controlled ETH (idle + position principal + uncollected fees) and is null when pol_position_basis is position_inventory_unavailable. including_reserve_assets adds the ETH value of vault_positions and of the priced reserve_assets to vault ETH, leaves out POL, and is null until a snapshot has both positions and prices. Part of the vault's ETH was redeployed into USDG and Uniswap v4 pools, so excluding_pol and including_pol fall when that happens. reserve_value splits the reserve-inclusive figure into components (vault_positions_eth, usdg_eth, stock_tokens_eth), a total, and an unpriced list. Stock tokens and positions are valued at the current price in the Reserve's own stock/USDG pools and USDG at $1 via Chainlink ETH/USD, so selling a large amount would fetch less; eth_value and valuation on reserve_assets name the basis, and unpriced assets keep eth_value null. Position STANDARD and per-range POL liquidity are also returned. No variant includes ETH held by the tax hook or fee splitter (see hook_eth_balance_raw/fee_splitter_eth_balance_raw on 1s_std_buyback_readiness); that ETH is tax collected on trades awaiting a forwardTaxes() call, not vault-held backing. Pass history_hours to get the backing-ratio history instead of the current snapshot, or atBlock to get the backing snapshot at or before that block (ignored when history_hours is set). Fields ending in _raw are 18-decimal integers as strings; divide by 1e18 to get token amounts.

输入参数atBlockhistory_hours

1s_std_branch_auction_live

TSR Branch Auction Live

Get the raw, head-fresh state of The Standard Reserve (TSR) Branch license auction on Robinhood Chain: phase (not_started/live/paused, or unknown when the contract did not answer), current/floor/day-start price, half-life, licenses issued per day, today's sold/remaining counts, and sales in the last 5, 15, and 60 minutes. Read straight from the chain (not the indexed pipeline), refreshed every few seconds. A field the contract view did not return comes back null, not zero. day_clock gives the next auction-day boundary (next_day_starts_at, seconds_to_next_day), null with day_clock_reason before the auction has started. For the buy-now-vs-wait decision, use 1s_std_branches_doi instead.

无需输入参数。

1s_std_branches_doi

TSR Branches Days of Issuance

Get The Standard Reserve (TSR) Branch license auction's Days of Issuance (DOI): how many days of new-Branch issuance the current price is worth, a dilution-adjusted DOI if all remaining licenses sell, price over floor, recent sales, and a buy-now-vs-wait table at +15m/+30m/+1h/+4h, all read live from Robinhood Chain (not the indexed pipeline). Prices are exact integer strings; the wait figures are current-pace estimates, not predictions, and assume issuance and Branch count stay constant. Any field the contract could not be read for comes back null, including doi.days when issuance per Branch is zero; null never stands in for zero. day_clock gives the next auction-day boundary (next_day_starts_at, seconds_to_next_day), null with day_clock_reason before the auction has started.

无需输入参数。

1s_std_branches_summary

TSR Branches Summary

Get a summary across all of The Standard Reserve (TSR)'s active Branches on Robinhood Chain: total active Branches, issuance per Branch per day, and the license price expressed in days of Branch issuance. Issuance per Branch per day reads from a live chain-read estimate before the current epoch settles on-chain, and from the settled total after; `yield_issuance_source` says which one you got. Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

无需输入参数。

1s_std_buyback_readiness

TSR Buyback Readiness

Get The Standard Reserve (TSR)'s contraction-vault buyback-tick readiness on Robinhood Chain: this tick's ETH capacity (the smaller of the vault's own share and the pool's per-tick cap, with binding_constraint naming which one binds), cooldown time remaining, the current pool tick vs. its TWAP (time-weighted average price) and whether it is within the allowed deviation, whether buyback ticks are open to the public yet, who can run one before that (executor) and who can pause the contract (guardian), ETH sitting in the tax hook and fee splitter awaiting routing, the current policy regime, and recent executed ticks. Fields ending in _raw are 18-decimal integers as strings; divide by 1e18 to get ETH amounts.

输入参数limit

1s_std_candles

TSR Price Candles

Get OHLC price candles for The Standard Reserve (TSR)'s ETH/STANDARD Uniswap v4 pool on Robinhood Chain, priced in ETH per STANDARD, with per-candle swap counts and volume in both tokens. Pass quote="usd" to add open_usd/high_usd/low_usd/close_usd to every candle, derived from Chainlink's ETH/USD feed and treated as an approximation rather than a true historical USD candle; every *_usd field comes back null when that feed reading is stale. Pick a timeframe with tf (1m to 1d, default 1h) and optionally bound the window with from/to (RFC 3339); without them the API returns the most recent 300 candles. Empty buckets are omitted.

输入参数tftofromquote

1s_std_charter

TSR Charter Detail

Get one The Standard Reserve (TSR) charter by id on Robinhood Chain: holder, branch count, mint kind (genesis or auction), owed production, and branch history. When id is omitted, list charters instead (optionally filtered by owner), newest charter_id first by default. The list is keyset-paginated: pass the previous response's next_before back as `before` (or next_after back as `after` with order "asc") to fetch the next page; total_charters in the response says how many charters match the filter overall. A charter is a soulbound bank-charter NFT that holds 1 to 10 Branches. Call 1s_std_branches_summary first to find a charter id. The response also has a `stimulus` object for the one-time charter stimulus: STANDARD already claimed and still claimable on this charter. The claim deadline is in the `deadline` field of the stimulus object. The charter's current owner claims it. Charter transfers are disabled on chain today, so that is the wallet holding the charter. A full exit forfeits an unclaimed stimulus (confirmed by simulation). On a burned charter, `forfeited_raw` is the amount it lost. With an id, charter_drops gives this charter's share of each launchpad charter drop. Closing branches below the count frozen at a drop makes shares claimable, and the owner claims each drop separately. Each drop has a mode that says when it pays: per_branch as each branch closes, at_exit only once the charter has no branches left. A charter burned by closing its last branch can only claim if noteOwner was called first on each drop contract it has shares in. owner_note.contracts_to_note lists any still missing. Values come in launch tokens, then the pair stock at the pool's spot price, then ETH when the Reserve prices the stock. With an id, a charter revoked for dormancy whose holder has a refund also carries `burned_charter_claim`: the Burned Charter Claim allocation, claimable now, claimed or not, and the deadline. The refund belongs to the wallet that held the charter when it wa

输入参数idsortafterlimitorderownerbefore

1s_std_decision_bid

TSR Decision: Bid

One call with the inputs for thinking about a standing bid on the Branch license auction of The Standard Reserve (TSR), on Robinhood Chain, at a max unit price. Returns when the price reaches that max (derived, today or on the next auction day, with the stated assumption), how many other bids and licenses would be filled before it and the supply left after them (derived), and, with charter_id, that charter's measured pending STANDARD, window and branch caps and any existing bid a new one would replace. Also states how fills happen and the measured fill history: fill() is a separate transaction that anyone may send, so a price crossing is not a fill. Each part comes back under parts.<name> with its own status (ok, not_ready, or error). Requires max_unit_price. It returns inputs only and does not recommend an action.

输入参数countcharter_idmax_unit_price必填

1s_std_decision_branch

TSR Decision: Branch

One call for "should I buy a The Standard Reserve (TSR) Branch or license right now" on Robinhood Chain. Bundles Days of Issuance (1s_std_branches_doi), the ETH cost of a license via the pool vs. the charter-auction path (1s_std_license_cost, with cheapest_path), recent license-auction day history, the policy outlook, and any pending governance change affecting licenses/day or issuance -- plus per-charter license headroom when charterId is given. Each part comes back under parts.<name> with its own status (ok, not_ready, or error); one part failing never fails the whole call. summary carries the handful of numbers a buyer looks at first, including next_day_starts_at and seconds_to_next_day for when the current auction day rolls over. parts.charter_drops_history is history, not a forecast: what one branch counted in each past launchpad charter drop would be worth today. A branch opened now counts toward future drops only.

输入参数charter_id

1s_std_decision_charter

TSR Decision: Charter

One call for "should I buy into a new The Standard Reserve (TSR) charter right now" on Robinhood Chain. Bundles the charter-auction state (1s_std_auctions_current, recent charter-auction days), the license-cost route's cheapest_path (does a license or a whole charter buy the cheaper path to operating a branch right now), Days of Issuance, ETH backing per STANDARD, holder concentration and the genesis-vs-auction cohort split, and any pending governance change affecting charters/day. Each part comes back under parts.<name> with its own status (ok, not_ready, or error); one part failing never fails the whole call. The charter-auction state includes charter.expected_prices: the price path for the rest of the current auction day at +15m, +30m, +1h, +4h and end of day, derived from the measured price and the charter's own half-life (derived; assumes no purchase before then and no parameter changes; rows that would land in the next day are null with a reason). parts.charter_drops_history is history, not a forecast: what one branch counted in each past launchpad charter drop would be worth today. A branch opened now counts toward future drops only.

无需输入参数。

1s_std_decision_exit

TSR Decision: Exit

One call for "should I exit this The Standard Reserve (TSR) charter's branches right now" on Robinhood Chain. Bundles the exit quote (1s_std_exit_quote: gross, fee, net, realizable_eth), the fee curve priced at that same quote's gross, the fee forecast (days until the fee returns to its floor if no further exits happen), the current buy/sell tax schedule, the live pool state, the policy outlook, and any pending governance change affecting fees, resolution, exit or pressure. parts.sbills_alternative quotes the exit's net STANDARD (after the exit fee) as an S-Bills deposit: rate paid for one term, premium, term length, and the exit fee that bill would pay. It is derived, assumes staking immediately with no other deposits, and is read live at the chain head. parts.stimulus and the summary.stimulus_* fields show the charter's unclaimed stimulus. A full exit burns the charter and forfeits it (confirmed by simulation); a partial exit does not. The claim deadline is in the `deadline` field. Charter transfers are disabled on chain today, so only the wallet holding the charter can claim. Each part comes back under parts.<name> with its own status (ok, not_ready, or error); one part failing never fails the whole call. Requires charterId. If branches is omitted, it defaults to the charter's current branch count (or 1 if that isn't known yet) rather than being left out of the exit quote entirely; the response echoes summary.branches_used and summary.branches_source (query, charter_count, or default) so you can see which one was used. Call 1s_std_charter first to see how many branches are open if you want to pass a specific number. parts.charter_drops shows what closing these branches releases from launchpad charter drops (claimed separately, one claim per drop) and what is already claimable. An at_exit drop releases its share only when the close takes the charter to zero branches. It warns to call noteOwner before closing the last branch, and names each drop contract to call it

输入参数atBlockbranchescharter_id必填

1s_std_decision_hold

TSR Decision: Hold

One call with the inputs for holding STANDARD on The Standard Reserve (TSR) on Robinhood Chain. Returns the policy outlook, issuance runway, pending governance changes, tax schedule, buyback readiness and dormancy state. summary is a flat map of the headline numbers. Each part comes back under parts.<name> with its own status (ok, not_ready, or error); one part failing never fails the whole call. Dormancy carries the reportable wallet count, not the full list; the count is null until the dormancy window has been read from chain. It returns inputs only and does not recommend an action. Takes no arguments.

无需输入参数。

1s_std_decision_plan

TSR Decision: Plan

Simulate three Branch-expansion strategies for a Standard Reserve (TSR) charter on Robinhood Chain: keep (never buys a license), selective (buys one license every selective_interval_days, budget permitting), and aggressive (buys up to the daily license-auction cap every day, budget permitting). Every input can be seeded live from this API's own routes (current license price, pool spot price, issuance rate, branch counts) or overridden explicitly; the response reports which source each one came from (seeded_live, user_supplied, or default) under assumptions. By default (license_funding=eth) every license is paid for in wallet STANDARD bought with ETH, matching how LicenseAuction actually charges a purchase (burnFrom the wallet -- there is no contract path that pays with pending credits directly); license_funding=credits instead withdraws accrued credits first, paying the live resolution fee on each withdrawal. Unless resolution_fee_wad is supplied, the terminal exit fee is recomputed in both funding modes from that same live curve, whose trailing withdrawal window rolls forward a day at a time over feeWindowDays so an old withdrawal ages out instead of counting against the fee for the rest of the horizon. At the end of the horizon, remaining credits are released according to exit_mode (all, one, or none), the terminal resolution fee is applied, and the resulting STANDARD is sold at the simulated terminal price with sale tax, sale fee, and pool slippage haircuts. Each strategy also carries stake_instead_of_sale: the same net STANDARD priced as an S-Bills (fixed-term STANDARD staking) deposit at the end of the horizon instead of sold, with the contract's quote today (measured) and a projected rate and premium at that later moment (derived, as the only deposit, no parameter changes). It sits beside the sale and ranks neither. This is a simulation for exploring tradeoffs, not a forecast or a recommendation: the response never names a winning strategy. With charterId, cha

输入参数exit_modecharter_idbuy_tax_bpscredits_rawhorizon_daysown_branchessale_fee_bpssale_tax_bpsslippage_bpsbudget_eth_raw必填multiplier_wadlicense_funding另有 9 个

1s_std_decision_sbill

TSR Decision: S-Bill

One call with the figures for a single S-Bill on The Standard Reserve (TSR), on Robinhood Chain: the bill's record, the live S-Bills state, and a block that depends on the bill's state. An active bill gets the exact payout of an exit now (measured), the premium an early exit gives up, and the exit fee for each coming day until the fee stops changing or the bill matures (derived; the response states its assumption). A matured bill gets the redeem payout (measured) and what rolling it would lock (derived), and notes that nothing rolls automatically, so a matured bill earns nothing more until its owner redeems or rolls it. Exited and redeemed bills return the record only. Each part comes back under parts.<name> with its own status (ok, not_ready, or error). An unknown bill id returns 404. Requires bill_id. It returns inputs only and does not recommend an action.

输入参数bill_id必填

1s_std_decision_stake

TSR Decision: Stake

One call with the inputs for staking STANDARD into an S-Bill on The Standard Reserve (TSR), on Robinhood Chain. Returns the rate a deposit of this size would lock now, the premium, the caps checked against the wallet, the exit fee if you left right after depositing, and how the rate would move over 1h, 6h and 24h if nobody else deposits. That projection is derived, and the response states its assumption; the current rate, drift and ceiling it starts from are measured from the contract. The term length comes from the chain. Each part comes back under parts.<name> with its own status (ok, not_ready, or error); one part failing never fails the whole call. Requires amount. It returns inputs only and does not recommend an action.

输入参数amount必填wallet

1s_std_dormancy_bounties

TSR Dormancy Bounty Board

List The Standard Reserve (TSR) wallets on Robinhood Chain that are already past their reportable dormancy window, ranked by estimated bounty descending: min(bank_bounty_pct_wad/1e18 * owed, bank_bounty_cap) -- bank_bounty_cap is the LIVE cap the CentralBank enforces, which the response also surfaces separately as cap_ceiling_raw (the governance ceiling that live cap can be raised to, not itself a payout limit). owed is each wallet's last-indexed pending-production checkpoint, not a live re-read, so treat bounty_estimate_raw as an estimate, not a guaranteed payout. reportable_at_block is also an estimate: it was computed from an assumed block time, so it can be off by roughly a day's worth of blocks -- a reportDormant() call near the threshold may still revert as not-yet-reportable. The response may carry constants_missing:true if the bounty-percentage or cap constant hasn't been read on-chain yet, in which case wallets is empty. Fields ending in _raw are 18-decimal integers as strings.

输入参数limit

1s_std_dormancy

TSR Dormant Wallets

List The Standard Reserve (TSR) wallets on Robinhood Chain that are past their reportable dormancy window and eligible for the dormancy bounty, newest first, with their last activity. Set reportable=false to list every tracked wallet's last-activity record instead. The response may carry constants_missing:true if the dormancy-window constant hasn't been read on-chain yet, in which case reportable_at_block is null for every row.

输入参数limitbeforereportable

1s_std_epochs

TSR Epoch History

List The Standard Reserve (TSR) epoch history on Robinhood Chain: net flow, signal, regime, multiplier, and issuance per epoch. eth_in_raw/eth_out_raw and taxes_eth_buy_raw/taxes_eth_sell_raw currently come back null — pool-side flow and per-side hook attribution are not wired, so nothing is served rather than a wrong figure. taxes_hook_raw is the measured total ETH tax for the whole hook window. Use this to line up policy changes or auctions with the epoch they happened in. Paginate with before (an epoch number, exclusive) and limit.

输入参数limitbefore

1s_std_events

TSR Event Feed

List raw decoded The Standard Reserve (TSR) protocol events on Robinhood Chain, newest first. Filter by contract_label, event_name, tx_hash, block_number, log_index, from_address, to_address, owner, token_id, or epoch, and paginate with before (a "block_number:log_index" cursor, exclusive) and limit. Use this for an audit trail of what happened; use the other 1s_std_* tools for current or aggregated state.

输入参数epochlimitownerbeforetx_hashtoken_idlog_indexevent_nameto_addressblock_numberfrom_addresscontract_label

1s_std_exit_fee_curve

TSR Exit Fee Curve

See how The Standard Reserve (TSR)'s exit fee changes with the size of a withdrawal, on Robinhood Chain. Returns the current system-wide fee rate plus a ladder at 1%, 5%, 10%, 25%, 50%, and 100% of a gross withdrawal amount, each checked two ways: a live read of the reserve contract's own fee preview, and this tool's own formula computed from the same tracked numbers, so you can see if they agree. In the formula, gross counts only toward the withdrawals in the numerator, not the divisor. Pass gross (in whole STANDARD tokens, not wei) to size the ladder around a specific withdrawal; omit it to use the reserve's entire pending balance. Fields ending in _raw are 18-decimal integers as strings; fields ending in _wad are also 18-decimal integers (the fee's own fixed-point convention). The live fee fields (fee_rate_now_live_wad, and each ladder point's fee_rate_live_wad) are a direct contract read and are always returned. The formula fields (fee_rate_now_formula_wad, fee_rate_formula_wad) are a cross-check and come back null if the fee formula hasn't been validated live yet; check formula_version.

输入参数gross

1s_std_exit_fee_forecast

TSR Exit Fee Forecast

Project how The Standard Reserve (TSR)'s system-wide exit fee would move if no more withdrawals happened, on Robinhood Chain. Rolls the recent withdrawal window forward day by day and reports the fee rate for each future day, plus days_until_min_fee: how many days until the fee would reach its floor under that assumption. expiry_schedule lists the exact instant each recorded withdrawal day leaves the trailing fee window (from the reserve's own day clock, not event timestamps) with the window total and fee after each one; next_fee_change_at is the first expiry that moves the fee. When incomplete_days is non-empty the schedule fields are null and only the day-by-day projection is available. This is a current-pace projection, not a prediction; the response always states its assumptions plainly. Fields ending in _raw are 18-decimal integers as strings; fields ending in _wad are also 18-decimal integers (the fee's own fixed-point convention). fee_rate_now_wad ("today") prefers a direct contract read over the formula's own value, and fee_rate_now_basis says which one it is; the rest of the day-by-day projection, and the schedule fields, are a formula rollforward that comes back null if the fee formula hasn't been validated live yet; check formula_version.

无需输入参数。

1s_std_exit_pressure

TSR Exit Pressure

Get The Standard Reserve (TSR)'s exit-pressure reading on Robinhood Chain and the resolution (exit) fee rate it produces. Exit pressure is the last 7 days of withdrawals divided by the reserve's total pending balance plus those withdrawals (the divisor has a minimum floor), scaled by a saturation level and capped at 1. The fee runs from 2% to 60% and grows with the square of that pressure. It is not a queue of pending redemptions; read it against the active policy (call 1s_std_policy_current for that context). Pass history_hours to get the history series instead of the latest snapshot (history rows that carry a formula fee report formula: "unknown", because the table does not record which formula version produced them), or atBlock to get the raw snapshot at or before that block (ignored when history_hours is set; the live fee-rate recompute only runs for the current row, not a historical one). Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts. exit_pressure_now_raw is the exact value. exit_pressure_now is the same number as a float, kept for older clients.

输入参数atBlockhistory_hours

1s_std_exit_quote

TSR Exit Quote

Get a pro-rata exit quote for retiring a number of a The Standard Reserve (TSR) charter's open Branches on Robinhood Chain: the gross share of owed production, the exit fee (read directly from the reserve contract for this exact amount, half burned, half redistributed), the net STANDARD to the wallet, and realizable_eth, an estimate of the ETH you'd actually get for selling that net STANDARD into the live pool, accounting for price impact and the sell tax. Requires charterId and branches (the number of open Branches to exit). Call 1s_std_charter first to see how many branches are open. Pass atBlock to price realizable_eth against a historical pool state instead of the latest one (the pending amount itself is always current). Fields ending in _raw are 18-decimal integers as strings; fields ending in _wad are also 18-decimal integers (the fee's own fixed-point convention). estimate:true and assumptions[] mark every response.

输入参数atBlockbranches必填charterId必填

1s_std_flow_charters

TSR Charter Holder Flow

Get The Standard Reserve (TSR) ETH/STANDARD pool buys and sells grouped by wallets that held at least one Charter at the exact block and log position of each swap. Current ownership is not applied retroactively, each swap is counted once even when its wallet held multiple Charters, and ambiguous multi-swap transactions are excluded rather than assigned to a guessed wallet. Filter with hours and limit. Fields ending in _raw are integer base-unit amounts returned as strings.

输入参数hourslimit

1s_std_flow_hourly

TSR Hourly Flow

Get The Standard Reserve (TSR)'s hourly ETH flow into and out of the ETH/STANDARD pool on Robinhood Chain, with swap counts and net flow per hour. Filter with hours (how many hours of history to return); the most recent hour may still be open and update as new swaps arrive. Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

输入参数hours

1s_std_genesis_live

TSR Genesis Mint Live

Get head-fresh stats on The Standard Reserve (TSR)'s genesis Dutch mint on Robinhood Chain: phase (allowlist/public/ended/finalized), total minted, remaining, current public price, sold in the last 30s/1m/5m, velocity, and a pace-implied sellout time and price. The sellout figure is a current-pace estimate, not a prediction. Read straight from the chain, refreshed every few seconds. Free.

无需输入参数。

1s_std_governance_changes

TSR Governance Changes

Get The Standard Reserve (TSR)'s governance history on Robinhood Chain: every param-change event across its 12 contracts (queued, applied, set, paused, unpaused, locked), newest first, plus what is currently queued but not yet applied, the state of the one-way/gated switches (transfers_enabled, launch_holding_cap_active, pool_manager_gate_enabled, launch_schedule_active), each contract's latest guardian pause state, and the address registry's own state (whether buyback ticks and POL pairing are open to the public, which periphery bindings are permanently locked, and the current executor/guardian/net flow source/genesis minter/owner addresses). Pass contract to filter to one contract_label. Values are decoded to a fraction when the param name makes the unit unambiguous (bps or wad); otherwise unit is "raw".

输入参数limitbeforecontract

1s_std_holders_concentration

TSR Holder Concentration

See how concentrated The Standard Reserve (TSR) Charter/Branch ownership is on Robinhood Chain: the distribution of open Branches per Charter, the top owners by Branches held and their share, a Herfindahl-Hirschman Index (HHI, a standard 0-10000 ownership-concentration score: higher means fewer wallets hold more of the total) of that ownership, and a genesis-vs-auction cohort split with retirement/revocation counts. Ownership figures cover live (not burned) Charters only; the cohort split covers every Charter, live and burned. concentration_hhi comes back null (not zero) when there are no live Branches to distribute.

输入参数top

1s_std_issuance_runway

TSR Issuance Runway

Get The Standard Reserve (TSR)'s issuance runway on Robinhood Chain: cumulative STANDARD issued so far against the Central Bank's issuance budget, the current per-second stream rate, budget remaining, and a same-state projection of when the budget runs out if that rate holds (`projected_end_at_current_multiplier`). `issuance_end_raw` is the contract's own measured end timestamp and is the authoritative figure; the projection can diverge from it once the policy multiplier changes, see 1s_std_policy_outlook. Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

无需输入参数。

1s_std_launchpad_token

TSR Launchpad Token Venues

Which Uniswap v4 pools does this launchpad token's venue policy forbid? Get one launchpad v2 token's URC-5 (Token Venue Policy) record on Robinhood Chain: its live mode (enforced or preferred), its official ("canonical") pools, and every Uniswap v4 pool that holds it. Each pool is marked canonical or off_list, with allowed_by_policy and in-range liquidity (the liquidity active at the current price, not total deposits). Enforced means routers that follow URC-5 must not use other v4 pools. Preferred means official pools are recommended and others are allowed. Before graduation a token lists no official pool, so an enforced token allows no v4 pool yet. launch.creator_venue_choice is what the creator picked at launch. It is not the live mode. Also returns policy history and a summary. An unknown token, including launchpad v1 launches and STANDARD itself, returns 404. If the data is too old the route answers 503 withheld instead of guessing. Values are the last snapshot reads at the block numbers shown, not live reads.

输入参数address必填

1s_std_launchpad_venues

TSR Launchpad Venue Check

Is this Uniswap v4 pool the token's official pool, and is it allowed? Chain-wide URC-5 (Token Venue Policy) view of launchpad v2 tokens on Robinhood Chain: counts of tokens by mode (enforced or preferred), pools, canonical and off-list pools, and off-list pools the token's policy does not allow, including how many of those hold liquidity. The list shows only off-list pools that are not allowed by default. Set scope=all for every pool, and page with before (the next_before cursor) and limit. Pass pool_id to look up one pool: pool_lookup answers per token, plus one overall answer that is the most restrictive of them. A pool can hold two launchpad tokens and is judged by each token's own policy. Before graduation a token lists no official pool, so v4 pools holding an ungraduated enforced token are off-list and not allowed. A row whose reads are too old is flagged stale, has no classification, and is counted as withheld. If even the newest read is too old the route answers 503 withheld. For one token's full record use 1s_std_launchpad_token. Values are the last snapshot reads, not live reads.

输入参数limitscopebeforepool_id

1s_std_license_bids

TSR License Auction Bids

List every standing bid on the Branch license auction of The Standard Reserve (TSR), on Robinhood Chain, read at one block. A bid is a standing order on a charter: a count (1 to 3) and a maximum unit price. Nothing is escrowed; a fill is paid from the charter's pending STANDARD, and fill() is a separate transaction that anyone may send. Each bid carries the contract's own fillable answer, the checks behind it, and a blocking list naming every failing check (price above max, daily supply used up, charter window or branch cap, insufficient pending, owner changed, charter burned). Stale bids are flagged and prunable. effective_crossing_price_raw is derived, and the response states its assumption. Bidder addresses are public chain state and are included. Optional charter_id, bidder, fillable_only and sort (max_desc or charter_id). Fields ending in _raw are 18-decimal integers as strings. It returns facts only and does not recommend an action.

输入参数sortbiddercharter_idfillable_only

1s_std_license_cost

TSR License Cost

Get what a Branch license actually costs in ETH right now for The Standard Reserve (TSR) on Robinhood Chain, and whether the charter auction is a cheaper path to the same outcome. Converts the current STANDARD-denominated license price to an estimated ETH cost via the STANDARD/ETH pool (a single-range price-impact estimate, plus the current buy tax, and the pool's own LP fee — pool_lp_fee_ppm, converted to lp_fee_bps — taken after the buy tax from the ETH going into the swap), compares it against the charter auction's own ETH price when that auction is live, and names the cheaper path in cheapest_path ("license", "charter", or "n/a"). Also expresses the license price in branch-days of issuance. This is an estimate (see assumptions), not a substitute for a live quote from the contracts. Fields ending in _raw are 18-decimal integers as strings.

无需输入参数。

1s_std_license_headroom

TSR License Headroom

Get how many more Branch licenses a The Standard Reserve (TSR) charter can still buy today on Robinhood Chain, read live from the License Auction contract (currentDay, purchasedOnDay), compared against the per-charter daily cap. Includes a live quote(n) ladder for buying 1 up to the remaining count (capped at 3), each returning the contract's own unit price and running total. The charter is verified to exist first: an unknown charterId returns a 404, and a burned charter returns a 409 instead of a quote. Requires charterId. Fields ending in _raw are 18-decimal integers as strings.

输入参数charterId必填

1s_std_policy_current

TSR Current Policy

Get The Standard Reserve (TSR)'s current monetary policy on Robinhood Chain: the current epoch number, regime (expansion or contraction), policy multiplier, net ETH flow, and the two-epoch signal, with time to the epoch boundary when known. Call this before interpreting exit-pressure or supply figures, since both are read against the active policy. Pass atBlock to get the epoch that was current at or before that block instead of the live one (time_to_close_seconds is omitted for a historical epoch). Regime, multiplier, issuance and net flow are only finalized once the current epoch settles on-chain; before that, this returns a live chain-read estimate instead of null, each tagged with a `_source` and `_basis`/`_note` field so you can tell a settled value from a provisional one (`regime_provisional` in particular is a sign-based guess, not what the contract itself reports). Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

输入参数atBlock

1s_std_policy_outlook

TSR Policy Outlook

Get The Standard Reserve (TSR)'s current-sign-holds outlook on Robinhood Chain: what the Central Bank's policy multiplier and issuance rate would be if the current epoch's net ETH flow sign holds all the way to close. This is a same-state projection, not a forecast: it changes the moment the underlying flow does, and the response always carries `projection` and `assumptions` naming what is held constant. Call 1s_std_policy_current first for the settled epoch history this projects from. Fields ending in _raw are 18-decimal integers as strings (multiplier and issuance figures are WAD-scaled, i.e. divide by 1e18). A null field means an input hasn't been read on-chain yet rather than a guessed value.

无需输入参数。

1s_std_pool

TSR Pool State

Get the latest state of The Standard Reserve (TSR)'s ETH/STANDARD Uniswap v4 pool on Robinhood Chain: price, tick, liquidity, reserves, remaining launch tax, and the pool's own LP fee (lp_fee_bps, converted from the on-chain pool_lp_fee_ppm). Also includes a USD price (price_usd_per_std, eth_usd_raw) derived from Chainlink's ETH/USD feed on Ethereum mainnet, null with usd_unavailable_reason set when that feed reading is missing or over an hour stale. May come back with serving_state=lagging when the indexer is behind; a request answers 503 if the data is too stale to serve at all. Pass atBlock to get the pool state at or before that block instead of the latest one (the serving_state/lag checks only apply to the live path).

输入参数atBlock

1s_std_protocol_flows

TSR Protocol Flows

List money movements by The Standard Reserve (TSR) protocol on Robinhood Chain, newest first in chain order. Filter with kind: holdings_migrated, taxes_forwarded, fees_recycled, team_claimed, pol_buyback, pol_fees_collected, pol_paired, incentive_sent, or vault_outflow. A pol_paired row is ETH the PolManager added to the pool as protocol-owned liquidity after swapping part of it to STANDARD; eth_amount is the ETH committed. A vault_outflow row is value that left the multisig-held reserve vault, in ETH or an ERC-20 token, with the method that moved it. A batched Safe transaction gets one row per send, told apart by sub_index. Page with limit and cursor: pass next_cursor from the previous response. An unknown kind or a malformed cursor returns an error. eth_amount, std_amount and token_amount are integers as strings. Divide by the token's decimals (1e18 for ETH and STANDARD, 1e6 for USDG) or read the matching *_dec field.

输入参数kindlimitcursor

1s_std_sbills_bills

TSR S-Bills

Get one The Standard Reserve (TSR) S-Bill by id, or list S-Bills filtered by owner and/or status, on Robinhood Chain: principal, premium, locked rate, maturity, settlement and how each closed. The single-bill form (pass billId) also returns the bill's full event history and live exit_quote/redeem_quote cross-checks when the bill is still active; the contract quotes a redemption only after maturity, so until then redeem_quote is null and redeem_quote_reason says why. The contract has no automatic roll; the owner must call roll after maturity. The list form is keyset-paginated on bill_id descending; pass the previous response's next_before back as before to fetch the next page. Fields ending in _raw are 18-decimal integers as strings.

输入参数limitownerbeforebillIdstatus

1s_std_sbills_current

TSR S-Bills Current Terms

Get The Standard Reserve (TSR) S-Bills staking terms right now, on Robinhood Chain: the rate per term and its simple APR at the live term length, drift state, principal locked, premium budget and escrow, caps, pause/close flags, and the early-exit fee window. exit.fee_estimates gives the estimated early-exit fee for four deposit sizes, checked against live quotes. S-Bills are fixed-term STANDARD staking: a deposit locks principal for one term at a per-term rate, with the premium escrowed up front. Rates are per term, not annual; check rate_basis and term_seconds before reading a number as an annual figure. The contract has no automatic roll; the owner must call roll after maturity. Fields ending in _raw are 18-decimal integers as strings; divide by 1e18 to get token amounts.

输入参数atBlock

1s_std_sbills_events

TSR S-Bills Event Feed

List decoded The Standard Reserve (TSR) S-Bills contract events on Robinhood Chain, newest first: deposits, early exits, redemptions, rolls, settlements, bonus distributions, rate changes and admin changes. Filter by eventName, bill_id, or owner, and paginate with before (a "block:log_index" cursor, exclusive) and limit. Fields ending in _raw are 18-decimal integers as strings.

输入参数limitownerbeforebill_ideventName

1s_std_sbills_quote

TSR S-Bill Stake Quote

Get a live quote for staking N whole STANDARD tokens into a new The Standard Reserve (TSR) S-Bill, on Robinhood Chain: the rate you would lock, the premium escrowed for you, and the rate after your deposit, read straight from the contract rather than from indexed state. Also reports whether caps, minimum deposit, pause, or budget would currently block the deposit, and exit_fee_estimate: an estimate of the early-exit fee if you left right after depositing, checked against live quotes. An early exit returns principal minus that fee; the premium and any stayer bonus are never paid out early. Rates are per term, not annual. amount is whole STANDARD tokens (not wei), as a decimal string. Pass wallet to also check the deposit against that wallet's open principal and its headroom under the per-wallet cap.

输入参数amount必填wallet

1s_std_sbills_rate_history

TSR S-Bill Rate History

See how The Standard Reserve (TSR) S-Bill rate has moved over time, on Robinhood Chain: every on-chain rate change (deposits, admin changes, pause) plus periodic drift samples, each tagged by source and carrying the term length in force at that point, oldest first. term_changes lists every admin term-length change in the window separately. Rates are per term, not annual. Fields ending in _wad are 18-decimal fractions as strings.

输入参数hours

1s_std_supply

TSR Supply Breakdown

Get The Standard Reserve (TSR)'s STANDARD supply ledger on Robinhood Chain: circulating supply, cumulative minted, cumulative burned by path (licenses, buybacks, fees), and max supply. burned_cum_raw counts every token sent to the burn address, including deposit conversions a later withdrawal re-mints; burned_forever_cum_raw is the permanent subset (public burn/burnFrom) and deposited_cum_raw is the re-mintable subset (CentralBank convertFrom), which together should equal burned_cum_raw; ledger_retired_cum_raw is a separate figure — unminted ledger value written off with no token movement (license payments, unrecycled fees) — that lowers max supply the same way a permanent burn does. Pass history_hours to get the supply ledger history instead of the latest row. For a time series of pool flow instead of a supply snapshot, use 1s_std_flow_hourly. Pass atBlock to get the supply ledger row at or before that block instead of the latest one (ignored when history_hours is set). The latest row also carries a `stimulus` object for the one-time charter stimulus: STANDARD funded, claimed, swept and still unclaimed, plus the claim `deadline`. Unclaimed STANDARD is part of circulating supply. The object is null when atBlock is set. Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

输入参数atBlockhistory_hours

1s_std_tax_schedule

TSR Tax Schedule

Get The Standard Reserve (TSR)'s launch tax-hook schedule on Robinhood Chain: the measured current buy/sell tax in basis points, the decay configuration, floor_reached_at (when the tax reaches its permanent floor), and — only while the launch schedule is active and not overridden by governance — a labeled +5m/+15m/+30m projection computed from the chain's own decay-curve constants. freshness_basis says what the response's freshness is measured against: snapshot_pass_marker is the normal case, stamped only after every hook read this response uses succeeds together in one pass, so a tax rate that stopped changing (post-floor) still reads as fresh rather than stale; constants_read_at is a fallback for when that marker isn't available yet. Projections are estimates, not a guarantee: they assume no governance change before the horizon.

无需输入参数。

1s_std_vaults

TSR Vault Balances

Get The Standard Reserve (TSR)'s Expansion and Contraction vault balances on Robinhood Chain: vault ETH, POL manager idle balances, principal ETH/STANDARD deployed in its two direct Uniswap v4 positions, uncollected position fees, total POL-controlled balances, and buyback capacity. Pass history_hours to get the vault snapshot history instead of the latest snapshot, or atBlock to get the snapshot at or before that block (ignored when history_hours is set). Fields ending in _raw are 18-decimal integers as strings. Divide by 1e18 to get token amounts.

输入参数atBlockhistory_hours

1s_std_wallet

TSR Wallet Position

Get one wallet's full The Standard Reserve (TSR) position on Robinhood Chain: every Charter it holds with that Charter's pending owed STANDARD (the last-indexed checkpoint, not a live re-read), a total-owed sum, a summary exit quote (the pro-rata resolution-fee math the exit-quote route itself owns, summed across every Charter's full open-Branch count), the wallet's dormancy record with an estimated time until it becomes reportable for the dormancy bounty, and each Charter's license-purchase headroom for today. Each Charter and the wallet as a whole also carry a `stimulus` object for the one-time charter stimulus: STANDARD claimable now and already claimed. The claim deadline is in the `deadline` field of the stimulus object. The charter's current owner claims it. Charter transfers are disabled on chain today, so that is the wallet holding the charter. A full exit forfeits an unclaimed stimulus (confirmed by simulation). Fields ending in _raw are 18-decimal integers as strings; divide by 1e18 for token amounts. charter_drops rolls the same launchpad drop shares up over every Charter: claimable, still locked (open branches, or an at_exit drop that pays only when the charter has none), and how many Charters should call noteOwner before closing their last branch. Values come in launch tokens, then pair stock, then ETH when priced. When the wallet held a charter that was revoked for dormancy and has a refund, burned_charter_claim shows that allocation: claimable now, claimed or not, the deadline and which charters it covers. It is one amount for the wallet, and only this wallet can claim it. The block is absent otherwise.

输入参数address必填

1s_search_docs

Search Docs

Search the OneSource developer documentation by keyword and return the best-matching sections. Use this for conceptual questions — getting started, guides, concepts, how-tos. For the parameters and response of one specific endpoint, use 1s_get_endpoint_reference instead. Free, no authentication required.

输入参数query必填

1s_get_api_overview

API Overview

High-level summary of the OneSource REST API: how many operations it exposes, the tags they are grouped under, the networks it routes, the payment protocols it accepts, and a handful of sample endpoints. Start here when you do not yet know what the API covers. Free, no authentication required.

无需输入参数。

1s_list_endpoints

List Endpoints

List OneSource REST API endpoints with their method, path, per-call price, and a one-line summary. Pass a tag to narrow the list to one area of the API. Free, no authentication required.

输入参数taglimitfamily

1s_get_endpoint_reference

Endpoint Reference

Full reference for a single OneSource REST API endpoint: parameters, request body, example response, price, use cases, and a ready-to-run curl command. Accepts an operation ID or a path. Use 1s_list_endpoints or 1s_search_use_cases first if you do not know which endpoint you need. Free, no authentication required.

输入参数endpoint必填

1s_search_use_cases

Find Endpoint by Task

Find the OneSource REST API endpoints that fit a task described in plain language (for example "check who owns an NFT" or "decode a transaction"). Use this when you know what you want to do but not which endpoint does it. Free, no authentication required.

输入参数limitquery必填

1s_list_networks

Documented Networks

List the networks the OneSource REST API can route to, as declared by its published specification, and how to select one on a call. This is the documented roster; 1s_network_info queries a chain live. Free, no authentication required.

无需输入参数。

1s_get_payment_info

Pricing & Payment

Pricing and payment protocols for the OneSource REST API — which rails it accepts, the price range per call, and the recipient address. Pass an endpoint for that endpoint's specific price. This describes what the API charges; 1s_batch_config changes what this server pays with. Free, no authentication required.

输入参数endpoint

1s_get_authentication_guide

Authentication Guide

How to authenticate to the OneSource REST API — an API key from a subscription, x402 (USDC on Base), or MPP (USDC.e or pathUSD on Tempo) — and how to choose between them. This covers calling the REST API directly; to configure this MCP server, call 1s_setup_check. Free, no authentication required.

无需输入参数。

1s_setup_check

Setup Check

Interactive setup & health check for the OneSource MCP server. Returns a step-by-step setup script that the AGENT must run by consulting the user: it walks through EVERY configuration choice for BOTH payment rails (auth method, API key, x402 on Base, MPP on Tempo, payment modes, channel preferences) one decision at a time, every time it is run — even when everything is already configured, so the user can review and adjust without touching env vars or config files directly. Also reports version, auth status, channel status, and connectivity. Free, no authentication required. Call this first to set up, to change configuration, or to troubleshoot.

无需输入参数。

1s_batch_config

Payment Config

View or change payment preferences and save them so they persist across restarts — no MCP config editing or restart required. Call with no arguments to see current settings. Set "prompt" (ask/auto/off — agent autonomy when switching to a cheaper channel mode), "threshold" (anticipated calls before a channel is worth it), "deposit_multiplier" (x402 channel deposit = call price × this; applies to the next channel opened), "mpp_max_deposit" (MPP session channel deposit cap, in tokens), or "mode" (the default rail+scheme — x402-exact / x402-batch / mpp-charge / mpp-session — also switched live for this session). Pass "reset": true to restore defaults. With an API key, calls are covered by your plan.

输入参数moderesetpromptthresholdmpp_max_depositdeposit_multiplier

1s_report_bug

Report Bug

Report a bug or issue to the OneSource team. Use when a tool returns an unexpected error or when the user asks to report a problem. Free, no payment required.

输入参数networkseveritytool_namedescription必填error_messagesteps_to_reproduce

版本历史

13
  1. v5.24.0最新Oct 29, 2026
  2. v5.23.1Oct 17, 2026
  3. v5.23.0Oct 5, 2026
  4. v5.22.0Oct 2, 2026
  5. v5.21.0Oct 1, 2026
  6. v5.20.0Sep 24, 2026
  7. v5.19.1Sep 23, 2026
  8. v5.19.0Sep 22, 2026
  9. v5.18.0Sep 21, 2026
  10. v5.17.0Sep 19, 2026
  11. v5.16.0Sep 18, 2026
  12. v5.15.0Sep 17, 2026
  13. v5.14.0Sep 16, 2026

评分

已满足适用检查项的 80%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分
  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分

    请在仓库或注册中心条目中声明许可证。

其他 Source 集成