Papertrade AI

Tool reference

Every Papertrade AI tool with its inputs, access level and safety annotations. Markets, charts, liquidation maps, leaderboards, wallet analytics, previews and guarded trading.

Papertrade AI exposes 18 tools. Every tool returns a one-line summary the model can relay and a structured data object. Public tools also work over the REST API and the unauthenticated endpoint https://papertrade-ai.ninabrekkerese.workers.dev/public/mcp.

ToolWhat it doesAccess
get_marketsMarketspublic
get_price_chartPrice chartpublic
get_protocol_statsProtocol statspublic
get_liquidation_mapLiquidation mappublic
get_leaderboardLeaderboardpublic
get_top_tradesTop tradespublic
get_recent_tradesRecent tradespublic
get_accountAccountpublic
get_trade_historyTrade historypublic
get_portfolio_historyPortfolio historypublic
calculate_positionPosition calculatorpublic
get_deposit_infoDeposit instructionspublic
get_trading_permissionsTrading permissionspublic
preview_tradePreview tradetrading session
open_positionOpen positiontrading session
close_positionsClose positionstrading session
cancel_intentCancel intenttrading session
get_intent_statusIntent statuspublic

Markets and analytics#

No wallet needed.

get_markets#

Markets. Live Papertrade perp markets (BTC, ETH): Hyperliquid mark/bid/ask, 24h change, Papertrade 24h volume, open interest vs caps, max leverage, minimum trade size and whether each market is open. Call this before trading.

No inputs.

get_price_chart#

Price chart. OHLCV candles for BTC or ETH from Hyperliquid (the price source Papertrade settles against), with range stats and a TradingView link.

InputTypeRequiredDefaultDescription
marketBTC, ETHyesMarket symbol: BTC or ETH.
interval1m, 3m, 5m, 15m, 30m, 1h, 2h, 4h, 8h, 12h, 1d, 3d, 1w, 1Mno"15m"Candle interval.
countinteger 10 to 500no96Number of candles.

get_protocol_stats#

Protocol stats. Papertrade protocol analytics: TVL, margin, LP, lifetime volume, open positions, fees, PAPER supply and staking, plus daily history (volume, trader PnL, liquidations, users).

InputTypeRequiredDefaultDescription
daysinteger 1 to 365no14Days of daily history to include.

get_liquidation_map#

Liquidation map. Where open Papertrade positions get liquidated: notional and position count of longs and shorts by price bucket around the current price, with the largest clusters.

InputTypeRequiredDefaultDescription
marketBTC, ETHyesMarket symbol: BTC or ETH.

get_leaderboard#

Leaderboard. Papertrade trader leaderboard for a time window, sortable by PnL, volume, balance and more. Search by name or address with q.

InputTypeRequiredDefaultDescription
window24h, 7d, 30d, allno"24h"
sortKeyrank, address, lastActiveTs, totalWindowedPnl, realizedPnl, currentUnrealizedPnl, currentBalance, currentQueued, currentOpenNotional, totalVolume, paperTotal, currentOpenPositionCountno"rank"
sortDirasc, descno"asc"
pageinteger 0 to 1000no00-based page; 25 rows per page.
qstringnoFilter by leaderboard name or address.

get_top_trades#

Top trades. The most profitable individual Papertrade positions in a window: who, market, side, leverage, entry, exit and PnL.

InputTypeRequiredDefaultDescription
window24h, 7d, 30d, allno"24h"

get_recent_trades#

Recent trades. The latest opens, closes and liquidations across all of Papertrade, optionally filtered by market or wallet.

InputTypeRequiredDefaultDescription
marketBTC, ETHnoMarket symbol: BTC or ETH.
walletaddressno

Accounts#

Any wallet by address, or the connected wallet by default.

get_account#

Account. A Papertrade account: free balance, locked margin, equity, every open position with live estimated PnL, bust price and distance to liquidation, pending intents, session keys and lifetime stats. Any wallet can be inspected.

InputTypeRequiredDefaultDescription
walletaddressnoWallet address (0x...). Defaults to the connected wallet.

get_trade_history#

Trade history. Closed and liquidated positions for a wallet, newest first, with entry, exit, settled PnL, fees and PAPER minted.

InputTypeRequiredDefaultDescription
walletaddressnoWallet address (0x...). Defaults to the connected wallet.
pagesinteger 1 to 10no1Pages of 75 trades.

get_portfolio_history#

Portfolio history. Equity curve for a wallet over 1h, 1d, 1w or all time.

InputTypeRequiredDefaultDescription
walletaddressnoWallet address (0x...). Defaults to the connected wallet.
range1h, 1d, 1w, allno"1d"

get_deposit_info#

Deposit instructions. How to fund a Papertrade account: the wallet's personal deposit proxy address (USDC on HyperCore spot), minimums, the activation fee, and the wallet's current HyperEVM USDC/HYPE balances. Read-only; it never moves funds.

InputTypeRequiredDefaultDescription
walletaddressnoWallet address (0x...). Defaults to the connected wallet.

get_trading_permissions#

Trading permissions. What this connection may do: connected wallet, whether a trading session is active and when it expires, the guardrails the owner set, and how much of the daily limit is used.

No inputs.

Planning#

Pure math with live prices.

calculate_position#

Position calculator. Pure math for a hypothetical position: bust price, liquidation distance and settled PnL at a target exit, using the exchange formula (win curve, deadband, 2% win fee). Does not need a wallet.

InputTypeRequiredDefaultDescription
marketBTC, ETHyesMarket symbol: BTC or ETH.
sidelong, shortyeslong profits if price rises, short if it falls.
marginUsdnumber > 0yes
leverageinteger 1 to 1000yes
entryPricenumber > 0noDefaults to the live ask (long) or bid (short).
exitPricenumber > 0noTarget exit to evaluate.

Trading#

Previewing, opening, closing and cancelling need a trading session approved by the wallet owner, with guardrails enforced on the server. Intent status is public.

preview_trade#

Preview trade. Step 1 of 2 for opening a position. Checks the trade against exchange limits, the account balance and the owner guardrails, estimates entry, bust price and PnL scenarios, and returns a quoteId valid for 3 minutes. Show the preview to the user and get an explicit yes before calling open_position with the quoteId.

InputTypeRequiredDefaultDescription
marketBTC, ETHyesMarket symbol: BTC or ETH.
sidelong, shortyeslong profits if price rises, short if it falls.
marginUsdnumber > 0yesUSD margin to commit (the most you can lose).
leverageinteger 1 to 1000yes

open_position#

Open position. Step 2 of 2: opens a real Papertrade position with the user's funds, signed by the delegated session key. Requires the quoteId from preview_trade for the identical market, side, margin and leverage, and only after the user explicitly confirmed. Waits for settlement and reports the fill.

InputTypeRequiredDefaultDescription
marketBTC, ETHyesMarket symbol: BTC or ETH.
sidelong, shortyeslong profits if price rises, short if it falls.
marginUsdnumber > 0yes
leverageinteger 1 to 1000yes
quoteIdstringnoFrom preview_trade. Required when the owner enabled confirmations (the default).

close_positions#

Close positions. Closes open positions at the market, signed by the session key. Pass positionIds, or all=true optionally narrowed by market. Confirm with the user before closing. Reports each settled result.

InputTypeRequiredDefaultDescription
positionIdsarray of stringno
allbooleannoClose every open position (optionally only in market).
marketBTC, ETHnoMarket symbol: BTC or ETH.

cancel_intent#

Cancel intent. Cancels a submitted intent that is still queued (not yet executed).

InputTypeRequiredDefaultDescription
intentIdstringyes

get_intent_status#

Intent status. Whether a submitted intent is still queued, has produced an open position, or is no longer pending.

InputTypeRequiredDefaultDescription
intentIdstringyes
walletaddressnoWallet address (0x...). Defaults to the connected wallet.
Edit this page on GitHub