CEX <-> DEX delta-neutral basis/funding arbitrage agent on Binance Agent OS (hosted Binance MCP + Skills Hub) with its own MCP server and a deterministic risk gate
Deltr has 31 tools with consistent naming (verb_noun pattern: deltr_*, get_*) and descriptions present for all. However, descriptions vary widely in quality, some are excellent (deltr_propose_hedge: 'phase 1: size a plan...'), others are vague (deltr_stress: 'labelled SIMULATED scenarios...'). Input schemas are visible and typed for most tools, but output schemas are not documented in the source. Error handling and recovery guidance are absent. Security-critical tools (deltr_execute_hedge, deltr_onchain_swap) lack explicit confirmation/dry-run patterns in the schema itself. Parameter descriptions are present but inconsistent in detail (some lack range/format guidance). Composition is strong, tools chain well (propose → evaluate → execute), but some tools combine multiple concerns (deltr_activity logs MCP calls; deltr_edge_report renders markdown).
the inbound MCP call log (which client called what, redacted args, latency)
the same decomposition rendered as a titled markdown report: waterfall, funding, breakeven verdict, source tags and feed ages, honesty labels
dry-run the gate (e.g. leverage 10 -> LEVERAGE veto with observed/limit); nothing is clamped
phase 2: execute a plan_id (re-priced, re-gated, single-use; TESTNET needs confirm: true)
dry sizing and the full cost/carry math for a capital + leverage (+ horizon); no side effects
funding rate history and analysis over a lookback period
Output schemas not documented. No tool returns a documented schema, LLMs cannot plan downstream calls or extract fields reliably. Agents must infer structure from trial and error.
Binance shim tools (get_ticker, get_mark_price, get_funding_rate, get_exchange_filters, get_account, get_positions) have minimal descriptions (10-20 chars). LLMs cannot distinguish when to call get_ticker vs get_mark_price or understand what fields are returned.
Destructive tools (deltr_execute_hedge, deltr_unwind, deltr_onchain_swap, deltr_x402_pay, place_futures_order) lack explicit error recovery guidance. No documentation of what happens on partial failure, how to undo, or what to do if the confirm flag is missing.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | B | 74 | 2026-07-28+ | v2 |
operator kill switch on/off (only verified reduce-only unwinds pass while on)
current DEX / perp / funding state and the edge breakdown for a symbol
request an on-chain swap through the Binance Agentic Wallet (Deltr holds no key); previewed, gated and confirmed, confirm: true required
open positions + portfolio (mark-to-close PnL split, stop distance)
natural language -> typed intent -> plan -> pre-check (propose-only; execute needs the plan_id)
phase 1: size a plan, run the gate pre-check, get a plan_id (nothing executes)
one receipt by id (trace steps, fills with provenance, SHA-256)
clear a sticky drawdown halt once the book is flat and drawdown < 3 %
recent gate decisions, newest first, with every check's observed/limit
the latest opportunity (horizon-based net edge) + spread history
runtime minimum net edge (PAPER may go negative, labelled on screen; TESTNET >= floor)
mode, venues (with feed ages), equity, drawdown state, kill/halt, measured gate latency
labelled SIMULATED scenarios on the paper book only; kind: "reset" clears
reduce-only unwind of a position or "all" (TESTNET needs confirm: true)
the on-chain leg's status: is the Binance Agentic Wallet CLI installed and signed in, its addresses and Binance's own remaining daily quota, Deltr's arming state and caps
pay an HTTP 402 (x402 / B402) challenge on BNB Smart Chain through the wallet: preview, policy, sign; confirm: true required
Get account information and balances
Get exchange trading rules and filters
Get current funding rate for a futures contract
Get mark price for a futures contract
Get order book depth for a trading pair
Get open positions and position information
Get ticker information for a trading pair
Place a futures order (LIMIT + IOC only, defaults to test endpoint)
Set leverage for a trading pair (max 3x for shim)
Parameter descriptions lack format/range guidance. E.g., 'leverage' has no min/max (tool says 'max 3x for shim' in description, not param schema). 'horizon_h' lacks units clarity. LLMs may pass invalid values.
Tool composition: deltr_activity logs MCP calls (metadata concern), deltr_edge_report renders markdown (formatting concern). These mix data retrieval with presentation, split into separate tools so agents can compose as needed.