← The evidence ledger
Evidence row 1033592
Observed , by probe.mcp/1.
- Kind
- mcp.tools
- About
- endpoint 3c0595dc-99c7-4de3-8fae-5e0926f7b8c3
- Recorded
- Previous row
- #309439
- Body SHA-256
- 56bd86c93a68853f5a6d26134c1e39b8b28e9477b8c9f96785b69a4347a2ce04
- Leaf
- 0xc1a1aee50efa592f7fe461cabcc02edba0035ee4831d157b0002c84a3c5c12a8
What was observed
{
"count": 17,
"tools": [
{
"description": "Use this when the user asks to cancel a resting or trigger order by its oid (from get_my_open_orders).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"order_id": {
"description": "The Hyperliquid order id (oid) to cancel — see get_my_open_orders",
"type": "integer"
}
},
"required": [
"order_id"
],
"type": "object"
},
"name": "cancel_order"
},
{
"description": "Use this when the user asks to close (fully or partially) an open Hyperliquid position. Risk-reducing: works whenever agent trading is armed.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"size": {
"description": "Partial close size in coins. Omit to close the entire position",
"exclusiveMinimum": 0,
"type": "number"
},
"symbol": {
"description": "Coin symbol of the open position, e.g. BTC",
"type": "string"
}
},
"required": [
"symbol"
],
"type": "object"
},
"name": "close_position"
},
{
"description": "Use this when the user wants OHLCV candle history for a Hyperliquid perp market (for analysis or charting).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"interval": {
"default": "1h",
"description": "Candle interval",
"enum": [
"1m",
"3m",
"5m",
"15m",
"30m",
"1h",
"2h",
"4h",
"8h",
"12h",
"1d",
"3d",
"1w",
"1M"
],
"type": "string"
},
"limit": {
"default": 100,
"description": "Number of candles",
"maximum": 500,
"minimum": 1,
"type": "integer"
},
"symbol": {
"description": "Coin symbol, e.g. BTC",
"type": "string"
}
},
"required": [
"symbol"
],
"type": "object"
},
"name": "get_candles"
},
{
"description": "Use this when the user asks which perpetual markets are tradable on MCPify (Hyperliquid), or for a market overview with prices, 24h change, volume, funding and max leverage.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 50,
"description": "Max rows",
"maximum": 200,
"minimum": 1,
"type": "integer"
},
"search": {
"description": "Filter by symbol substring, e.g. BTC",
"type": "string"
},
"sort": {
"default": "volume",
"description": "Sort order",
"enum": [
"volume",
"change",
"symbol"
],
"type": "string"
}
},
"type": "object"
},
"name": "get_markets"
},
{
"description": "Use this when the user asks about THEIR MCPify account: balance, withdrawable, open positions with PnL and liquidation prices, and whether agent trading is armed.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "get_my_account"
},
{
"description": "Use this when the user asks how to deposit or fund their MCPify / Hyperliquid account. Returns THEIR personal deposit addresses (USDC or ETH on Arbitrum One, USDC or SOL on Solana) with minimums, fees and arrival times; everything sent there is credited to the user's own Hyperliquid account. Read-only: it never moves money, and there is no withdraw tool. Give the user only these exact addresses.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "get_my_deposit_addresses"
},
{
"description": "Use this when the user says they sent a deposit or asks where their money is. Lists their deposits in progress (each step, and exactly what to send if one is waiting below the minimum) and their recent finished deposits (sent → swapped → fee → credited). Calling it also makes MCPify check the user's deposit addresses every few seconds for the next few hours, so a fresh transfer shows up fast.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 10,
"description": "How many finished deposits to include, newest first. Deposits still in progress are always all listed",
"maximum": 50,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_my_deposits"
},
{
"description": "Use this when the user asks for their open/resting orders on Hyperliquid (including TP/SL trigger orders). Returns each order's oid for cancellation.",
"inputSchema": {
"properties": {},
"type": "object"
},
"name": "get_my_open_orders"
},
{
"description": "Use this when the user asks what orders were placed through MCPify (our audit records, including which source placed them: web, mcp agent, admin) — successes and rejections alike.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"action": {
"description": "Filter by action",
"enum": [
"open",
"close",
"tpsl",
"cancel"
],
"type": "string"
},
"limit": {
"default": 25,
"description": "Number of records",
"maximum": 100,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_my_order_records"
},
{
"description": "Use this when the user asks about their open positions, or before closing a position or moving its stop-loss / take-profit. Returns each position's side, size, entry, mark and liquidation price, leverage, margin, unrealized PnL, and the take-profit and stop-loss orders protecting it right now (with their order ids). Pass symbol for one coin.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"symbol": {
"description": "Only the position in this coin, e.g. BTC, SOL, xyz:TSLA. Omit for every open position.",
"type": "string"
}
},
"type": "object"
},
"name": "get_my_positions"
},
{
"description": "Use this when the user asks for their recent fills/executions on Hyperliquid (live venue truth: price, size, fee, realized PnL).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"limit": {
"default": 25,
"description": "Number of fills",
"maximum": 100,
"minimum": 1,
"type": "integer"
}
},
"type": "object"
},
"name": "get_my_trade_history"
},
{
"description": "Use this when the user wants the live order book (bids/asks) for a Hyperliquid perp market.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"depth": {
"default": 10,
"description": "Levels per side",
"maximum": 50,
"minimum": 1,
"type": "integer"
},
"symbol": {
"description": "Coin symbol, e.g. BTC",
"type": "string"
}
},
"required": [
"symbol"
],
"type": "object"
},
"name": "get_orderbook"
},
{
"description": "Use this when the user asks the current price of a specific coin on Hyperliquid (mark price, 24h change, volume, funding).",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"symbol": {
"description": "Hyperliquid perp coin symbol, e.g. BTC, ETH, xyz:TSLA (not BTCUSDT)",
"type": "string"
}
},
"required": [
"symbol"
],
"type": "object"
},
"name": "get_price"
},
{
"description": "Use this when the user explicitly asks to open a perp position or place an order on Hyperliquid via MCPify. Real funds — ALWAYS call preview_order with the same arguments first, show the user the proposal, and get their explicit confirmation; place_order is refused unless a matching preview ran within the last 10 minutes. Requires Agent Trading enabled on the MCPify settings page.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"leverage": {
"default": 5,
"description": "Leverage multiplier",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"limit_price": {
"description": "Required when order_type is limit",
"exclusiveMinimum": 0,
"type": "number"
},
"margin_mode": {
"default": "cross",
"description": "Margin mode",
"enum": [
"cross",
"isolated"
],
"type": "string"
},
"margin_usd": {
"description": "USDC margin to commit. Position notional = margin × leverage",
"minimum": 1,
"type": "number"
},
"order_type": {
"default": "market",
"description": "Execution type",
"enum": [
"market",
"limit"
],
"type": "string"
},
"side": {
"description": "Position direction",
"enum": [
"long",
"short"
],
"type": "string"
},
"stop_loss": {
"description": "Stop-loss trigger price",
"exclusiveMinimum": 0,
"type": "number"
},
"symbol": {
"description": "Hyperliquid perp coin symbol, e.g. BTC, ETH, SOL (not BTCUSDT)",
"type": "string"
},
"take_profit": {
"description": "Take-profit trigger price",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"symbol",
"side",
"margin_usd"
],
"type": "object"
},
"name": "place_order"
},
{
"description": "Use this when the user wants to deposit a specific amount: returns the exact address to send it to and how much USDC will be credited to their own Hyperliquid account (exact for USDC; for ETH/SOL an estimate at today's price plus a guaranteed minimum; after Hyperliquid's one-time 1 USDC activation fee on a first deposit) — or explains why an amount is below the minimum. Read-only: nothing is sent, reserved or signed. After the user sends, call get_my_deposits to follow it.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"amount": {
"description": "How much of that asset the user plans to send, in the asset's own units (100 = 100 USDC, 0.05 = 0.05 ETH)",
"exclusiveMinimum": 0,
"maximum": 100000000,
"type": "number"
},
"asset": {
"description": "What the user will send. USDC on Arbitrum must be native USDC (not USDC.e); USDT is not accepted",
"enum": [
"USDC",
"ETH",
"SOL"
],
"type": "string"
},
"network": {
"description": "The network the user sends on: arbitrum = Arbitrum One, solana = Solana. USDC works on both, ETH only on arbitrum, SOL only on solana",
"enum": [
"arbitrum",
"solana"
],
"type": "string"
}
},
"required": [
"asset",
"network",
"amount"
],
"type": "object"
},
"name": "preview_deposit"
},
{
"description": "Use this BEFORE place_order whenever the user wants to open a position: it validates and sizes the order (fresh est. entry, size after rounding, est. liquidation, TP/SL sanity, MCP caps) WITHOUT placing anything, and shows a proposal card the user can confirm from. Read-only and always safe to call. If the user confirms, call place_order with the same arguments.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"leverage": {
"default": 5,
"description": "Leverage multiplier",
"maximum": 100,
"minimum": 1,
"type": "integer"
},
"limit_price": {
"description": "Required when order_type is limit",
"exclusiveMinimum": 0,
"type": "number"
},
"margin_mode": {
"default": "cross",
"description": "Margin mode",
"enum": [
"cross",
"isolated"
],
"type": "string"
},
"margin_usd": {
"description": "USDC margin to commit. Position notional = margin × leverage",
"minimum": 1,
"type": "number"
},
"order_type": {
"default": "market",
"description": "Execution type",
"enum": [
"market",
"limit"
],
"type": "string"
},
"side": {
"description": "Position direction",
"enum": [
"long",
"short"
],
"type": "string"
},
"stop_loss": {
"description": "Stop-loss trigger price",
"exclusiveMinimum": 0,
"type": "number"
},
"symbol": {
"description": "Hyperliquid perp coin symbol, e.g. BTC, ETH, SOL (not BTCUSDT)",
"type": "string"
},
"take_profit": {
"description": "Take-profit trigger price",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"symbol",
"side",
"margin_usd"
],
"type": "object"
},
"name": "preview_order"
},
{
"description": "Use this when the user asks to set or move the take-profit and/or stop-loss of an open Hyperliquid position. Only the legs you pass change: passing just stop_loss moves the stop and keeps the current take-profit (and vice versa). To remove a leg, cancel its order id from get_my_positions.",
"inputSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"stop_loss": {
"description": "New stop-loss trigger price. Omit to leave the current stop-loss as it is",
"exclusiveMinimum": 0,
"type": "number"
},
"symbol": {
"description": "Coin symbol of the open position, e.g. BTC",
"type": "string"
},
"take_profit": {
"description": "New take-profit trigger price. Omit to leave the current take-profit as it is",
"exclusiveMinimum": 0,
"type": "number"
}
},
"required": [
"symbol"
],
"type": "object"
},
"name": "set_position_tp_sl"
}
]
}What the leaf hashes
{"body":"56bd86c93a68853f5a6d26134c1e39b8b28e9477b8c9f96785b69a4347a2ce04","id":1033592,"kind":"mcp.tools","method":"probe.mcp/1","observed_us":1793288819319004,"prev":309439,"subject":"3c0595dc-99c7-4de3-8fae-5e0926f7b8c3","subject_kind":"endpoint"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (242798 rows).
- 0xc1a159d76a304d83285abe4df6527b1deb62767236dba012d5d3b6e0a6b02156
- 0x94af1be8179febaaa50a4e1a34752e63daacb6b0b3f1f1de452a407f04da7dca
- 0x3dfff30d80f82b629fd9e8bb05643a3dcf93a2556508c8be7ab77ee76052540b
- 0x51f915fc42220756f1f4501ba19419bbada725e75c8c026b60e470d43fbebaa8
- 0x226c4a1bdad8fac28db1b48b51c94dcde7aaf01ccc93ff28e3d5a76c6d109aa0
- 0x6bc6541f04b5b3bfd750d02e2b653d288032c43cb8e3d2fcf69d10c460f94f3a
- 0x7d2499b6f852ac24fce9a6f8ada143dd080f8f7ebaba6043878e06b8c39f01ca
- 0x947831a31d70fd1450f8b95a08383773122b9b9cf38365b34224b83c3f0411c5
- 0x8a5c6af8acf43885148fcc8f4bfcdb2fd896221d55aa6df46c17c2488f082d7c
- 0x3b05df8a4fca6b5fde0ffa011321c4589c793a48be8b1cf79a356749705cb35d
- 0x704b2150ece243f2165c010d9d1f8f55e730cb8cefc482fe71854d79f2ec09e8
- 0xea3d6fc094e0e5aea74bd6048efd6e9e2b6ad5889c97c5ddbb2aa6b7e55cf6f8
- 0x855b0c7846554d66c3c7ea55cacc771607f9f991cc0c6e60b0c560e5e253a4e0
- 0x104600713bd70fcbdf137fa07f8136bb6c252c890776bc7cbd7b194271f8b93a
- 0x4e4f8f228a3b7a38299ec6f2b1967c6cf4de15fdd9dc0d200e691266e51ef99d
- 0xef5d5572aac8f06b61579b7167b369fcb479d9027d4037dc9cacff9e3a26ffd2
- 0xa1fa2e97e71ad6e802f325afd74bb7095901f2060529c9739182a1233f8804bc
- 0xe01539ac4c9f9cdf265a9e5c6d99c8da11e70ff0c7175fb23e402d33b9d79785
- Day root
- 0xc050555c6b023f2aefb6536efb9f0760b92c30a0d06c572b7daf63db259ea17c
- Chained
- 0x4cde8bae2042512e1bec11650628f0293556311cc4ea74d99ffddf02b671a7d6
- Published
- On Arc Testnet, block 69753317: 0x9e85c340732f416e431b111fae72f7624870125f7f379af2732eb6c2ba8cf6a1