Rubin Exchange

Rubin: self-custody DEX for crypto perpetuals & spot - trade, read positions, orders, balances.

我該用這個嗎

品質與安全性

B
說明品質
99%
結構描述完整度
69%
命名品質
95%
汙染風險
80%
權限相符程度
100%
協定合規性
100%

發現項目(2)

  • HIGHTool poisoning patterns detected
  • INFOTool description contains placeholder or incomplete text在 get_news 中

根據工具定義與協定合規性的自動化分析。

上下文成本

~6,399Token(工具定義)
~1.0 KB典型回應大小
顯著的注意力影響(128k 上下文的 5.00%)

這是每次將伺服器的工具載入模型上下文時所消耗的約略 token 數量。數量越高,可用於其他工作的注意力就越少。

安裝

一鍵安裝

將以下內容加入你的 `claude_desktop_config.json` 檔案:

{
  "mcpServers": {
    "exchange": {
      "url": "https://mcp.mainnet.rubin.trade/mcp"
    }
  }
}

遠端端點

https://mcp.mainnet.rubin.trade/mcpstreamable-http

它能做什麼

工具清單

工具(33)

🟢 唯讀🟡 寫入🔴 刪除⚪ 未知
🟢whoami

Report what this session controls: the master account (its address in BOTH forms — cosmos rit1… and EVM 0x…, the same 20 bytes), the subaccount, whether it can trade or is read-only, and the exact on-chain authorization scope (which messages, which subaccount, and that it CANNOT withdraw/transfer). Also states what this session can NOT do: create wallets, reveal keys/mnemonics, or switch accounts. Call this first, and use it to answer "what is my address?".

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_block_height

Return the latest chain block height. Useful for SHORT_TERM order goodTilBlock math.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢list_markets

List all perpetual markets with ticker, status and oracle price. Use this first to discover valid market tickers (e.g. BTC-USD) before placing orders.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_market(market)

Get details for one perpetual market (clobPairId, atomicResolution, quantumConversionExponent, tick/step sizes, oracle price, status).

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    }
  },
  "required": [
    "market"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_orderbook(market, depth)

Get the live orderbook (bids/asks) for a market, optionally truncated to a depth.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "depth": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100,
      "description": "Max levels per side"
    }
  },
  "required": [
    "market"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_candles(market, resolution, fromISO, toISO, limit)

Get OHLCV candles for a market at a given resolution. Useful for trend/volatility analysis.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "resolution": {
      "type": "string",
      "enum": [
        "1MIN",
        "5MINS",
        "15MINS",
        "30MINS",
        "1HOUR",
        "4HOURS",
        "1DAY"
      ],
      "description": "Candle resolution"
    },
    "fromISO": {
      "type": "string",
      "description": "ISO 8601 start time"
    },
    "toISO": {
      "type": "string",
      "description": "ISO 8601 end time"
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    }
  },
  "required": [
    "market",
    "resolution"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_candles_multi(market, resolutions, limit)

Get recent OHLCV candles for a market across MULTIPLE resolutions in one call — by default ALL indexer resolutions (1MIN, 5MINS, 15MINS, 30MINS, 1HOUR, 4HOURS, 1DAY) — so the agent can read the trend across timeframes at once. Returns { candles: { <resolution>: [...] } }, newest first. Lower `limit` (e.g. 20) or pass a `resolutions` subset to keep the payload small.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "resolutions": {
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "1MIN",
          "5MINS",
          "15MINS",
          "30MINS",
          "1HOUR",
          "4HOURS",
          "1DAY"
        ]
      },
      "description": "Subset of resolutions (default: all indexer resolutions)."
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 200,
      "description": "Candles per resolution (default 50, most recent)."
    }
  },
  "required": [
    "market"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_balance

Get the subaccount collateral (USDC asset position) and the on-chain wallet bank balances. Collateral is what backs trading; the WALLET balance is where money sent to the account lands and is NOT collateral until deposited. `funding` summarizes it: depositableUsdc (wallet minus the $0.95 gas reserve) and a suggestedAction — deposit_to_subaccount when the wallet holds spare USDC, top_up_gas when gas is low.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_equity

Get the subaccount summary: equity, freeCollateral, marginEnabled, open perpetual positions and asset positions.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_positions(status)

Get perpetual POSITIONS with size, side, entryPrice, unrealizedPnl, realizedPnl and netFunding. Defaults to OPEN positions. NOTE: a position is what you HOLD after an order fills — it is NOT an open order. When the user asks loosely "what is open?", check BOTH this and get_open_orders (or call get_portfolio for both at once).

輸入結構描述

{
  "type": "object",
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "OPEN",
        "CLOSED",
        "LIQUIDATED"
      ],
      "description": "Position status filter"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_open_orders(market, side, limit)

Get currently active ORDERS for the subaccount, optionally filtered by market and side. Includes OPEN resting orders and UNTRIGGERED conditional orders (TP/SL accepted on-chain but not yet triggered). Returns { orders: [...] }. This does NOT include filled positions — a filled market/limit order leaves NO open order, it becomes a POSITION (see get_positions). When there are 0 orders but open positions exist, the result carries a `note` pointing you there.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker filter, e.g. BTC-USD"
    },
    "side": {
      "type": "string",
      "enum": [
        "BUY",
        "SELL"
      ]
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_portfolio

One-call snapshot of everything the account has "open": equity & freeCollateral, every open POSITION (with notional, unrealized PnL and estimated liquidation price), every active ORDER (resting + untriggered TP/SL), and account margin risk. Use this to answer "what do I have open?" or "how am I doing?" without worrying whether the user means orders or positions — it returns both.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_position_risk

Margin health for the subaccount: equity, freeCollateral, total maintenance/initial margin, maintenanceMarginBufferUsd (the EXACT liquidation guard — liquidatable when < 0), marginUsageRatio (1.0 = at liquidation), account leverage, and per-position estimated liquidation price + distance to it. Use before adding risk or to decide whether to protect/close a position.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_fills(market, limit, page)

Get executed fills for the subaccount, including price, size, fee and maker/taker liquidity.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker filter, e.g. BTC-USD"
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100
    },
    "page": {
      "type": "integer",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_pnl(limit, createdOnOrAfter, page)

Get historical PnL ticks for the subaccount (equity, totalPnl, netTransfers over time). Use createdOnOrAfter to bound the range.

輸入結構描述

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 1000
    },
    "createdOnOrAfter": {
      "type": "string",
      "description": "ISO 8601 lower bound"
    },
    "page": {
      "type": "integer",
      "exclusiveMinimum": 0
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_funding_status

Where the account's USDC sits: in the WALLET (bank balance — money sent to the account lands here and is NOT collateral) vs in the trading SUBACCOUNT (equity / free collateral). Returns depositableUsdc (wallet minus the $0.95 gas reserve), whether gas is low, and a suggestedAction (deposit_to_subaccount / top_up_gas / null). Call this when the user says they sent funds, when collateral reads 0, or before any funding decision.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪deposit_to_subaccount(amountUsd)

Deposit USDC from the account's WALLET into its trading SUBACCOUNT so it becomes collateral. Without amountUsd it moves everything above the $0.95 gas reserve (what the web app does); with amountUsd it moves exactly that much, as long as $0.95 stays in the wallet. Funds never leave the account — this is an internal transfer the trading key is allowed to make. Use it when the user has sent money to the account and the subaccount collateral is 0 or too low to trade.

輸入結構描述

{
  "type": "object",
  "properties": {
    "amountUsd": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "USDC to move. Omit to move everything above the $0.95 gas reserve."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡top_up_gas

Move a little USDC from the trading subaccount back to the WALLET when the wallet is at or below $0.55 — just enough to restore the $0.95 gas reserve that deposit/withdraw transactions need. Only the gas reserve, only to the account's own wallet; it cannot send funds anywhere else. Use after a transaction fails for lack of gas.

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢place_limit_order(market, side, price, size, timeInForce, ...)

Place a limit order. Default timeInForce=GTT (long-term, durable, broadcast-commit so errors return synchronously). Use SHORT_TERM only for latency-sensitive orders (expire within ~20 blocks, broadcast async). NOTE: stateful (GTT) orders are rate-limited to 2/block and 20 per 100 blocks — pace placements. Returns `confirmation` with the REAL outcome verified via the indexer (filled / partially_filled / resting / unfilled / pending) — broadcast `code: 0` only means the tx was accepted, NOT that it filled. Report from `confirmation.outcome`; if it is `pending`, the indexer is lagging — re-check shortly.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "side": {
      "type": "string",
      "enum": [
        "BUY",
        "SELL"
      ]
    },
    "price": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "size": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Size in base units"
    },
    "timeInForce": {
      "type": "string",
      "enum": [
        "GTT",
        "SHORT_TERM"
      ],
      "default": "GTT"
    },
    "postOnly": {
      "type": "boolean",
      "description": "Reject if it would cross (maker-only). Defaults to server config."
    },
    "reduceOnly": {
      "type": "boolean"
    },
    "goodTilTimeSeconds": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 7776000,
      "description": "GTT lifetime (default 3600)"
    },
    "goodTilBlockOffset": {
      "type": "integer",
      "minimum": 1,
      "maximum": 19,
      "description": "SHORT_TERM blocks ahead (default 10)"
    },
    "clientId": {
      "type": "integer",
      "minimum": 0
    },
    "confirm": {
      "type": "boolean",
      "description": "Verify the real outcome via the indexer after broadcast (default true)."
    }
  },
  "required": [
    "market",
    "side",
    "price",
    "size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢place_market_order(market, side, size, slippageBps, reduceOnly, ...)

Place an IOC market order. It executes as an IOC limit at a worst-acceptable price mirrored around the oracle by side — BUY caps ABOVE the oracle, SELL below — at slippageBps distance (default 500 = 5%). Fills happen at book prices; the cap only limits how deep the sweep goes. reduceOnly closes an existing position. Returns `confirmation` with the REAL outcome verified via the indexer (filled / partially_filled / unfilled / pending): broadcast `code: 0` only means the tx was accepted — an IOC order cancels UNFILLED when the book is entirely beyond the slippage cap (thin/spread market). Always report from `confirmation.outcome`, not `code`; if `unfilled` or `partially_filled`, retry with a larger slippageBps to sweep deeper; if `pending`, the indexer is lagging — wait a few seconds and re-check before concluding.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "side": {
      "type": "string",
      "enum": [
        "BUY",
        "SELL"
      ]
    },
    "size": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Size in base units"
    },
    "slippageBps": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000,
      "description": "Max slippage vs oracle, in bps (default 500). BUY bounds above the oracle, SELL below; raise to sweep a thin book."
    },
    "reduceOnly": {
      "type": "boolean"
    },
    "clientId": {
      "type": "integer",
      "minimum": 0
    },
    "confirm": {
      "type": "boolean",
      "description": "Verify the real fill via the indexer after broadcast (default true)."
    }
  },
  "required": [
    "market",
    "side",
    "size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴cancel_order(market, clientId, orderFlags, goodTilBlock, goodTilTimeSeconds, ...)

Cancel a single order by clientId. For SHORT_TERM pass goodTilBlock; for LONG_TERM/CONDITIONAL pass goodTilTimeSeconds (the original good-til value, available from get_open_orders). Returns `confirmation` with the verified result (canceled / still_open / filled / pending): `code: 0` only means the cancel was broadcast. If `still_open`, the goodTil value likely did not match the original — retry.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string"
    },
    "clientId": {
      "type": "integer",
      "minimum": 0
    },
    "orderFlags": {
      "type": "string",
      "enum": [
        "SHORT_TERM",
        "LONG_TERM",
        "CONDITIONAL"
      ]
    },
    "goodTilBlock": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "goodTilTimeSeconds": {
      "type": "integer",
      "exclusiveMinimum": 0
    },
    "confirm": {
      "type": "boolean",
      "description": "Verify the cancel actually took via the indexer (default true)."
    }
  },
  "required": [
    "market",
    "clientId",
    "orderFlags"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴cancel_all_orders(market, confirm)

Cancel every OPEN order for the subaccount in a market (handles SHORT_TERM and LONG_TERM automatically). Returns `confirmation.remainingOpen` — orders still OPEN after the cancel (0 = all gone); if > 0, retry.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string"
    },
    "confirm": {
      "type": "boolean",
      "description": "After canceling, verify no orders remain OPEN via the indexer (default true)."
    }
  },
  "required": [
    "market"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴batch_cancel(market, clientIds)

Cancel multiple SHORT_TERM orders in one tx. SHORT_TERM only (chain limitation) — for stateful/mixed use cancel_all_orders.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string"
    },
    "clientIds": {
      "type": "array",
      "items": {
        "type": "integer",
        "minimum": 0
      },
      "minItems": 1,
      "maxItems": 100
    }
  },
  "required": [
    "market",
    "clientIds"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪place_stop_loss(market, side, triggerPrice, size, slippageBps, ...)

Place a reduce-only Stop loss (conditional market order) that triggers at triggerPrice. Side must be the CLOSING side of the position: SELL closes a LONG, BUY closes a SHORT. Once triggered it executes as an IOC limit bounded at triggerPrice ± slippageBps in the direction of execution (BUY above the trigger, SELL below; default 500 bps) so the close can cross the book.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string"
    },
    "side": {
      "type": "string",
      "enum": [
        "BUY",
        "SELL"
      ]
    },
    "triggerPrice": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "size": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "slippageBps": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000,
      "description": "Execution bound past the trigger, in bps (default 500). Raise for thin books."
    },
    "clientId": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "market",
    "side",
    "triggerPrice",
    "size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪place_take_profit(market, side, triggerPrice, size, slippageBps, ...)

Place a reduce-only Take profit (conditional market order) that triggers at triggerPrice. Side must be the CLOSING side of the position: SELL closes a LONG, BUY closes a SHORT. Once triggered it executes as an IOC limit bounded at triggerPrice ± slippageBps in the direction of execution (BUY above the trigger, SELL below; default 500 bps) so the close can cross the book.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string"
    },
    "side": {
      "type": "string",
      "enum": [
        "BUY",
        "SELL"
      ]
    },
    "triggerPrice": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "size": {
      "type": "number",
      "exclusiveMinimum": 0
    },
    "slippageBps": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000,
      "description": "Execution bound past the trigger, in bps (default 500). Raise for thin books."
    },
    "clientId": {
      "type": "integer",
      "minimum": 0
    }
  },
  "required": [
    "market",
    "side",
    "triggerPrice",
    "size"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪close_position(market, percent, slippageBps, confirm)

Close all or part of an open perpetual position with a reduce-only MARKET order. Reads the current position, flips the side automatically (LONG→SELL, SHORT→BUY) and sizes the close. percent defaults to 100 (full close); a partial close is floored to the market step size. The close is bounded at oracle ± slippageBps mirrored by side (closing a SHORT buys up to oracle×(1+slip), closing a LONG sells down to oracle×(1−slip); default 500 bps = 5%). Returns the verified `confirmation` outcome — if it is `unfilled` or `partially_filled`, the book was thinner than the cap: re-run with a larger slippageBps to sweep deeper. Errors NOT_FOUND if there is no open position in the market.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "percent": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 100,
      "description": "Portion of the position to close (default 100)."
    },
    "slippageBps": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000,
      "description": "Max slippage vs oracle, in bps (default 500). Raise to sweep a thin book."
    },
    "confirm": {
      "type": "boolean"
    }
  },
  "required": [
    "market"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪close_all_positions(slippageBps, confirm)

Flatten EVERY open perpetual position with reduce-only MARKET orders (one per market). Respects the operator market allowlist (disallowed markets are skipped and reported). Each close is bounded at oracle ± slippageBps mirrored by side (default 500 bps = 5%). Returns a per-market result array — for any market reporting unfilled/partially_filled, re-run with a larger slippageBps.

輸入結構描述

{
  "type": "object",
  "properties": {
    "slippageBps": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000,
      "description": "Max slippage vs oracle, in bps (default 500). Raise to sweep thin books."
    },
    "confirm": {
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪open_position(market, side, size, notionalUsd, slippageBps, ...)

Enter a NEW position with a MARKET order, sized by base `size` OR quote `notionalUsd` (exactly one required; notionalUsd converts at the oracle price and is floored to the step size). Optionally attach a reduce-only stopLossPrice and/or takeProfitPrice as conditional orders in the SAME call (the bracket, placed with the opposite/closing side and a 500 bps execution bound past the trigger). slippageBps caps the entry fill vs oracle (default 500). Returns the entry `confirmation` plus any bracket order ids. Bracket legs are placed only if the entry broadcast succeeds; each is reduce-only so it can only close, never flip.

輸入結構描述

{
  "type": "object",
  "properties": {
    "market": {
      "type": "string",
      "description": "Market ticker, e.g. BTC-USD"
    },
    "side": {
      "type": "string",
      "enum": [
        "BUY",
        "SELL"
      ]
    },
    "size": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Position size in base units."
    },
    "notionalUsd": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Position size in quote USD (converted at oracle). Use instead of size."
    },
    "slippageBps": {
      "type": "number",
      "minimum": 0,
      "maximum": 10000,
      "description": "Max slippage vs oracle for the entry, in bps (default 500)."
    },
    "stopLossPrice": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Attach a reduce-only stop-loss trigger at this price."
    },
    "takeProfitPrice": {
      "type": "number",
      "exclusiveMinimum": 0,
      "description": "Attach a reduce-only take-profit trigger at this price."
    },
    "confirm": {
      "type": "boolean"
    }
  },
  "required": [
    "market",
    "side"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_news(category, channels, query, limit, sinceHours)

Fetch the latest headlines from the ritbit news feed (curated crypto / markets / business channels, newest first). Filter by `category` (crypto|markets|business) or explicit `channels`, and/or a free-text `query` (a ticker or keyword, matched in the post text and hashtags, e.g. BTC). Each item returns { source, url, publishedAt, tags (hashtags — where tickers appear), text }. There is NO importance field: judge impact yourself from the content (hacks, regulation, large moves, ⚠️ warnings). Use this to factor sentiment/catalysts into an assessment, or to answer "what's the latest?". Headlines are ru/en.

輸入結構描述

{
  "type": "object",
  "properties": {
    "category": {
      "type": "string",
      "enum": [
        "crypto",
        "markets",
        "business"
      ],
      "description": "Restrict to one channel category."
    },
    "channels": {
      "type": "array",
      "items": {
        "type": "string"
      },
      "minItems": 1,
      "description": "Explicit hub channel ids (overrides category), e.g. [\"forklog\",\"incrypted\"]."
    },
    "query": {
      "type": "string",
      "description": "Case-insensitive keyword/ticker to match in text or hashtags, e.g. BTC."
    },
    "limit": {
      "type": "integer",
      "exclusiveMinimum": 0,
      "maximum": 100,
      "description": "Max items (default 30)."
    },
    "sinceHours": {
      "type": "number",
      "exclusiveMinimum": 0,
      "maximum": 168,
      "description": "Only items newer than this many hours."
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_leaderboard(timeSpan, limit, page, sortBy, sortDirection, ...)

The trader PnL leaderboard for a time span (ONE_DAY, SEVEN_DAYS, THIRTY_DAYS, ONE_YEAR, ALL_TIME): rank, username, address, PnL (USD), ROI (%) and current equity per trader, paginated. Also returns `me` — this account's own row on that board, if it is ranked. Use `search` to find a trader by username or address. For this account's rank across ALL time spans at once, use get_my_rank.

輸入結構描述

{
  "type": "object",
  "properties": {
    "timeSpan": {
      "type": "string",
      "enum": [
        "ONE_DAY",
        "SEVEN_DAYS",
        "THIRTY_DAYS",
        "ONE_YEAR",
        "ALL_TIME"
      ],
      "description": "Time span (default SEVEN_DAYS)"
    },
    "limit": {
      "type": "integer",
      "minimum": 1,
      "maximum": 100,
      "description": "Rows per page (default 20, max 100)"
    },
    "page": {
      "type": "integer",
      "minimum": 1,
      "description": "Page number, 1-based (default 1)"
    },
    "sortBy": {
      "type": "string",
      "enum": [
        "RANK",
        "PNL",
        "ROI",
        "CURRENT_EQUITY"
      ],
      "description": "RANK (default), PNL, ROI or CURRENT_EQUITY"
    },
    "sortDirection": {
      "type": "string",
      "enum": [
        "ASC",
        "DESC"
      ],
      "description": "Sort direction (default: best first)"
    },
    "search": {
      "type": "string",
      "maxLength": 256,
      "description": "Filter by username or (substring of) address"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_my_rank(timeSpan)

Where THIS account ranks on the PnL leaderboard: rank, board size ("21 of 66"), PnL, ROI and equity — for one time span, or for every time span (ONE_DAY … ALL_TIME) when none is given. A null entry means the account is not ranked on that board (no qualifying activity in the window).

輸入結構描述

{
  "type": "object",
  "properties": {
    "timeSpan": {
      "type": "string",
      "enum": [
        "ONE_DAY",
        "SEVEN_DAYS",
        "THIRTY_DAYS",
        "ONE_YEAR",
        "ALL_TIME"
      ],
      "description": "One time span; omit for all five"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_fee_tier

This account's current trading fee tier and conditions: maker/taker fee (% of notional; a negative maker fee is a rebate), the 30-day maker/taker volume it is judged on, any staking discount, the next tier and how much more 30d volume it takes, plus the full fee-tier table. Referred users start at the program's minimum fee tier (see get_referral_program).

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢get_referral_program

This account's referral / affiliate program status: referral code and link, whether the link is unlocked (lifetime volume threshold, or already an affiliate), current affiliate tier and taker-fee share, referred volume (30d / all-time), earnings and referred-user stats, who referred this account, the full affiliate tier table and the program parameters (referee starting fee tier, 30d caps).

輸入結構描述

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

建議的提示詞

retrieve_data
Get details about [item] from Rubin Exchange
預期的工具: get_block_height
fetch_info
Fetch [information type] using Rubin Exchange
預期的工具: get_block_height
list_items
List all [items] available in Rubin Exchange
預期的工具: list_markets
browse_collection
Show me the [collection] from Rubin Exchange
預期的工具: list_markets
explore_workflow
List available [items], then get details for each one using Rubin Exchange
預期的工具: list_marketsget_block_height

社群

為此伺服器評分

證據

近期觀測

已驗證未記錄版本33 個工具
已驗證未記錄版本33 個工具