execute_codeLABSCO SUMMARY
One round trip instead of ten, because the agent writes the whole script.
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.
What it is
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.
What you get
- 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
Requirements
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.
Setup effort
Paste a URL, then authorize — add the endpoint to your client, then approve the OAuth consent screen
USE CASES
Reading your account and the market in one call
Balance and a ticker come back from a single script rather than two tool calls and a model turn between them.
Placing an order with protection attached
Set leverage and submit the order with take-profit and stop-loss in the same script, so the position is never briefly unprotected.
Deciding from indicators rather than raw candles
RSI, MACD, EMA, SMA, Bollinger and VWAP are computed server-side and return numbers, so the model is not asked to do arithmetic on price series.
Getting funds in before the first trade
Fetch a deposit address for the coin and chain, check the deposit records, then move the balance into the trading wallet.
3 tools
Listed in project docs. Your client may show a different list.
search_sdksearch_examplesBEFORE YOU INSTALL
What to know first
Tools you get
3 tools named in the project's documentation.
Requires
A client that can reach a remote MCP server over HTTP
INSTALLATION
Connect your client
Add the endpoint to your client, then approve the OAuth consent screen.
Server setup
Claude.ai, Claude Desktop
https://mcp.eterna.exchange/mcpMCP Clients
Claude Code
{
"mcpServers": {
"eterna": {
"type": "http",
"url": "https://mcp.eterna.exchange/mcp"
}
}
}Cursor
{
"mcpServers": {
"eterna": {
"type": "streamable-http",
"url": "https://mcp.eterna.exchange/mcp"
}
}
}OpenClaw
openclaw plugins install @eterna-hybrid-exchange/openclaw-pluginAny MCP client — API key
{
"mcpServers": {
"eterna": {
"type": "streamable-http",
"url": "https://mcp.eterna.exchange/mcp",
"headers": {
"Authorization": "Bearer <YOUR_KEY>"
}
}
}
}Clients spell the "type" value differently: Claude Code and VS Code use "http", Cline uses "streamableHttp", and Roo Code uses "streamable-http". Claude Desktop does not accept a URL entry in its config file; remote servers go under Settings → Connectors.