Chaining five endpoint-shaped tools costs five model turns; the same work here is one execute_code call, which the project puts at roughly 90% fewer tokens. Worth knowing: older documentation describes twelve endpoint tools such as register_agent and get_tickers — those are retired, and an agent reaching for them is following a stale reference.
Eterna's hosted gateway at https://mcp.eterna.exchange/mcp. Rather than wrapping every endpoint, it exposes three tools; the trading surface is 29 eterna.* SDK methods the agent calls from TypeScript inside a Deno sandbox.
- TypeScript run in a sandboxed Deno runtime with the eterna SDK injected — execute_code
- The SDK documentation searched before that code is written, at list, summary, full, params or keywords detail — search_sdk
- Curated trading examples searched semantically — search_examples
- Market data inside the sandbox — getTickers, getOrderbook, getInstruments
- Indicators computed server-side — getRsi, getMacd, getEma, getSma, getBollingerBands, getVwap
- Trading — placeOrder with optional take-profit and stop-loss, closePosition, cancelOrder, cancelAllOrders, setLeverage, setTradingStop
- Account and funding — getBalance, getAccountInfo, getPositions, getOrders, getDepositAddress, getDepositRecords, transferToTrading, submitWithdrawal and the rest of the 29 methods
- Seven prompts, from getting_started and error_handling to three strategy templates
An MCP client that speaks Streamable HTTP. Point it at https://mcp.eterna.exchange/mcp and complete OAuth with the mcp:full scope — the agent's own sub-account is provisioned on first sign-in. Legacy bearer API keys still work. Markets are USDT-margined perpetual futures across 200+ pairs; spot is on the roadmap.
One command — npx -y mcp-remote https://mcp.eterna.exchange/mcp
