Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,071Paid calls: 1,558Letters: 14Defects: 1,331counted 3 min ago
teppi

Server definition

Hash
sha256:832393ec673d3b1b69c4af704e4e788a0991b1a9abd8929e8b0772efa767bc25
What it is
What a remote MCP server returned when asked what it offers: 35 tools

The blob, as servednamed by its sha256

{ "instructions": null, "tools": [ { "description": "Adjust one leg of a hedged position: add_long / add_short / trim_long / trim_short. Params: positionId, action, sizeUsd.", "inputSchema": { "properties": { "action": { "enum": [ "add_long", "add_short", "trim_long", "trim_short" ], "type": "string" }, "positionId": { "type": "string" }, "sizeUsd": { "type": "number" } }, "required": [ "positionId", "action", "sizeUsd" ], "type": "object" }, "name": "adjust_hedge", "outputSchema": null }, { "description": "Send a message to your agent (free-form conversation; it answers with its strategy, live data and tools).", "inputSchema": { "properties": { "agent": { "description": "Agent id or name substring", "type": "string" }, "message": { "description": "Your message to the agent", "type": "string" } }, "required": [ "agent", "message" ], "type": "object" }, "name": "agent_chat", "outputSchema": null }, { "description": "Recent decisions/log of one of your agents (status, trigger, summary, reply).", "inputSchema": { "properties": { "agent": { "description": "Agent id or name substring", "type": "string" }, "limit": { "description": "Max rows (default 10, max 50)", "type": "number" } }, "required": [ "agent" ], "type": "object" }, "name": "agent_decisions", "outputSchema": null }, { "description": "Get details of one of your agents (mode, status, risk, triggers, last activity).", "inputSchema": { "properties": { "agent": { "description": "Agent id or name substring", "type": "string" } }, "required": [ "agent" ], "type": "object" }, "name": "agent_status", "outputSchema": null }, { "description": "Run the agent's selected trigger (interval → news → trading signal) and return the decision.", "inputSchema": { "properties": { "agent": { "description": "Agent id or name substring", "type": "string" } }, "required": [ "agent" ], "type": "object" }, "name": "agent_trigger", "outputSchema": null }, { "description": "Orderbook liquidity for a hedged pair: max neutral size (min of both legs depth within slippage), best prices, recommendation. Params: exchangeA, exchangeB, symbol, slippagePct (default 0.3).", "inputSchema": { "properties": { "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "slippagePct": { "type": "number" }, "symbol": { "type": "string" } }, "required": [ "exchangeA", "exchangeB", "symbol" ], "type": "object" }, "name": "analyze_pair_liquidity", "outputSchema": null }, { "description": "Backtest the funding-harvest strategy (S2) on our REAL funding archive: gross/net %, annualized, winrate, max consecutive negative periods, verdict. Params: exchangeA, exchangeB, symbol, days (max 90), sizeUsd.", "inputSchema": { "properties": { "days": { "type": "number" }, "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "sizeUsd": { "type": "number" }, "symbol": { "type": "string" } }, "required": [ "exchangeA", "exchangeB", "symbol" ], "type": "object" }, "name": "backtest_basis_strategy", "outputSchema": null }, { "description": "Close a hedged position (both legs, market, reduce-only). Params: positionId, reason (optional).", "inputSchema": { "properties": { "positionId": { "type": "string" }, "reason": { "type": "string" } }, "required": [ "positionId" ], "type": "object" }, "name": "close_hedged_position", "outputSchema": null }, { "description": "Close an open position from our registry (user_positions): market reduce-only on the exchange (binance/bingx/bybit), cancel exchange SL/TP, record realized PnL. Params: exchange, symbol (e.g. \"BTC_USDT\"). Returns fill price and PnL.", "inputSchema": { "properties": { "exchange": { "type": "string" }, "symbol": { "type": "string" } }, "required": [ "exchange", "symbol" ], "type": "object" }, "name": "close_position", "outputSchema": null }, { "description": "Engine event feed for a position (slices, funding collected, alerts, liquidation). Params: positionId (optional), limit (default 30).", "inputSchema": { "properties": { "limit": { "type": "number" }, "positionId": { "type": "string" } }, "type": "object" }, "name": "get_agent_events", "outputSchema": null }, { "description": "Minute-level price basis history between two exchanges for the same perp symbol (buyPrice vs sellPrice from our archive). Params: exchangeA, exchangeB, symbol (e.g. \"HOME_USDT\"), hours (default 6, max 48).", "inputSchema": { "properties": { "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "hours": { "type": "number" }, "symbol": { "type": "string" } }, "required": [ "exchangeA", "exchangeB", "symbol" ], "type": "object" }, "name": "get_basis_history", "outputSchema": null }, { "description": "Basis regime between two exchanges: mean/std/z-score/percentiles of the price spread, trend, oscillation score, and a signal (ENTER_LONG_BIAS / ENTER_SHORT_BIAS / HOLD). Params: exchangeA, exchangeB, symbol.", "inputSchema": { "properties": { "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "symbol": { "type": "string" } }, "required": [ "exchangeA", "exchangeB", "symbol" ], "type": "object" }, "name": "get_basis_regime", "outputSchema": null }, { "description": "Combined entry signal: basis regime + liquidity check. Returns signal (ENTER_*_BIAS/HOLD), z-score, maxNeutralUsd, recommended action. Params: exchangeA, exchangeB, symbol, maxSizeUsd (optional cap).", "inputSchema": { "properties": { "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "maxSizeUsd": { "type": "number" }, "symbol": { "type": "string" } }, "required": [ "exchangeA", "exchangeB", "symbol" ], "type": "object" }, "name": "get_basis_signal", "outputSchema": null }, { "description": "List official exchange MCP servers and AI skill libraries we aggregate (Binance Skills Hub, BingX AI Skills, OKX Agent Trade Kit, Bybit MCP, Coinbase CDP, ...) with availability for YOUR connected exchange keys — tells an AI client which exchange skills it can actually use.", "inputSchema": { "properties": {}, "type": "object" }, "name": "get_exchange_skills", "outputSchema": null }, { "description": "Cross-exchange funding-rate arbitrage opportunities from our live table. Returns assets where one exchange pays positive funding (long side) and another negative (short side). Params: exchangeA (e.g. \"binance\"), exchangeB (e.g. \"bingx\") to filter pairs between these two, minRateDiff (minimum |rate_diff| in %, e.g. 0.05), limit (max rows, default 20).", "inputSchema": { "properties": { "exchangeA": { "description": "First exchange id, e.g. \"binance\"", "type": "string" }, "exchangeB": { "description": "Second exchange id, e.g. \"bingx\"", "type": "string" }, "limit": { "description": "Max rows (default 20, max 50)", "type": "number" }, "minRateDiff": { "description": "Minimum absolute rate diff in percent (default 0)", "type": "number" } }, "type": "object" }, "name": "get_funding_arbitrage", "outputSchema": null }, { "description": "Current funding rates for perpetual futures from all exchanges. Params: asset (e.g. \"BTC\"), exchange (e.g. \"binance\"), limit (default 20, max 50).", "inputSchema": { "properties": { "asset": { "type": "string" }, "exchange": { "type": "string" }, "limit": { "type": "number" } }, "type": "object" }, "name": "get_funding_rates", "outputSchema": null }, { "description": "Funding schedule for a perp on an exchange: current rate %, interval hours, next payment time, mark price. Params: exchange, symbol.", "inputSchema": { "properties": { "exchange": { "type": "string" }, "symbol": { "type": "string" } }, "required": [ "exchange", "symbol" ], "type": "object" }, "name": "get_funding_schedule", "outputSchema": null }, { "description": "OHLCV candles from the official exchange API (binance or xt). Params: exchange (\"binance\"|\"xt\"), symbol, interval (\"1m\",\"5m\",\"1h\"), limit (max 500).", "inputSchema": { "properties": { "exchange": { "enum": [ "binance", "xt" ], "type": "string" }, "interval": { "type": "string" }, "limit": { "type": "number" }, "symbol": { "type": "string" } }, "required": [ "exchange", "symbol" ], "type": "object" }, "name": "get_klines", "outputSchema": null }, { "description": "Latest crypto news headlines with short descriptions. Params: limit (default 10, max 30).", "inputSchema": { "properties": { "limit": { "type": "number" } }, "type": "object" }, "name": "get_news", "outputSchema": null }, { "description": "List open orders on an exchange (REAL). Params: exchange (\"binance\"|\"bingx\"|\"bybit\"), symbol (optional, e.g. \"BTC_USDT\"). binance = futures open orders, bybit = linear perps; bingx spot returns unsupported (single-order query only).", "inputSchema": { "properties": { "exchange": { "type": "string" }, "symbol": { "type": "string" } }, "required": [ "exchange" ], "type": "object" }, "name": "get_open_orders", "outputSchema": null }, { "description": "Orderbook depth snapshot for a symbol on an exchange. Params: exchange (e.g. \"binance_spot\", \"bingx\"), symbol (e.g. \"BTC/USDT\"), depth (default 10, max 25).", "inputSchema": { "properties": { "depth": { "type": "number" }, "exchange": { "type": "string" }, "symbol": { "type": "string" } }, "required": [ "exchange", "symbol" ], "type": "object" }, "name": "get_orderbook", "outputSchema": null }, { "description": "Perpetual futures arbitrage: same perp traded on two exchanges with a price spread. Params: exchangeA, exchangeB, minSpreadPct, limit.", "inputSchema": { "properties": { "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "limit": { "description": "Max rows (default 20, max 50)", "type": "number" }, "minSpreadPct": { "description": "Minimum spread % (default 0)", "type": "number" } }, "type": "object" }, "name": "get_perp_arbitrage", "outputSchema": null }, { "description": "The user's real exchange balances from their connected accounts (Binance futures, BingX spot+futures, Bybit, XT, Pionex). Use when the user asks about their balances, positions, or portfolio. Params: exchange (optional: \"binance\" | \"bingx\" | \"bybit\" | \"xt\" | \"pionex\").", "inputSchema": { "properties": { "exchange": { "type": "string" } }, "type": "object" }, "name": "get_portfolio", "outputSchema": null }, { "description": "The user's open positions from our registry (user_positions) — what the agent/bots have open. Params: exchange (optional), symbol (optional).", "inputSchema": { "properties": { "exchange": { "type": "string" }, "symbol": { "type": "string" } }, "type": "object" }, "name": "get_positions", "outputSchema": null }, { "description": "Spot arbitrage opportunities: buy asset on one exchange, sell on another. Params: exchangeA, exchangeB (filter pairs between these two), minProfitPct (e.g. 0.5), limit.", "inputSchema": { "properties": { "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "limit": { "description": "Max rows (default 20, max 50)", "type": "number" }, "minProfitPct": { "description": "Minimum profit % (default 0)", "type": "number" } }, "type": "object" }, "name": "get_spot_arbitrage", "outputSchema": null }, { "description": "Instant risk assessment for a position: GREEN/YELLOW/RED, liq distance %, basis deviation %, reasons, recommended action. Params: positionId.", "inputSchema": { "properties": { "positionId": { "type": "string" } }, "required": [ "positionId" ], "type": "object" }, "name": "get_threat_level", "outputSchema": null }, { "description": "Top crypto prices from our aggregated ticker feed (global VWAP across 60+ exchanges). Params: topN (default 10, max 30), symbols (optional array like [\"BTC\",\"ETH\"]).", "inputSchema": { "properties": { "symbols": { "items": { "type": "string" }, "type": "array" }, "topN": { "type": "number" } }, "type": "object" }, "name": "get_tickers", "outputSchema": null }, { "description": "Current status of hedged position(s): legs, avg prices, current basis, PnL, margin/liq distance, threat level, funding countdown. Params: positionId (optional — omit for all open positions).", "inputSchema": { "properties": { "positionId": { "type": "string" } }, "type": "object" }, "name": "hedge_status", "outputSchema": null }, { "description": "List your AI agents: id, name, mode, scenario, status, last decision/trigger.", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_agents", "outputSchema": null }, { "description": "All hedged positions of the user (open and closed).", "inputSchema": { "properties": {}, "type": "object" }, "name": "list_hedge_positions", "outputSchema": null }, { "description": "Open a NEUTRAL hedged position: LONG on exchangeA + SHORT on exchangeB (or vice versa via longExchange param). Entry is executed by the hedge engine strictly from orderbooks (max neutral size, slices, basis control). REAL mode only. Params: exchangeA, exchangeB, symbol, sizeUsd (≤5000), leverage (1-10), strategy (\"funding\"|\"basis\"|\"hybrid\"), longExchange (optional, default exchangeA), protection: slPct/tpPct/maxBasisDeviationPct/marginAlertPct/maxSlippagePct/maxSlices/autoTopUpUsd.", "inputSchema": { "properties": { "agent": { "description": "Your REAL hedge agent (id or name) whose bound API keys will open the position", "type": "string" }, "autoTopUpUsd": { "type": "number" }, "exchangeA": { "type": "string" }, "exchangeB": { "type": "string" }, "leverage": { "type": "number" }, "longExchange": { "description": "which exchange is the LONG leg (default = exchangeA)", "type": "string" }, "marginAlertPct": { "type": "number" }, "maxBasisDeviationPct": { "type": "number" }, "maxSlices": { "type": "number" }, "maxSlippagePct": { "type": "number" }, "sizeUsd": { "type": "number" }, "slPct": { "type": "number" }, "strategy": { "type": "string" }, "symbol": { "type": "string" }, "tpPct": { "type": "number" } }, "required": [ "exchangeA", "exchangeB", "symbol", "sizeUsd", "leverage", "agent" ], "type": "object" }, "name": "open_hedged_position", "outputSchema": null }, { "description": "Place a real market order on the user's exchange (Binance or BingX — only exchanges connected to this agent). Trading is only allowed when the agent mode is REAL. The order size is strictly limited by the agent's risk % of free balance; the system validates and may reject. A stop-loss and take-profit are placed on the exchange automatically. Params: exchange (\"binance\"|\"bingx\"), symbol (asset like \"BTC\"), side (\"BUY\"|\"SELL\"), amount_type (\"PERCENTAGE\"|\"FIXED_USDT\"), amount_value (number).", "inputSchema": { "properties": { "agent": { "description": "Your REAL agent (id or name) whose bound API keys will execute the order (binance/bingx/bybit)", "type": "string" }, "amount_type": { "enum": [ "PERCENTAGE", "FIXED_USDT" ], "type": "string" }, "amount_value": { "type": "number" }, "exchange": { "enum": [ "binance", "bingx" ], "type": "string" }, "side": { "enum": [ "BUY", "SELL" ], "type": "string" }, "symbol": { "type": "string" } }, "required": [ "exchange", "symbol", "side", "amount_type", "amount_value", "agent" ], "type": "object" }, "name": "place_order", "outputSchema": null }, { "description": "Update protection thresholds of an open position: slPct, tpPct, maxBasisDeviationPct, marginAlertPct, autoTopUpUsd. Params: positionId + any threshold.", "inputSchema": { "properties": { "autoTopUpUsd": { "type": "number" }, "marginAlertPct": { "type": "number" }, "maxBasisDeviationPct": { "type": "number" }, "positionId": { "type": "string" }, "slPct": { "type": "number" }, "tpPct": { "type": "number" } }, "required": [ "positionId" ], "type": "object" }, "name": "set_hedge_protection", "outputSchema": null }, { "description": "Set/update exchange-side stop-loss and take-profit on an open position (REAL; binance futures, bybit linear; bingx spot unsupported). Params: exchange, symbol, stopLossPct/takeProfitPct (percent from entry) or absolute stopLossPrice/takeProfitPrice.", "inputSchema": { "properties": { "exchange": { "type": "string" }, "stopLossPct": { "type": "number" }, "stopLossPrice": { "type": "number" }, "symbol": { "type": "string" }, "takeProfitPct": { "type": "number" }, "takeProfitPrice": { "type": "number" } }, "required": [ "exchange", "symbol" ], "type": "object" }, "name": "set_sl_tp", "outputSchema": null }, { "description": "Publish a post to Binance Square using YOUR Binance Square OpenAPI key (set in Integrations). Max 3 different $TICKER coin tags per post; write prices as plain numbers (no $). Daily limit: 100 posts.", "inputSchema": { "properties": { "content": { "description": "Post text (max 4000 chars)", "type": "string" }, "title": { "description": "Optional article title (max 200 chars)", "type": "string" } }, "required": [ "content" ], "type": "object" }, "name": "square_post", "outputSchema": null } ] }
Verify it yourselfcurl -s https://api.teppi.xyz/v1/evidence/sha256:832393ec673d3b1b69c4af704e4e788a0991b1a9abd8929e8b0772efa767bc25 | sha256sum