Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
GDEX_API_KEYNoGDEX API key — auto-authenticates on startup
GDEX_API_URLNoOverride API base URL (default: https://trade-api.gemach.io/v1)https://trade-api.gemach.io/v1

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
search_gdex_docsA

Search GDEX documentation and skill files by keyword. Returns matching skill sections.

get_skill_fileA

Read a file that ships with a GDEX skill (e.g. gdex-token-risk scripts/token_risk.py). Omit path to list the skill's files.

get_sdk_patternB

Get TypeScript code patterns for common GDEX SDK operations. Returns working code examples.

get_api_infoA

Get GDEX API endpoint details — URL, method, parameters, and response format.

explain_workflowB

Explain an end-to-end GDEX trading workflow with step-by-step instructions and code.

get_chain_infoA

Get supported chains, chain IDs, DEXes, and capabilities.

get_trading_guideB

Get a complete trading guide for spot, perp, or limit order trading.

get_copy_trade_guideB

Get a copy trading guide for Solana spot or HyperLiquid perp copy trading.

get_component_guideB

Get React UI component patterns for GDEX trading interfaces.

auth_loginA

Authenticate with a GDEX API key. Sets the Bearer token for all subsequent requests.

generate_session_keypairA

Advanced/manual signing only: generate a secp256k1 session keypair. Prefer gdex_connect, which signs in and keeps keys on this machine. Returns only the public sessionKey unless revealPrivateKey is true.

managed_sign_inB

Sign in to GDEX managed-custody system using encrypted computedData payload.

build_sign_in_payloadA

Build the encrypted sign-in computedData payload from raw credentials. Returns the payload to use with managed_sign_in.

buy_tokenA

Buy a token with the chain's native token from the managed GDEX wallet (session-signed purchase_v2). Chains: Ethereum 1, Optimism 10, BSC 56, Sonic 146, Fraxtal 252, Robinhood 4663, Base 8453, Arbitrum 42161, Solana. Returns a requestId; follow it with wait_for_trade. To pay with USDC use usdc_buy.

sell_tokenA

Sell a token for the chain's native token from the managed GDEX wallet (session-signed sell_v2). Amount is a token amount ('100') or a percentage of the held balance ('50%', '100%'), resolved from the managed holdings. Returns a requestId; follow it with wait_for_trade. To receive USDC use usdc_sell.

wait_for_tradeA

Follow a buy_token / sell_token requestId to its result by polling /v1/trade-status. outcome: filled, failed, not_found (expired id) or pending (still running at the timeout: never resubmit).

open_perp_positionB

Open a perpetual futures position on HyperLiquid with leverage, TP/SL. Supports market and limit orders.

place_perp_orderA

Place a simple perp order on HyperLiquid without TP/SL. isMarket=true (default) is sent via /hl/create_order as a market order; isMarket=false sends a limit order at price via /hl/place_order, which the backend currently accepts only with reduceOnly=true.

close_perp_positionA

Close (fully or partially) one perp position with a reduce-only market order. The side is read from the live HL position: a long is closed with a sell, a short with a buy. Rejects when the position is flat/missing, when size exceeds it, or when a bare coin is open on several builder DEXes.

close_all_positionsA

Close all open perpetual positions on HyperLiquid. Known unreliable: the backend endpoint frequently returns TIMEOUT or 400 / JSON parse errors. Prefer close_perp_position per coin.

cancel_perp_orderC

Cancel a specific open perp order on HyperLiquid.

cancel_all_perp_ordersB

Cancel all open perp orders on HyperLiquid.

set_leverageA

Set leverage for a specific asset on HyperLiquid. Known broken: /hl/update_leverage has returned 404 in live tests. Pass leverage on open_perp_position instead (sent with the order).

perp_depositC

Deposit USDC into the HyperLiquid perpetual account from Arbitrum.

perp_withdrawC

Withdraw USDC from the HyperLiquid perpetual account.

get_account_stateA

Get full HyperLiquid account state: positions, margin, balance, withdrawable amount. No auth required.

get_perp_positionsB

Get all open perpetual positions for a wallet on HyperLiquid. No auth required.

get_mark_priceB

Get the current mark price for a HyperLiquid asset. No auth required.

get_all_mid_pricesA

Get all current mid prices across all HyperLiquid assets. No auth required.

get_usdc_balanceB

Get USDC balance on HyperLiquid for a wallet. No auth required.

get_hl_open_ordersB

Get all open orders on HyperLiquid for a wallet. No auth required.

get_hl_trade_historyB

Get trade history on HyperLiquid for a wallet. No auth required.

get_hl_spot_stateB

Get HyperLiquid spot trading state for a wallet. No auth required.

get_trader_leverageA

Get the active leverage setting a trader uses for a specific coin on HyperLiquid.

execute_cross_perpA

Execute a cross-margin perpetual trade directly with a private key (no managed custody). Supports TP/SL and builder fees.

execute_isolated_perpC

Execute an isolated-margin perpetual trade directly with a private key. Requires explicit leverage.

execute_spotC

Execute a spot trade directly on HyperLiquid with a private key.

direct_cancel_orderB

Cancel an open order directly with a private key on HyperLiquid.

limit_buyB

Create a limit buy order — buy a token when price drops to target. Uses ABI-encoded + AES-encrypted computedData.

limit_sellB

Create a limit sell order — sell a token when price reaches target. Auto-classifies as TP or SL.

update_orderA

Update or delete an existing limit order. Set isDelete=true to cancel (no other fields needed). An update replaces amount, triggerPrice and TP/SL together, so all four are required.

get_limit_ordersB

List active limit orders for a user on a specific chain. Requires session-key auth.

get_copy_trade_walletsA

Get top 300 wallets ranked by totalPnl for Solana spot copy trade leaderboard. No auth. Cached 2 min.

get_copy_trade_custom_walletsA

Get top 300 wallets ranked by net received. No auth. Cached 2 min.

get_copy_trade_gemsA

Get hot new tokens heavily traded by top wallets. No auth. Cached 20s.

get_copy_trade_dexesA

List supported DEXes for a chain (e.g. Raydium, Pumpfun on Solana). No auth.

get_copy_trade_listA

List all copy trade configurations for a user. Requires session-key auth.

get_copy_trade_tx_listB

List copy trade transaction history with PnL. Requires session-key auth.

create_copy_tradeB

Create a new copy trade to auto-mirror a Solana trader's buys/sells. Solana only.

update_copy_tradeA

Low-level Solana copy trade update (prefer update_copy_trade_settings / pause_copy_trade / resume_copy_trade / delete_copy_trade). Every field is rewritten from this payload, so pass the full current config. isDelete=true permanently deletes the configuration; positions it opened are NOT sold and their TP/SL limit orders are NOT cancelled. isChangeStatus=true TOGGLES active/paused relative to the stored state (sending it twice resumes). isDelete and isChangeStatus cannot both be true.

update_copy_trade_settingsA

Change settings of an existing Solana copy trade. Never deletes and never pauses/resumes. Reads the current config first; omitted fields keep their current values. Open positions are not resized.

pause_copy_tradeA

Pause a Solana copy trade (isActive=false) WITHOUT deleting it. Reads the current state first and is a no-op if already paused. While paused the copier mirrors neither buys nor sells; positions it opened stay open and their TP/SL orders stay in place. Errors: PAUSE_STATE_UNVERIFIED (state could not be confirmed, nothing sent), PAUSE_UNSUPPORTED (stored config invalid; explains the alternative), COPY_TRADE_NOT_FOUND.

resume_copy_tradeA

Resume a paused Solana copy trade (isActive=true). No-op if already active. Trades made while paused are not replayed.

delete_copy_tradeA

PERMANENTLY delete a Solana copy trade configuration. Does NOT sell the positions it opened and does NOT cancel their TP/SL limit orders; manage those separately. Cannot be undone. To stop copying temporarily use pause_copy_trade instead.

get_hl_top_tradersA

Get top HyperLiquid perp traders by volume, trade count, or deposit. No auth. Cached 15 min.

get_hl_top_traders_by_pnlA

Get top 30 HyperLiquid perp traders ranked by PnL. Data by day/week/month. No auth. Cached 15 min.

get_hl_user_statsA

Get detailed trading stats for an HL user: daily PnL, volumes, trade counts, win rates. No auth. Cached 1 hr.

get_hl_perp_dexesB

Get available perpetual DEX list on HyperLiquid. No auth.

get_hl_all_assetsA

Get all tradeable assets on HyperLiquid with max leverage info. No auth.

get_hl_clearinghouse_stateA

Get account state (positions, margin) on a HyperLiquid DEX. No auth. Builder/HIP-3 positions (e.g. xyz:NVDA) live under their own dex — pass dex ("xyz") to see them. The default query does NOT show builder positions; an open builder position will look empty without dex.

get_hl_meta_and_asset_ctxsB

Get market metadata and asset contexts from HyperLiquid. No auth.

get_hl_deposit_tokensB

Get supported deposit tokens for HyperLiquid. No auth.

get_hl_copy_trade_listA

List all HL perp copy trade configurations for a user. Requires session-key auth.

get_hl_copy_trade_tx_listA

Get HL copy trade fill history. Supports pagination (max 100 per page). Session-key auth. Cached 15s.

create_hl_copy_tradeC

Create a new HL perp copy trade. Copies a trader's long/short perpetual positions.

update_hl_copy_tradeA

Low-level HL perp copy trade update (prefer update_hl_copy_trade_settings / pause_hl_copy_trade / resume_hl_copy_trade / delete_hl_copy_trade). Every field is rewritten from this payload, so pass the full current config. isDelete=true permanently deletes the configuration; perp positions it opened are NOT closed and their TP/SL orders are NOT cancelled. isChangeStatus=true TOGGLES active/paused relative to the stored state. isDelete and isChangeStatus cannot both be true.

update_hl_copy_trade_settingsA

Change settings of an existing HL perp copy trade. Never deletes and never pauses/resumes. Reads the current config first; omitted fields keep their current values. Configs created by SDK <= 4.12 may hold an invalid copyMode (e.g. 416/480) and oppositeCopy=true; pass copyMode, fixedAmountCostPerOrder and oppositeCopy explicitly to repair them.

pause_hl_copy_tradeA

Pause an HL perp copy trade (isActive=false) WITHOUT deleting it. Reads the current state first and is a no-op if already paused. While paused the copier mirrors neither opens nor closes, so copied positions stay open and will NOT follow the trader's exits; their TP/SL orders stay in place. Errors: PAUSE_STATE_UNVERIFIED (nothing sent), PAUSE_UNSUPPORTED (stored config invalid; explains the alternative), COPY_TRADE_NOT_FOUND.

resume_hl_copy_tradeA

Resume a paused HL perp copy trade (isActive=true). No-op if already active. Fills made while paused are not replayed.

delete_hl_copy_tradeA

PERMANENTLY delete an HL perp copy trade configuration. Does NOT close the perp positions it opened and does NOT cancel their TP/SL orders; close them with the perp tools if wanted. Cannot be undone. To stop copying temporarily use pause_hl_copy_trade instead.

get_portfolioA

Token holdings of the managed GDEX wallet on one chain (/v1/portfolio): exact raw and decimal balances, price, native value and P&L per token. Needs the session (accountRef). Errors instead of returning an empty portfolio when the read fails.

get_balancesA

Token balances of the managed GDEX wallet on one chain, optionally one token. [] means the backend reported no holdings; a failed read errors. Native balance: get_trading_funds.

get_trading_fundsA

Native balance the managed GDEX wallet can trade with on one chain (/v1/user), plus the managed wallet address per chain family. The value is approximate (backend float). Cross-chain USDC: usdc_get_balances.

get_trade_historyA

Successful spot trades of a GDEX account on one chain, newest first (/v1/user_history, keyed by the control wallet). Page with limit (max 50) and cursor = nextCursor of the previous page.

get_token_detailsB

Get detailed token info: price, market cap, liquidity, DEX pools, social links, security info. No auth.

get_trending_tokensB

Get trending tokens sorted by volume and price change. No auth.

get_ohlcvB

Get OHLCV candlestick data for a token. No auth.

get_top_tradersC

Get top performing trader wallets ranked by P&L, win rate, volume, or trade count.

get_wallet_infoA

Summary of the managed GDEX wallet on one chain: managed address, native balance (approximate, /v1/user), token count and USD total (/v1/portfolio). Needs the session (accountRef); there is no address-only read.

generate_evm_walletA

Generate a new EVM wallet offline (no network call). To trade with it, use gdex_connect { create: true } instead, which stores it locally. Returns only the address unless revealSecrets is true.

estimate_bridgeA

Get a cross-chain bridge quote without executing. Returns estimated output, provider, and time.

execute_bridgeA

Execute a cross-chain bridge transaction. Requires managed-custody auth.

get_bridge_ordersC

Get bridge order history for a user. Requires session-key auth.

managed_purchaseB

Submit an encrypted managed-custody buy trade via the GDEX backend.

managed_sellB

Submit an encrypted managed-custody sell trade via the GDEX backend.

managed_trade_statusB

Poll the status of a managed-custody trade by requestId.

build_trade_payloadB

Build an encrypted managed-custody trade computedData payload from raw credentials.

transfer_nativeA

Transfer native asset (ETH, SOL, SUI, BNB, ...) via managed custody. Requires pre-built encrypted computedData.

transfer_tokenA

Transfer ERC20 / SPL token via managed custody. Requires pre-built encrypted computedData.

add_commentC

Post a comment on a token.

get_commentsC

Get comments for a token.

vote_sentimentC

Cast a bullish/bearish sentiment vote on a token.

get_watchlistC

Fetch the user's watchlist.

change_watchlistB

Add or remove a token from the user's watchlist via managed custody. Requires pre-built encrypted computedData.

import_tokenB

Import a user-defined custom token into the platform via managed custody. Requires pre-built encrypted computedData.

get_wallet_performanceC

Get wallet performance / PnL summary across recent periods.

get_nof1_analyticsC

Get NoF1 advanced trader analytics for a wallet.

get_native_pricesB

Get current native token prices (ETH, SOL, SUI, BNB, ...) keyed by chain.

generate_pnlC

Trigger backend PnL generation for a wallet.

get_newest_tokensC

Get newest tokens across all chains (or a specific chain).

get_top_tokensC

Get top tokens by volume / market cap.

get_bigbuysC

"Big buy" alert feed for a chain — recent large buy transactions.

get_currently_liveC

Currently-livestreaming token launches.

get_live_statusB

Livestream status for a single token address.

get_xstocksC

List tokenised equities (xStocks).

get_zora_tokensC

List Zora-protocol tokens.

get_token_tradesC

Recent trades for a specific token.

get_token_imageC

Get server-rendered token social-card image metadata.

hl_outcomesA

Discover Hyperliquid HIP-4 outcome markets (GDEX has no Polymarket/Kalshi). Returns normalised markets: outcomeId, title, sides[] (label, coin "#", balanceCoin "+", price = current mid), quoteToken (collateral, held in the HL spot balance), state (active | pre_launch | expired | settled), rules (price 0.00001-0.99999 tick 0.00001, whole-contract size, min order notional 11 quote), settlement (no claim via GDEX). withVolume=true adds volume24h {volume, asOf, source, coverage} with a bounded wait. raw=true returns the backend payload unchanged.

get_hl_outcome_volumesA

Get 24h notional volume per outcome side coin from the Hyperliquid WS feed. Pass coins from hl_outcomes sides[].coin, e.g. ["#143150","#143151"]. Returns { coin: volume } for coins that reported; a missing coin means no reading (not zero). Prefer hl_outcomes withVolume=true, which reports coverage per market.

hl_outcome_accountA

Normalised state of a MANAGED wallet on one HIP-4 outcome market: positions (per side: size, hold, available, avgEntryPrice, markPrice, value, unrealizedPnl), openOrders (resting / partially_filled with orderId, price, size, filledSize), fills, historicalOrders (Hyperliquid status). Use it to reconcile after create/cancel/close. raw=true returns the backend payload.

hl_outcome_check_collateralA

Check the managed wallet's Hyperliquid SPOT balance of a market's quoteToken (outcome buys draw on spot collateral, not the perp account) against size × price.

hl_create_outcome_orderA

Place an order on a Hyperliquid HIP-4 outcome market. Structured mode (apiKey, walletAddress=control address, sessionPrivateKey, outcomeId, one of coin/sideIndex/sideLabel, isBuy, size, and price unless isMarket) is validated against the live market first: side must belong to outcomeId, size is whole contracts, price in [0.00001, 0.99999] with max 5 decimals, size×price >= 11 quote (a full-position sell is exempt when managedAddress is given), market must not be expired/settled. isBuy=false sells side tokens you hold. reduceOnly is ignored by the backend. Returns status resting (with orderId) | filled | rejected. Pre-built mode: computedData alone.

hl_cancel_outcome_orderA

Cancel a resting HIP-4 outcome order. Structured mode: apiKey, walletAddress (control), sessionPrivateKey, outcomeId, coin (must belong to outcomeId), orderId (numeric Hyperliquid oid from hl_create_outcome_order or hl_outcome_account openOrders). Partial fills before the cancel stay in the position. Pre-built mode: computedData alone.

hl_close_outcome_orderA

Exit a HIP-4 outcome position by SELLING held side tokens (the backend always sells; it cannot short). Structured mode: apiKey, walletAddress (control), sessionPrivateKey, outcomeId, one of coin/sideIndex/sideLabel, price (limit) or isMarket=true, optional size (whole contracts; omit for a full exit — the backend caps size to what you hold). With managedAddress, partial exits must leave both the sold part and the remainder >= 11 quote. Settled markets have no book: GDEX has no claim endpoint, check the HL spot balance instead. Pre-built mode: computedData alone.

hl_ref_infoB

Get HyperLiquid referral info (earned, eligibility, code).

hl_ref_claimB

Submit a claim request for accrued HL referral rewards. Requires pre-built computedData.

trending_listC

List currently promoted / booked trending tokens.

trending_optionsA

List available trending-slot packages and prices.

trending_registerC

Register / pay for a trending slot.

trending_booking_statusC

Check trending-slot booking status (pending payment, active, expired).

get_retailersC

List registered retailer integrations / branded onboarding partners.

hl_enable_tradingA

Enable HL trading for a managed wallet (one-time, required before outcome/HIP-3 orders). Pass apiKey, walletAddress (control address), sessionPrivateKey and the SDK builds the payload; a pre-built computedData is also accepted.

hl_swap_collateralB

Swap collateral between HL clearinghouses/perp DEXes (HIP-3). Pass apiKey, walletAddress, sessionPrivateKey, fromToken, toToken, amount or a pre-built computedData.

hl_builder_referralC

Get builder-referral metadata for a wallet.

hl_list_user_copy_pnlC

Per-user realised PnL from HL copy-trading.

hl_tx_listC

Get HL transaction list (fills / orders) for a wallet.

oauth_loginA

Log in or sign up using a Google ID token. Google OIDC only — there is no Apple/GitHub branch. If the wallet has no associated email yet, the backend returns 404 with internal code 108 and the caller must invoke associate_email first (using the same idToken) before retrying.

associate_emailA

Link the email claim from a Google ID token to the caller's wallet. Must be called before oauth_login when the wallet has no associated email yet (oauth-login returns 404/code 108). The email is NOT sent by the client — the backend extracts it server-side from the verified Google idToken. computedData must be built with buildAssociateEmailComputedData (managed-custody payload).

usdc_get_balancesB

Unified USDC wallet: the user's USDC and native gas balance on every supported chain, plus the cross-chain USDC total.

usdc_get_trade_quoteA

Executable quote for a USDC- or native-paid buy, or a sell to USDC. Returns amountOutRaw; apply slippage to get the minimum out for usdc_buy / usdc_sell.

usdc_get_funding_statusA

Status of a USDC trade or its auto-funding (bridge legs, confirmation, failure reason). Poll with the requestId a trade returned. If it returns a retry capability for a stuck sell, use usdc_retry_sell.

usdc_wait_for_tradeA

Follow a pending USDC trade (requestId from usdc_buy, usdc_buy_with_native or usdc_sell) to its result, like gdex.pro's live progress note: polls every 3s and returns each step as it happened (bridge legs, gas top-up, approve, swap), the outcome and the tx hash. outcome "needs_retry" means a sell broadcast was dropped and can be retried in place with usdc_retry_sell; "pending" after the timeout means still settling: never resubmit.

usdc_get_deferred_tradeB

Status and funding steps of a deferred (auto-bridged) USDC trade, by tradeId.

usdc_get_pending_tradesA

Pending USDC trades on a chain. Check before resubmitting any trade whose outcome is unknown; never resubmit while one is pending.

usdc_get_convert_quoteA

Quote converting the chain's native gas token to USDC, keeping a gas reserve. amount is raw native or "max".

usdc_get_bridge_statusB

Status of a USDC bridge by id. refresh=true polls the bridge provider once.

usdc_get_bridge_ordersC

The user's USDC bridge history.

usdc_buyA

Buy a token paying with USDC. Automatic funding is on by default: GDEX bridges USDC and tops up gas from the user's other chains when this chain is short, capped by the signed maxSourceSpendRaw. A pending result returns a requestId: follow it with usdc_wait_for_trade.

usdc_sellB

Sell a token and receive USDC into the unified USDC wallet. Settles on its own chain (no auto-funding, as on gdex.pro).

usdc_buy_with_nativeB

Buy a token paying with the chain's native token (ETH, BNB, SOL...). Auto-bridge from other chains is on by default, as on gdex.pro.

usdc_retry_sellA

Retry a stuck USDC sell in place, reusing its transaction nonce so it cannot execute twice. Use when usdc_wait_for_trade returns needs_retry (or funding status shows retry.available). Token, amount, chain and nonce are read from the backend's retry capability; re-quote the sell for minUsdcOutRaw.

usdc_convert_nativeA

Convert the chain's native gas token to USDC, keeping a per-chain gas reserve. Get amounts from usdc_get_convert_quote.

usdc_estimate_bridgeA

Quote moving USDC between chains (Relay). amountRaw is what arrives on the destination. The response fromAmountRaw is the source spend to cap usdc_execute_bridge with.

usdc_execute_bridgeA

Move USDC between chains. maxFromAmountRaw is the signed maximum source spend: use the estimate's fromAmountRaw plus a small headroom. Poll usdc_get_bridge_status with the returned id.

gdex_connectA

Connect a GDEX trading account without putting any secret in the conversation. Signs in from a control-wallet key file on this machine (keyFile), or creates a new local wallet (create: true), or refreshes an existing accountRef. Returns an accountRef plus public addresses; pass accountRef to any trading tool instead of sessionPrivateKey/privateKey. Never ask the user to paste a private key or seed phrase.

gdex_accountsA

List accounts connected on this machine (accountRef, control wallet, managed wallets, session age). No secrets are returned.

gdex_disconnectA

Forget a connected account on this machine (deletes its stored keys). Funds are not affected; reconnect later with gdex_connect and the key file.

gdex_statusA

Start here. Reports version, connected accounts (no secrets), API reachability, delegated trading policy per account, pending operations, supported trade kinds, and the next setup step.

gdex_preview_tradeA

Turn an explicit trade intent into exact executable terms without trading: market, side, human and raw amounts, quote source and time, minimum received or limit price, funding plan, expiry (60s). Returns a previewId for gdex_execute_trade. kind=spot (USDC wallet), perp_open, perp_close. For perps give notionalUsd (position size) or marginUsd (collateral), never guess which.

gdex_execute_tradeA

Execute a preview within the user's authority: userApproved=true only after the user approved THIS preview's terms; otherwise the account's delegated policy must allow it (else status denied). Re-quotes first: moved or expired terms return status revised with a new preview instead of trading. Returns an operation; follow it with gdex_operation. Never call again for the same intent after submission_unknown.

gdex_operationA

Follow or recover an operation by opId: waits for funding/fill (spot streams funding steps; perps check the live position), resolves submission_unknown by looking for the trade instead of resending, and reports needs_retry when the backend offers an in-place sell retry (usdc_retry_sell). Without opId, lists recent operations.

gdex_positionsA

What the account owns and has pending: unified USDC + gas balances per chain, Hyperliquid positions on every DEX, open orders, and unfinished operations. Each section says ok or unavailable; unavailable means unknown, not empty.

gdex_manage_positionA

Preview an exit for an existing position, against its live state: close/reduce a perp (reduce-only, correct side for longs and shorts) or sell a spot token back to USDC. Returns a preview; execute it with gdex_execute_trade.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

C2.7/5.0

Scored across 154 tools

Disambiguation2/5

Massive overlap across trading entry points: execute_spot, managed_purchase, buy_token, usdc_buy, usdc_buy_with_native and gdex_execute_trade all initiate buys, and sell paths are similarly duplicated. Balance/status tools also collide (get_balances, get_portfolio, get_wallet_info, get_trading_funds, usdc_get_balances, gdex_positions), and auth has many near-equivalent paths. Descriptions add guidance but the agent must still choose among several plausible tools for one intent.

Naming Consistency2/5

The surface mixes verb-first actions (get_top_traders, create_copy_trade, pause_copy_trade) with noun/verb phrases (limit_buy, managed_purchase, buy_token, trending_list) and family prefixes (hl_, usdc_, gdex_, get_, update_). Prefix families help, but there is no single predictable convention across the set.

Tool Count1/5

154 tools is far beyond a coherent toolset; many are duplicates, low-level manual variants, or documentation wrappers that should be consolidated. This size makes selection and maintenance impractical.

Completeness4/5

The domain is covered remarkably broadly: spot, perp, bridging, outcomes, copy trading, balances, auth, docs, watchlist, and social actions. Gaps are mostly minor or intentional (some tools flagged as broken, and certain lifecycle helpers are delegated to lower-level endpoints), but the enormous surface creates dead ends through duplication rather than missing capability.

Maintenance

ActivityActive
ResponsivenessUnresponsive