SODAX Builders MCP

Cross-network DeFi API data, AMM analytics, and SDK docs for 17+ networks.

사용해야 할까요

품질 및 안전성

A
설명 품질
95%
스키마 완전성
88%
이름 품질
79%
오염 위험
80%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (7)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool description contains suspicious base64-like encoded stringsodax_get_solver_quote에서
  • LOWTool 'sodax_get_transaction' description lacks action verbsodax_get_transaction에서
  • LOWTool 'sodax_get_intent' description lacks action verbsodax_get_intent에서
  • LOWTool 'docs_refresh' description lacks action verbdocs_refresh에서
  • LOWTool 'sodax_get_money_market_reserve_assets' name length outside 3-30 rangesodax_get_money_market_reserve_assets에서
  • LOWTool 'sodax_relay_get_transaction_packets' name length outside 3-30 rangesodax_relay_get_transaction_packets에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~6,935토큰 (도구 정의)
~1.5 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 5.42%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "builders-mcp": {
      "url": "https://builders.sodax.com/mcp"
    }
  }
}

원격 엔드포인트

https://builders.sodax.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (37)

🟢 읽기 전용🟡 쓰기🔴 삭제⚪ 알 수 없음
🟢sodax_get_supported_chains(format)

List all blockchain networks supported by SODAX for cross-chain swaps and DeFi operations

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_swap_tokens(chainId, format)

Get available tokens for swapping on SODAX, optionally filtered by chain

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "Filter tokens by spoke chain ID. Use the formal chain ID (e.g., '0x2105.base', 'ethereum', 'sonic', '0x1.icon', '0xa.optimism'). Call sodax_get_supported_chains for the full list."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_transaction(txHash, format)

Look up a specific transaction by its hash to see status, amounts, and details

입력 스키마

{
  "type": "object",
  "properties": {
    "txHash": {
      "type": "string",
      "description": "The transaction hash to look up (e.g., '0x...')"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "txHash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_user_transactions(userAddress, limit, offset, fromBlock, toBlock, ...)

Get intent/transaction history for a specific wallet address

입력 스키마

{
  "type": "object",
  "properties": {
    "userAddress": {
      "type": "string",
      "description": "The wallet address to look up (e.g., '0x...')"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100,
      "default": 20,
      "description": "Maximum number of transactions to return (1-100)"
    },
    "offset": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Number of transactions to skip for pagination"
    },
    "fromBlock": {
      "type": "number",
      "description": "Inclusive lower bound on blockNumber (chain-native ordering)"
    },
    "toBlock": {
      "type": "number",
      "description": "Inclusive upper bound on blockNumber (chain-native ordering)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "userAddress"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_volume(inputToken, outputToken, chainId, solver, fromBlock, ...)

Get solver volume data showing filled intents with filtering and pagination. Requires inputToken and outputToken. Optional filters: chain, solver, block range OR time range (don't mix both).

입력 스키마

{
  "type": "object",
  "properties": {
    "inputToken": {
      "type": "string",
      "description": "REQUIRED: Input token address"
    },
    "outputToken": {
      "type": "string",
      "description": "REQUIRED: Output token address"
    },
    "chainId": {
      "type": "number",
      "description": "Filter by chain ID (e.g., 146 for Sonic)"
    },
    "solver": {
      "type": "string",
      "description": "Filter by solver address (0x0...0 for default solver)"
    },
    "fromBlock": {
      "type": "number",
      "description": "Start block number (don't mix with since/until)"
    },
    "toBlock": {
      "type": "number",
      "description": "End block number (don't mix with since/until)"
    },
    "since": {
      "type": "string",
      "description": "Start time ISO format (don't mix with fromBlock/toBlock or fromTs/toTs)"
    },
    "until": {
      "type": "string",
      "description": "End time ISO format (don't mix with fromBlock/toBlock or fromTs/toTs)"
    },
    "fromTs": {
      "type": "number",
      "description": "Start timestamp (unix seconds). Don't mix with since/until or fromBlock/toBlock."
    },
    "toTs": {
      "type": "number",
      "description": "End timestamp (unix seconds). Don't mix with since/until or fromBlock/toBlock."
    },
    "sort": {
      "type": "string",
      "enum": [
        "asc",
        "desc"
      ],
      "default": "desc",
      "description": "Sort order by block number"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100,
      "default": 50,
      "description": "Maximum number of filled intents to return (1-100)"
    },
    "includeData": {
      "type": "boolean",
      "default": false,
      "description": "Include raw intent data in response"
    },
    "cursor": {
      "type": "string",
      "description": "Pagination cursor from previous response's nextCursor"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "inputToken",
    "outputToken"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_volume_stats(format)

Get aggregate solver volume stats: the approximate total number of filled-intent records (fill documents, not distinct intents). Cached ~60s upstream.

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_orderbook(limit, offset, srcChain, dstChain, inputToken, ...)

Get current orderbook entries showing pending/open intents

입력 스키마

{
  "type": "object",
  "properties": {
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 500,
      "description": "Max results (default server-side, cap 500)"
    },
    "offset": {
      "type": "number",
      "minimum": 0,
      "description": "Offset for simple pagination"
    },
    "srcChain": {
      "type": "number",
      "description": "Filter by source chain id"
    },
    "dstChain": {
      "type": "number",
      "description": "Filter by destination chain id"
    },
    "inputToken": {
      "type": "string",
      "description": "Filter by input token address"
    },
    "outputToken": {
      "type": "string",
      "description": "Filter by output token address"
    },
    "creator": {
      "type": "string",
      "description": "Filter by creator address"
    },
    "deadlineBefore": {
      "type": "number",
      "description": "Only return intents with deadline < value (Unix seconds)"
    },
    "deadlineAfter": {
      "type": "number",
      "description": "Only return intents with deadline > value (Unix seconds)"
    },
    "excludeZeroDeadline": {
      "type": "boolean",
      "description": "Exclude intents where deadline = 0"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_money_market_assets(chainId, format)

List all assets available for lending and borrowing in the SODAX money market

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "Filter by chain ID"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_user_position(userAddress, format)

Get a user's lending and borrowing position in the money market

입력 스키마

{
  "type": "object",
  "properties": {
    "userAddress": {
      "type": "string",
      "description": "The wallet address to look up"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "userAddress"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_partners(chainId, format)

List all SODAX integration partners including wallets, DEXs, and other protocols

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "integer",
      "description": "Filter partners by numeric chain ID (e.g. 146 for Sonic)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_token_supply(format)

Get SODA token supply information including total, circulating, and burned amounts

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_all_config(format)

Get full SODAX configuration including all supported chains, swap tokens, and protocol settings in one call

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_relay_chain_id_map(format)

Get mapping between chain IDs and intent relay chain IDs used by the SODAX relay network

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_all_chains_configs(format)

Get detailed configuration for all spoke chains including contract addresses, RPCs, and token configs

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_hub_assets(chainId, format)

Get assets representing spoke tokens on the hub (Sonic) chain, optionally filtered by source chain

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "Filter by source spoke chain ID. Use the formal chain ID (e.g., '0x2105.base', 'ethereum', 'sonic'). Call sodax_get_supported_chains for the full list."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_money_market_tokens(chainId, format)

Get tokens supported for money market lending/borrowing, optionally filtered by chain

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "Filter by chain ID"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_money_market_reserve_assets(format)

Get money market reserve assets used as collateral backing

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_amm_positions(owner, offset, limit, format)

Get AMM liquidity provider NFT positions, optionally filtered by owner address

입력 스키마

{
  "type": "object",
  "properties": {
    "owner": {
      "type": "string",
      "description": "Filter by owner wallet address"
    },
    "offset": {
      "type": "number",
      "minimum": 0,
      "description": "Number of positions to skip for pagination"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100,
      "description": "Maximum number of positions to return"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_amm_pool_candles(chainId, poolId, interval, from, to, ...)

Get OHLCV candlestick chart data for an AMM pool

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "Chain ID where the pool is deployed (e.g., 'sonic')"
    },
    "poolId": {
      "type": "string",
      "description": "The pool contract address or ID"
    },
    "interval": {
      "type": "string",
      "enum": [
        "1m",
        "5m",
        "15m",
        "1h",
        "4h",
        "1d"
      ],
      "description": "REQUIRED: Candle interval"
    },
    "from": {
      "type": "number",
      "description": "REQUIRED: Start timestamp (unix seconds)"
    },
    "to": {
      "type": "number",
      "description": "REQUIRED: End timestamp (unix seconds)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "chainId",
    "poolId",
    "interval",
    "from",
    "to"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_intent(intentHash, format)

Look up a specific intent by its intent hash (different from transaction hash)

입력 스키마

{
  "type": "object",
  "properties": {
    "intentHash": {
      "type": "string",
      "description": "The intent hash to look up (66 character hex string starting with 0x)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "intentHash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_solver_intent(intentHash, includeAll, format)

Get solver-side details for an intent including fill history. Use includeAll to see all solver documents.

입력 스키마

{
  "type": "object",
  "properties": {
    "intentHash": {
      "type": "string",
      "description": "The intent hash to look up"
    },
    "includeAll": {
      "type": "boolean",
      "default": false,
      "description": "Include all intent documents (history) instead of just the latest"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "intentHash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_money_market_asset(reserveAddress, format)

Get detailed information for a specific money market asset by its reserve address

입력 스키마

{
  "type": "object",
  "properties": {
    "reserveAddress": {
      "type": "string",
      "description": "The reserve contract address of the asset"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "reserveAddress"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_asset_borrowers(reserveAddress, offset, limit, format)

Get borrowers for a specific money market asset by its reserve address

입력 스키마

{
  "type": "object",
  "properties": {
    "reserveAddress": {
      "type": "string",
      "description": "The reserve contract address of the asset"
    },
    "offset": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Number of borrowers to skip for pagination"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100,
      "default": 20,
      "description": "Maximum number of borrowers to return (1-100)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "reserveAddress"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_asset_suppliers(reserveAddress, offset, limit, format)

Get suppliers (lenders) for a specific money market asset by its reserve address

입력 스키마

{
  "type": "object",
  "properties": {
    "reserveAddress": {
      "type": "string",
      "description": "The reserve contract address of the asset"
    },
    "offset": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Number of suppliers to skip for pagination"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100,
      "default": 20,
      "description": "Maximum number of suppliers to return (1-100)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "reserveAddress"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_all_borrowers(offset, limit, format)

Get all borrowers across all money market assets with pagination

입력 스키마

{
  "type": "object",
  "properties": {
    "offset": {
      "type": "number",
      "minimum": 0,
      "default": 0,
      "description": "Number of borrowers to skip for pagination"
    },
    "limit": {
      "type": "number",
      "minimum": 1,
      "maximum": 100,
      "default": 20,
      "description": "Maximum number of borrowers to return (1-100)"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_partner_summary(receiver, chainId, format)

Get volume and activity summary for a specific integration partner by their receiver address

입력 스키마

{
  "type": "object",
  "properties": {
    "receiver": {
      "type": "string",
      "description": "The partner receiver address"
    },
    "chainId": {
      "type": "string",
      "description": "Filter by chain ID"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "receiver"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_total_supply(format)

Get SODA token total supply as a plain number

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_circulating_supply(format)

Get SODA token circulating supply as a plain number

입력 스키마

{
  "type": "object",
  "properties": {
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🔴sodax_refresh_cache

Clear both the backend API cache and the solver oracle cache to force fresh fetches on next requests. Reports the number of entries cleared per cache.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_solver_oracle(chainId, symbol, format)

Get the solver's oracle USD prices per (chain, token). For quoting with sodax_get_solver_quote, filter chainId='146': chainId-146 addresses pass the quote service's compatibility check, while spoke-chain (non-146) addresses are rejected with 'not compatible with the quote service'. Caveat: passing that check (being listed/priced) does NOT guarantee a swap route — canonical bridged *_ASSET hub tokens and major stablecoins route most reliably, while many wrapped/derivative/money-market entries (e.g. WBTC, waLocBTC, SONIC_SODA_ASSET) are priced but frequently return 'No path was found', and routability is pair/amount/liquidity-dependent. Also useful for sanity-checking quote amounts against the USD prices the solver uses.

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "Filter results to a single intent-relay chain ID (decimal string, e.g. '146' for Sonic). Call sodax_get_relay_chain_id_map to translate."
    },
    "symbol": {
      "type": "string",
      "description": "Filter by token symbol (case-insensitive exact match, e.g. 'SODA', 'bnUSD')"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_get_solver_quote(tokenSrc, tokenDst, amount, quoteType, format)

Get a swap quote from the SODAX solver. tokenSrc/tokenDst MUST be hub-chain (Sonic, chainId 146) asset addresses — look them up with sodax_get_solver_oracle (chainId='146'). Working example: tokenSrc='0xeb0393893b5bf98a50073d6740738b08e575058b' (BTC_BTC_ASSET) → tokenDst='0xaeafa26e43f46cd83efe89b1e57c858eb5685a24' (ETH_ASSET), amount='99800', quoteType='exact_input' returns a quoted_amount. exact_input quotes the destination amount you'd receive; exact_output quotes the source amount you'd need. There are two distinct HTTP-400 failures, both naming the two addresses: (1) 'not compatible with the quote service' = an address isn't a recognized hub asset (a spoke-chain or otherwise non-chainId-146 address was passed) → use a chainId-146 address from sodax_get_solver_oracle, and for a reliable pick prefer a canonical bridged *_ASSET hub token or major stablecoin (chainId 146 alone doesn't guarantee a route). (2) 'No path was found between X and Y' = both tokens are valid hub assets but the solver couldn't route this pair for this amount → routing is pair/amount/liquidity-dependent, so retry with a smaller amount or a more liquid counterparty (a canonical bridged *_ASSET token, or a major stablecoin like SONIC_USDC_ASSET). Many wrapped/derivative entries (e.g. WBTC, waLocBTC, SONIC_SODA_ASSET) are oracle-priced but frequently have no route — prefer canonical bridged *_ASSET hub tokens.

입력 스키마

{
  "type": "object",
  "properties": {
    "tokenSrc": {
      "type": "string",
      "description": "REQUIRED: Source token address (the token you're spending). Hub-chain (Sonic, chainId 146) asset address from sodax_get_solver_oracle. Prefer canonical bridged *_ASSET tokens (e.g. BTC_BTC_ASSET 0xeb0393893b5bf98a50073d6740738b08e575058b); wrapped/derivative entries like WBTC are priced but frequently have no route."
    },
    "tokenDst": {
      "type": "string",
      "description": "REQUIRED: Destination token address (the token you want to receive). Hub-chain (Sonic, chainId 146) asset address from sodax_get_solver_oracle (e.g. ETH_ASSET 0xaeafa26e43f46cd83efe89b1e57c858eb5685a24). Prefer canonical bridged *_ASSET tokens or a major stablecoin for a routable pair."
    },
    "amount": {
      "type": "string",
      "description": "REQUIRED: Amount in the smallest unit of the input token (for exact_input) or output token (for exact_output). String to preserve precision. Note: a very large amount can exceed available liquidity and return 'No path was found' even for an otherwise-valid pair — reduce it if that happens."
    },
    "quoteType": {
      "type": "string",
      "enum": [
        "exact_input",
        "exact_output"
      ],
      "default": "exact_input",
      "description": "'exact_input' (default): given input amount, quote output amount. 'exact_output': given output amount, quote input amount required."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "tokenSrc",
    "tokenDst",
    "amount"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟡sodax_relay_submit_tx(chainId, txHash, data, format)

Submit a confirmed spoke-chain transaction to the SODAX intent relay so it can be delivered to the destination chain. The tx must already be finalized on the source chain. Re-submitting the same tx is a no-op. For split-tx chains (Solana, Bitcoin) supply the optional `data` argument.

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "REQUIRED: Intent-relay chain ID of the source chain (decimal string, e.g. '146' for Sonic, '2' for Ethereum). Call sodax_get_relay_chain_id_map to translate from a chain key."
    },
    "txHash": {
      "type": "string",
      "description": "REQUIRED: The confirmed transaction hash on the source chain"
    },
    "data": {
      "type": "object",
      "properties": {
        "address": {
          "type": "string",
          "description": "Contract address for split-tx chains"
        },
        "payload": {
          "type": "string",
          "description": "Hex payload for split-tx chains"
        }
      },
      "required": [
        "address",
        "payload"
      ],
      "additionalProperties": false,
      "description": "Required only for split-tx chains (Solana, Bitcoin). Omit for EVM chains."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "chainId",
    "txHash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_relay_get_transaction_packets(chainId, txHash, format)

List every cross-chain packet emitted by a given source transaction. Use this to track relay status — a packet is complete when status='executed' and dst_tx_hash is populated.

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "REQUIRED: Intent-relay chain ID of the source chain (decimal string, e.g. '146'). Call sodax_get_relay_chain_id_map to translate from a chain key."
    },
    "txHash": {
      "type": "string",
      "description": "REQUIRED: The source-chain transaction hash whose packets you want to inspect"
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "chainId",
    "txHash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢sodax_relay_get_packet(chainId, txHash, connSn, format)

Fetch a single relay packet by its connection serial number (conn_sn). Returns the packet data on success or a `{success:false, message}` shape if the packet isn't found.

입력 스키마

{
  "type": "object",
  "properties": {
    "chainId": {
      "type": "string",
      "description": "REQUIRED: Intent-relay chain ID of the source chain (decimal string)"
    },
    "txHash": {
      "type": "string",
      "description": "REQUIRED: The source-chain transaction hash"
    },
    "connSn": {
      "type": "string",
      "description": "REQUIRED: Connection serial number identifying the packet within the tx. Accepts string or number (numeric values are coerced — convenient for piping back a previously-fetched packet's `conn_sn` field)."
    },
    "format": {
      "type": "string",
      "enum": [
        "json",
        "markdown"
      ],
      "default": "markdown",
      "description": "Response format: 'json' for raw data or 'markdown' for formatted text"
    }
  },
  "required": [
    "chainId",
    "txHash"
  ],
  "additionalProperties": false,
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢docs_health

Check SDK documentation availability. Call this first if docs tools seem unavailable.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
⚪docs_refresh

Reconnect to SDK documentation and refresh available tools. Use if docs seem stale or unavailable.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}
🟢docs_list_tools

List all SDK documentation tools with parameters. Essential for discovering what's available.

입력 스키마

{
  "type": "object",
  "properties": {},
  "$schema": "http://json-schema.org/draft-07/schema#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 37개
검증됨버전이 기록되지 않음도구 37개