Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

Gate DEX MCP

REMOTE · API.GATEMCP.AI · SCANNED AUG 3

Gate DEX MCP for wallet auth, transfers, swaps, token info, market data, and RPC access.

Available components

+2 this week 57 Trust /100
Trust breakdown (6 categories)

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score →

Endpoint Security46
Transport & Reachability100
Schema Quality & AI Usability50
  • 71% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Partial
  • AI-judged instruction clarity (fair).Partial
  • Context-footprint check failed: tool/resource definitions use about 9735 tokens (~167/item across 58 items; 47 tools + 11 resources), over budget; trim descriptions and params. See how to fix → Fail
  • Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management27
  • Stability observed for 8 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
  • 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
  • 100% of tool parameters carry a description.Pass
Capabilities100
  • Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
Install

Add this component to your MCP client. Where a client-specific snippet is available, pick your client below and copy it straight into your config; otherwise use the connection detail shown.

remote · api.gatemcp.ai

# add to Claude Code
claude mcp add --transport http gateio-dev-gate-dex https://api.gatemcp.ai/mcp/dex
# ~/.codex/config.toml
[mcp_servers.gateio-dev-gate-dex]
url = "https://api.gatemcp.ai/mcp/dex"
// opencode.json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "gateio-dev-gate-dex": {
      "type": "remote",
      "url": "https://api.gatemcp.ai/mcp/dex",
      "enabled": true
    }
  }
}
# add to OpenClaw
openclaw mcp add gateio-dev-gate-dex --url https://api.gatemcp.ai/mcp/dex --transport streamable-http
# ~/.hermes/config.yaml
mcp_servers:
  gateio-dev-gate-dex:
    url: "https://api.gatemcp.ai/mcp/dex"
// mcp.json
{
  "mcpServers": {
    "gateio-dev-gate-dex": {
      "type": "http",
      "url": "https://api.gatemcp.ai/mcp/dex"
    }
  }
}

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

Changelog

Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.

  • 2 Aug 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 20 to 23. That category is still filling its 30-day observation window: 6 days of observed history at the previous scan, 7 at this one. The score rises as the window fills, whether or not the server changes.

  • 31 Jul 26 −1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 30 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 29 Jul 26 +1

    No change was recorded against any check on this day. Stability & Change Management went from 7 to 10. That category is still filling its 30-day observation window: 2 days of observed history at the previous scan, 3 at this one. The score rises as the window fills, whether or not the server changes.

  • 27 Jul 26 +1
    • We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
  • 26 Jul 26 54

    First indexed and scored.

Diagnostics

Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.

Captured 3 Aug 2026 · Probed https://api.gatemcp.ai/mcp/dex

TLS valid

Negotiated TLS 1.3 with TLS_AES_256_GCM_SHA384 .

Subject Issuer Valid from Valid until Key Signature Serial
CN=api.gatemcp.ai CN=TrustAsia DV TLS RSA CA 2025,O=TrustAsia Technologies\, Inc.,C=CN 1 Aug 2026 29 Oct 2026 RSA 2048 SHA256-RSA 5b67f0c347846bf3451b522c6ab8381
SANs: api.gatemcp.ai
CN=TrustAsia DV TLS RSA CA 2025,O=TrustAsia Technologies\, Inc.,C=CN (CA) CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US 8 Jan 2025 7 Jan 2035 RSA 4096 SHA256-RSA 926323b4964e368461512def1a5d52c
CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US (CA) CN=DigiCert Global Root G2,OU=www.digicert.com,O=DigiCert Inc,C=US 1 Aug 2013 15 Jan 2038 RSA 2048 SHA256-RSA 33af1e6a711a9a0bb2864b11d09fae5
DNSSEC insecure

Validation of api.gatemcp.ai. Not signed

Zone DS Keys Algorithms Outcome
. trust_anchor 20326, 38696 8, 8 Verified
ai. present 3799 8 Verified
gatemcp.ai. absent Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation
Authentication No authorisation required

The endpoint answered without asking for a token. Anyone who knows the URL can reach it.

Result No authorisation required
HTTP status 200
Transports 2 probes
Transport URL Outcome Status Location
streamable-http https://api.gatemcp.ai/mcp/dex Verified 200
http (plaintext) http://api.gatemcp.ai/mcp/dex Inconclusive 404
MCP tools — 47 exposed · ~9,216 tokens

The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability.

Tool Tokens
dex_agentic_report ~119

Register agentic wallet addresses with the wallet service.

NameTypeReqDescription
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
walletsobjectyesArray of wallet info objects. Each wallet contains walletID and accounts array. Each account contains accountID and chainAddressList array. Each chainAddress contains networkKey, chains, chainAddress…

No output schema declared.

No examples provided.

dex_auth_gate_login_poll ~130

Poll Gate OAuth; returns pending/ok/error. [write] On ok: replace mcp_token unless linked_to_google_session is true. Pass auto_replace_binding=true to rebind exchange UID on new Gate session.

NameTypeReqDescription
auto_replace_bindingbooleanIf true and status is ok: when new session walletType is not gate_mcp/gate_quick, call BW POST /v1/wallet/inner/rebind (same as dex_wallet_replace_binding). Gate-native sessions are blocked without c…
flow_idstringyesFlow ID returned by dex_auth_gate_login_start

No output schema declared.

No examples provided.

dex_auth_gate_login_start ~66

Start Gate device OAuth; returns verification_url. Pass link_mcp_token on a Google session to bind Gate UID without replacing mcp_token.

NameTypeReqDescription
link_mcp_tokenstringCurrent Google wallet mcp_token for bind-only Gate OAuth; omit for standalone Gate login

No output schema declared.

No examples provided.

dex_auth_google_login_poll ~67

Poll Google OAuth flow; returns pending/ok/error. [write] On ok: immediately replace stored mcp_token with login_result.mcp_token — new token is tied to a different account.

NameTypeReqDescription
flow_idstringyesFlow ID returned by dex_auth_google_login_start

No output schema declared.

No examples provided.

dex_auth_google_login_start ~20

Returns browser verification URL for Google device OAuth.

Input schema present but exposes no named parameters.

No output schema declared.

No examples provided.

dex_auth_login_gate_wallet ~70

Exchange Gate OAuth code for MCP token. [write] On success, immediately replace any stored mcp_token — new token is tied to a different account.

NameTypeReqDescription
codestringyesGate OAuth authorization code
redirect_urlstringyesGate OAuth redirect URL used in the authorization request

No output schema declared.

No examples provided.

dex_auth_login_google_wallet ~70

Exchange Google OAuth code for MCP token. [write] On success, immediately replace any stored mcp_token — new token is tied to a different account.

NameTypeReqDescription
codestringyesGoogle OAuth authorization code
redirect_urlstringyesGoogle OAuth redirect URL used in the authorization request

No output schema declared.

No examples provided.

dex_auth_logout ~34

Revoke the MCP session identified by mcp_token.

NameTypeReqDescription
mcp_tokenstringyesMCP session token to revoke

No output schema declared.

No examples provided.

dex_chain_config ~116

Returns chain config (networkKey, accountKey, chainID). Use the returned chain value in all subsequent transfer/sign/broadcast tools.

NameTypeReqDescription
chainstringyesChain name or alias (matching is case-insensitive). Use the returned `chain` value for all subsequent tools on that network.
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_market_get_kline ~220

OHLCV candles by period and window. Volume aggregates→get_tx_stats. Pool events→get_pair_liquidity.

NameTypeReqDescription
chainstringyesChain name. Supported: bsc, base, eth, solana, arbitrum, polygon, avalanche, fantom, zksync, linea, optimism, sui, blast, tron, merlin, world, eni, bera, gatelayer, ton
end_timestringEnd time (unix seconds); default: now
limitstringMax number of candles (default 100, max 1000)
pair_addressstringOptional pair address
periodstringyesK-line period: seconds (e.g. 300, 3600) or 1m, 5m, 1h, 4h, 1d
start_timestringStart time (unix seconds); default: 100 periods before end_time
token_addressstringyesToken contract address

No output schema declared.

No examples provided.

dex_market_get_pair_liquidity ~150

AMM pool deposit and withdrawal events. Candlesticks→get_kline. Volume stats→get_tx_stats.

NameTypeReqDescription
chainstringyesChain name. Supported: bsc, base, eth, solana, arbitrum, polygon, avalanche, fantom, zksync, linea, optimism, sui, blast, tron, merlin, world, eni, bera, gatelayer, ton
page_indexstringPage index (default 1)
page_sizestringPage size (default 15, max 15)
pair_addressstringOptional pair address
token_addressstringyesToken contract address

No output schema declared.

No examples provided.

dex_market_get_tx_stats ~127

Per-interval buy/sell volume and tx counts (5m–24h). Candlesticks→get_kline. Pool events→get_pair_liquidity.

NameTypeReqDescription
chainstringyesChain name. Supported: bsc, base, eth, solana, arbitrum, polygon, avalanche, fantom, zksync, linea, optimism, sui, blast, tron, merlin, world, eni, bera, gatelayer, ton
pair_addressstringOptional pair address
token_addressstringyesToken contract address

No output schema declared.

No examples provided.

dex_rpc_call ~132

Proxy a JSON-RPC call to a blockchain node.

NameTypeReqDescription
chainstringyesChain name (e.g., ETH, BSC, SOL, ARB, POLYGON)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
methodstringyesRPC method name (e.g., eth_blockNumber, eth_getBalance, getLatestBlockhash)
paramsarrayRPC method parameters as JSON array

No output schema declared.

No examples provided.

dex_token_get_coin_info ~68

Price, market snapshot, metadata, optional top holders. Security audit→get_risk_info.

NameTypeReqDescription
addressstringyesToken contract address
chainstringyesBlockchain network
include_holdersstringInclude top holders (true/false, default true)

No output schema declared.

No examples provided.

dex_token_get_coins_range_by_created_at ~131

Tokens launched within a given time window; chain optional for all networks.

NameTypeReqDescription
chainstringOptional chain filter; omit for all chains
endstringyesEnd of creation time range (RFC3339, e.g. 2025-01-02T00:00:00Z)
limitstringMax number of tokens (1-100, default 20)
startstringyesStart of creation time range (RFC3339, e.g. 2025-01-01T00:00:00Z)

No output schema declared.

No examples provided.

dex_token_get_risk_info ~133

Contract security audit (honeypot, tax, ownership flags). Price and market stats→get_coin_info.

NameTypeReqDescription
addressstringyesToken contract address
chainstringyesChain name. Supported: bsc, polygon, avalanche, arbitrum, optimism, base, fantom, linea, zksync, world, gatelayer, merlin, blast, eni, bera, solana, ton, sui, tron
ignorestringSet to true to hide empty risk items
lanstringLanguage code (e.g. en, zh)

No output schema declared.

No examples provided.

dex_token_list_cross_chain_bridge_tokens ~178

Receivable assets on target chain for a source token. Same-chain trading→list_swap_tokens.

NameTypeReqDescription
account_idstringUser account ID. Only used when wallet is empty, to look up wallet addresses.
chainstringyesTarget chain identifier, e.g. bsc, arbitrum, polygon
searchstringSearch keyword (token symbol or contract address) to filter results
search_authbooleanWhen searching, only return certified tokens. Only effective when search is non-empty.
source_addressstringyesSource token contract address on the source chain
source_chainstringyesSource chain identifier, e.g. eth, bsc, solana
walletstringUser wallet address(es), comma-separated. Used to show balances and favorites.

No output schema declared.

No examples provided.

dex_token_list_swap_tokens ~223

Tradable assets on a chain; tag selects favorites or recommendations. Bridge targets→list_cross_chain_bridge_tokens.

NameTypeReqDescription
account_idstringUser account ID. Only used when wallet is empty.
chainstringChain identifier, e.g. eth, bsc, solana, arbitrum. Omit to query all chains.
ignore_bridgebooleanIgnore cross-chain bridge restrictions, only filter by chain. Default false.
searchstringSearch keyword (token symbol or contract address)
search_authbooleanWhen searching, only return certified tokens. Only effective when search is non-empty.
tagstringList type: empty for normal token list; 'favorite' for user favorites (requires wallet/account_id); 'recommend' for system recommended tokens.
walletstringUser wallet address(es), comma-separated. Used for favorites and balance display.
web3_keystringChain web3_key identifier. Only used when chain is empty, auto-maps to chain.

No output schema declared.

No examples provided.

dex_token_ranking ~83

Top movers by 24h price change; direction selects gainers vs losers. Single token→get_coin_info.

NameTypeReqDescription
chainstringOptional chain filter
directionstringyes'desc' for top gainers, 'asc' for top losers
top_nstringNumber of tokens (1-100, default 10)

No output schema declared.

No examples provided.

dex_tx_approve_preview ~359

Build ERC20/SPL approve or revoke tx (does not broadcast). Sign with dex_wallet_sign_transaction after user confirmation.

NameTypeReqDescription
actionstringAction type: 'approve' (default) or 'revoke' (revoke all approvals, Solana only)
amountstringyesApproval amount (human-readable). Set to '0' to revoke approval (EVM), set to 'unlimited' or 'max' for maximum allowance
chainstringChain name (default ETH). Based on backend chain configuration.
max_fee_per_gasstringEVM: override max fee per gas (wei)
max_priority_fee_per_gasstringEVM: override max priority fee per gas (wei)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
noncestringEVM: transaction nonce. Omit to auto-fetch current nonce.
ownerstringyesOwner address (your wallet address)
priority_fee_micro_lamportsstringSolana: priority fee (micro-lamports per compute unit)
spenderstringyesSpender address (EVM: spender contract address; Solana: delegate account address)
token_contractstringEVM: ERC20 contract address (required for EVM)
token_decimalsstringyesToken decimals (e.g. 6, 18, 9)
token_mintstringSolana: SPL Token mint address (required for Solana)

No output schema declared.

No examples provided.

dex_tx_detail ~100

Fetch transaction detail by on-chain hash. → swap_detail for swap order detail by order ID.

NameTypeReqDescription
from_walletstringOptional sender wallet address filter
hash_idstringyesTransaction hash ID
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_tx_gas ~140

Estimate on-chain gas price and gas limit for a given tx.

NameTypeReqDescription
chainstringyesChain name or alias; resolved via dex_chain_config before calling upstream.
datastringTransaction calldata (hex)
fromstringyesSender address
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
networkstringNetwork name
tostringyesRecipient address
valuestringTransfer value in wei

No output schema declared.

No examples provided.

dex_tx_get_sol_unsigned ~172

Solana only: build fresh native SOL unsigned tx with latest blockhash; avoids Blockhash not found. Sign immediately. → transfer_preview for full summary first.

NameTypeReqDescription
amountstringyesAmount in SOL, e.g. 0.0001
fromstringyesSender address (base58)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
priority_fee_micro_lamportsstringOptional priority fee (micro-lamports per compute unit). Try 1000-10000 if broadcast returns replacement transaction underpriced.
tostringyesRecipient address (base58)

No output schema declared.

No examples provided.

dex_tx_list ~174

List wallet transaction history (transfers). → swap_history_list for swap/bridge orders. → tx_detail for single tx by hash.

NameTypeReqDescription
account_idstringyesAccount ID
addressstringWallet address filter
cursorstringPagination cursor
end_timestringEnd time (Unix seconds or ISO8601)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
page_numstringPage number (1-based)
page_sizestringPage size (default 20)
start_timestringStart time (Unix seconds or ISO8601)

No output schema declared.

No examples provided.

dex_tx_send_raw_transaction ~447

Broadcast a signed tx to the chain. [write] Requires user confirmation after transfer preview and prior signing via dex_wallet_sign_transaction.

NameTypeReqDescription
account_idstringAccount ID (for history_data)
action_typestringAction type (history_data.action_type)
addressstringSender wallet address (history_data.address)
chainstringyesChain name: must match dex_chain_config response `chain` (canonical). Aliases are resolved via chain config before calling upstream.
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
memostringMemo (history_data.memo)
networkstringNetwork name
noncenumberNonce (history_data.nonce)
signed_txstringyesSigned transaction data. For EVM chains: hex string (0x prefix added automatically). For other chains (e.g. Solana): use chain-specific format
token_addrstringToken contract address (history_data.token_addr)
token_namestringToken name (history_data.token_name)
token_short_namestringToken symbol, e.g. USDT (history_data.token_short_name)
trans_balancestringDisplay amount (history_data.trans_balance)
trans_balance_usdstringUSD value (history_data.trans_balance_usd)
trans_gas_feestringGas fee display (history_data.trans_gas_fee)
trans_min_unit_amountstringAmount in smallest unit (history_data.trans_min_unit_amount)
trans_min_unit_gas_feestringGas fee in smallest unit (history_data.trans_min_unit_gas_fee)
trans_oppo_addressstringCounterparty address, e.g. recipient (history_data.trans_oppo_address)
trans_timestringTransaction time ISO8601 (default: now)
trans_typestringTransaction type (history_data.trans_type)

No output schema declared.

No examples provided.

dex_tx_swap_checkin_preview ~184

Returns check-in fields for a swap stage (approve or swap). Call after prepare and before terminal tx-checkin script.

NameTypeReqDescription
mcp_tokenstringyesMCP session token (required in the tool schema). After Google or Gate wallet login, read it from login_result when dex_auth_google_login_poll or dex_auth_gate_login_poll returns success. The server c…
stagestringyesPreview stage: 'approve' or 'swap'
swap_session_idstringyesSwap session ID returned by dex_tx_swap_prepare

No output schema declared.

No examples provided.

dex_tx_swap_detail ~96

Fetch swap order detail by order ID from swap_submit. → tx_detail for detail by on-chain hash.

NameTypeReqDescription
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
tx_order_idstringyesTransaction order ID from dex_tx_swap_submit

No output schema declared.

No examples provided.

dex_tx_swap_history_list ~229

List swap/bridge order history with pagination; includes single-chain and cross-chain. → tx_list for transfer history.

NameTypeReqDescription
account_idstringyesAccount ID (wallet address)
dst_chainnumberDestination chain ID filter. 0 or omit for all chains
end_timestringEnd time filter (ISO8601 format)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
page_numnumberPage number (0-based, default 0)
page_sizenumberPage size (default 20)
src_chainnumberSource chain ID filter (e.g. 1=ETH, 56=BSC). 0 or omit for all chains
start_timestringStart time filter (ISO8601 format, e.g. 2025-01-01T00:00:00Z)

No output schema declared.

No examples provided.

dex_tx_swap_prepare ~839

Stage a swap session (server-side build only); returns swap_session_id. Does not sign or submit. Call after quote confirmed by user.

NameTypeReqDescription
account_idstringyesUser account ID (UUID)
amountstringyesHuman-readable amount (e.g. '0.01')
chain_id_innumberyesSource chain ID (e.g. 1=ETH, 56=BSC, 501=Solana)
chain_id_outnumberyesDestination chain ID. Same as chain_id_in for single-chain swap
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
native_innumberyes⚠️ CRITICAL — Must be set correctly, wrong value causes transaction failure or fund loss. Simply check: is token_in a native/gas coin? If yes, set 1; if it's a contract token, set 0. Native coins: ET…
native_outnumberyes⚠️ CRITICAL — Must be set correctly, wrong value causes transaction failure or fund loss. Simply check: is token_out a native/gas coin? If yes, set 1; if it's a contract token, set 0. Native coins: E…
slippagenumberyesSlippage as decimal (0.01=1%, 0.1=10%)
to_walletstringDestination chain receiving address. ONLY required for CROSS-CHAIN swaps where chain_id_in and chain_id_out belong to different address groups (e.g. EVM→Solana). Obtain from dex_wallet_get_addresses.…
token_instringyesSource token address. Use '-' for native coin
token_outstringyesDestination token address
user_walletstringyesUser's wallet address matching the SOURCE CHAIN. MUST be chain-specific: call dex_wallet_get_addresses(account_id) to get addresses, use addresses["EVM"] for EVM chains or addresses["SOL"] for Solana…

No output schema declared.

No examples provided.

dex_tx_swap_quote ~1,192

Returns swap route and pricing. Call before swap_prepare; show result to user before proceeding. → transfer_preview for direct token send (not exchange).

NameTypeReqDescription
amountstringyesHuman-readable amount of source token to swap, e.g. "0.001" for 0.001 BNB, "1" for 1 USDT. Do NOT convert to smallest unit (wei/lamports). Obtained directly from user's chat message.
chain_id_innumberyesSource chain ID. Use well-known IDs: ETH=1, BSC=56, Polygon=137, Arbitrum=42161, Base=8453, Avalanche=43114, Solana=501. Only call dex_chain_config for uncommon/unknown chains. For single-chain swap,…
chain_id_outnumberyesDestination chain ID. Use same well-known IDs as chain_id_in. For single-chain swap, set equal to chain_id_in. For cross-chain swap, set to the target chain's ID.
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
native_innumberyes⚠️ CRITICAL — Must be set correctly, wrong value causes transaction failure or fund loss. Simply check: is token_in a native/gas coin? If yes, set 1; if it's a contract token, set 0. Native coins: ET…
native_outnumberyes⚠️ CRITICAL — Must be set correctly, wrong value causes transaction failure or fund loss. Simply check: is token_out a native/gas coin? If yes, set 1; if it's a contract token, set 0. Native coins: E…
slippagenumberyesSlippage tolerance as decimal ratio: 0.01 = 1%, 0.03 = 3%. Valid range: 0.001 (0.1%) to 0.499 (49.9%). If the user already specified slippage, use it directly. Only ask to confirm when not provided.…
to_walletstringDestination chain receiving address. ONLY required for CROSS-CHAIN swaps where chain_id_in and chain_id_out belong to different address groups (e.g. EVM→Solana or Solana→EVM). Obtain from dex_wallet_…
token_instringyesSource token contract address. Use "-" for native coins (ETH, BNB, MATIC, etc.). For ERC20/BEP20 tokens, provide the full contract address (e.g. 0x55d398326f99059ff775485246999027b3197955 for BSC USD…
token_outstringyesDestination token contract address. Use "-" for native coins. For ERC20/BEP20 tokens, provide the full contract address. Obtain from user input, wallet_get_token_list, or known token mappings. If nat…
user_walletstringyesUser's wallet address matching the SOURCE CHAIN. CRITICAL: You MUST use the chain-specific address — call dex_wallet_get_addresses(account_id) first, then use addresses["EVM"] for EVM chains (ETH/BSC…

No output schema declared.

No examples provided.

dex_tx_swap_sign_approve ~136

[write] Sign the ERC20 approve tx for a staged EVM swap. Requires need_approved=true in prepare result.

NameTypeReqDescription
checkin_tokenstringyesApprove-stage checkin_token returned by the local skill check-in script after dex_tx_swap_checkin_preview(stage='approve')
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
swap_session_idstringyesSwap session ID returned by dex_tx_swap_prepare

No output schema declared.

No examples provided.

dex_tx_swap_sign_swap ~146

[write] Sign the main swap tx for a staged session. EVM: call sign_approve first if need_approved=true. Solana: generates a fresh signable payload.

NameTypeReqDescription
checkin_tokenstringyesSwap-stage checkin_token returned by the local skill check-in script after dex_tx_swap_checkin_preview(stage='swap')
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
swap_session_idstringyesSwap session ID returned by dex_tx_swap_prepare

No output schema declared.

No examples provided.

dex_tx_swap_submit ~110

[write] Broadcast a staged swap to the chain. Does not sign. Requires all signing steps complete (sign_approve if EVM+approval, then sign_swap).

NameTypeReqDescription
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
swap_session_idstringyesSwap session ID returned by dex_tx_swap_prepare

No output schema declared.

No examples provided.

dex_tx_transfer_preview ~528

Build unsigned transfer tx; displays summary (sender, recipient, amount, gas). Returns unsigned_tx_hex and txBundle for check-in. Does not broadcast. Wait for user confirmation before signing. → swap_quote/swap_prepare for token exchange.

NameTypeReqDescription
amountstringyesAmount in token units. Precision depends on token/decimals. Examples: '1', '0.5', '0.000001'
chainstringChain name or alias (default ETH). Resolved to canonical name from chain config; downstream sign/broadcast should use the same logical chain.
fromstringyesSender (your wallet) address
max_fee_per_gasstringEVM only: override max fee per gas (wei). Use when replacing a pending tx: set ≥1.1× the previous max_fee_per_gas to fix replacement transaction underpriced.
max_priority_fee_per_gasstringEVM only: override max priority fee per gas (wei). When replacing, set ≥1.1× previous max_priority_fee_per_gas.
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
noncestringTransaction nonce. Omit to use current chain nonce (eth_getTransactionCount), ensuring tx can be mined and found on explorer; wrong nonce causes tx to fail or not appear.
priority_fee_micro_lamportsstringSolana only: optional priority fee (micro-lamports per compute unit). Use 1000-10000 if broadcast returns replacement transaction underpriced.
tostringyesRecipient address
tokenstringToken symbol for display (default USDT). Use ETH/NATIVE for native; USDT for USDT; or use token_contract/token_mint for any token.
token_contractstringEVM: ERC20 contract address for arbitrary token. When set, token_decimals is used (default 18). Solana: unused.
token_decimalsstringToken decimals (e.g. 6, 18). Required when using token_contract (EVM) or token_mint (Solana); default 18 for ERC20, 9 for SOL.
token_mintstringSolana: SPL token mint address for SPL transfer. When set, token_decimals is required. EVM: unused.

No output schema declared.

No examples provided.

dex_tx_x402_checkin_preview ~276

Prepare Gate Verify tx_checkin for x402 (EVM exact / EIP-3009 only): returns tx_checkin.message (64-hex digest) and x402_payment_required_b64 without signing. Flow: 1) this tool 2) Gate Verify tx_checkin with returned tx_checkin fields 3) dex_tx_x402_fetch with same url/body/headers, checkin_token, and the same x402_payment_required_b64. If x402_payment_required_b64 is omitted, performs one HTTP call and requires HTTP 402.

NameTypeReqDescription
bodystringOptional request body
headersstringOptional JSON object of request headers
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
methodstringHTTP method; default GET
urlstringyesSame URL as dex_tx_x402_fetch
x402_payment_required_b64stringOptional: PAYMENT-REQUIRED header base64; when omitted, one outbound request is made and must return 402
x402_preferred_networkstringSame as dex_tx_x402_fetch

No output schema declared.

No examples provided.

dex_tx_x402_fetch ~419

[write] Send an HTTP request to the given URL. If the server responds with 402 Payment Required, pay via x402 (Coinbase-style: USDC EIP-3009 / Permit2 on EVM, SPL on Solana), retry with PAYMENT-SIGNATURE. REQUIRED: Gate Verify tx_checkin before signing; pass checkin_token. For EVM EIP-3009, use dex_tx_x402_checkin_preview first so the agent does not build digest manually; then pass checkin_token and the same x402_payment_required_b64 from preview. CoinGecko Pro x402: do not send x-cg-pro-api-key; default network Base unless x402_preferred_network=solana.

NameTypeReqDescription
bodystringOptional request body
checkin_tokenstringyesFrom Gate Verify MCP tool tx_checkin success (e.g. structuredContent.data.checkin_token or data.checkin_token). Required before every call so GV can verify signing.
headersstringOptional JSON object of request headers
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
methodstringHTTP method; default GET
urlstringyesRequest URL (CoinGecko x402: https://pro-api.coingecko.com/api/v3/x402/...)
x402_payment_required_b64stringOptional: base64 PAYMENT-REQUIRED header payload from the same 402 as EIP-3009 tx-checkin. When set, skips the first HTTP call and pays using this snapshot (digest/checkin_token must match).
x402_preferred_networkstringOptional: base, eth, solana, eip155:8453, ... — restrict which accept.network is used. CoinGecko Pro /x402/ defaults to base when omitted.

No output schema declared.

No examples provided.

dex_wallet_bind_exchange_uid ~114

Bind Gate exchange UID to session. Standalone Gate session only; gateUid must equal login_result.gate_uid from Gate OAuth. → replace_binding to rebind.

NameTypeReqDescription
gateUidstringyesMust equal login_result.gate_uid from Gate OAuth that created this session
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_wallet_get_addresses ~94

Returns address map by chain type (EVM, SOL, etc.). Call before transfer/swap tools to get the sender address.

NameTypeReqDescription
account_idstringyesAccount ID
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_wallet_get_bindings ~69

Returns current Gate UID binding for the session wallet.

NameTypeReqDescription
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_wallet_get_token_list ~174

Token balances and prices with pagination; filter by network_keys. → get_total_asset for portfolio summary only.

NameTypeReqDescription
account_idstringAccount ID (optional, auto-detected from login session)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
network_keysstringOptional. Comma-separated network keys to filter (e.g. ETH,SOL,ARB). Omit or leave empty for all networks. Do not pass a separate chain field — use network_keys only.
pagenumberPage number, default 1
page_sizenumberPage size, default 20

No output schema declared.

No examples provided.

dex_wallet_get_total_asset ~97

Total portfolio value and 24h change. → get_token_list for per-token balance detail.

NameTypeReqDescription
account_idstringAccount ID (optional, auto-detected from login session)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_wallet_get_wallet_type ~210

Returns walletAddress, walletType, gateUid. With for_withdraw_to_exchange or for_gate_oauth_bind, also starts Gate OAuth when gateUid is missing.

NameTypeReqDescription
account_idstringAccount ID; used with session to resolve EVM address if wallet_address omitted
for_gate_oauth_bindbooleanBind/rebind Gate exchange: when walletType is NOT gate_mcp/gate_quick, start Gate OAuth (Google: link); when already Gate-native with gateUid, returns nextSteps only
for_withdraw_to_exchangebooleanWithdraw-to-exchange: when gateUid is missing, start Gate device OAuth (Google: link binding)
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
wallet_addressstringEVM wallet address to classify

No output schema declared.

No examples provided.

dex_wallet_google_gate_bind_start ~84

Google sessions only: starts Gate OAuth to bind Gate exchange UID to this session. mcp_token stays unchanged after poll.

NameTypeReqDescription
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403

No output schema declared.

No examples provided.

dex_wallet_replace_binding ~121

Rebind Gate exchange UID. [write] newUid must equal login_result.gate_uid from a fresh Gate OAuth. Blocked for gate_mcp/gate_quick sessions and Google sessions.

NameTypeReqDescription
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
newUidstringyesMust equal login_result.gate_uid from latest Gate OAuth (stamped on session)

No output schema declared.

No examples provided.

dex_wallet_sign_message ~204

Sign a 32-byte hex message with wallet key. [write] Requires checkin_token from terminal tx-checkin. → sign_transaction for raw tx signing.

NameTypeReqDescription
chainstringyesChain: dex_chain_config name/alias (e.g. ETH, BSC, SOL), or pass EVM / SOL directly for the signing family. Unknown names are rejected via chain config; web3_business_wallet sign-message receives cha…
checkin_tokenstringyesFrom successful tx-checkin response: the checkin_token string (terminal CLI stdout JSON). Must match the signing intent in the same flow.
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
messagestringyesMessage to sign (hex)

No output schema declared.

No examples provided.

dex_wallet_sign_transaction ~168

Sign a raw unsigned transaction. [write] Requires user confirmation after transfer preview and checkin_token from terminal tx-checkin. → dex_tx_send_raw_transaction to broadcast.

NameTypeReqDescription
chainstringyesChain name: must match dex_chain_config response `chain` (canonical). Aliases are resolved via chain config.
checkin_tokenstringyesFrom successful tx-checkin response: the checkin_token string (terminal CLI stdout JSON). Must match the signing intent in the same flow.
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
raw_txstringyesRaw transaction data

No output schema declared.

No examples provided.

dex_withdraw_deposit_address ~197

Fetch Gate exchange deposit address for the session-bound Gate UID. [write] amount must be ≥ min_deposit_amount; do not pass uid — it is resolved from the session.

NameTypeReqDescription
amountstringyesRequired. Human-readable amount (same units as on-chain transfer); must be ≥ exchange min_deposit_amount
chain_namestringyesChain name, e.g. BSC, ETH
coin_symbolstringyesCoin symbol, e.g. USDT
mcp_tokenstringMCP session token obtained from login (dex_auth_google_login_poll or dex_auth_gate_login_poll). MUST be provided in every call to this tool after login; omitting it will result in 403
token_addressstringOptional. ERC20 contract for gate-deposit; empty for native. If omitted, USDT is resolved from chain_name; other symbols may require this field

No output schema declared.

No examples provided.