SODAX Builders MCP
Cross-network DeFi API data, AMM analytics, and SDK docs for 17+ networks.
사용해야 할까요
품질 및 안전성
발견 사항 (7)
- HIGH
- MEDIUMsodax_get_solver_quote에서
- LOWsodax_get_transaction에서
- LOWsodax_get_intent에서
- LOWdocs_refresh에서
- LOWsodax_get_money_market_reserve_assets에서
- LOWsodax_relay_get_transaction_packets에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`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#"
}커뮤니티
증거