{
  "version": "0.1",
  "updatedAt": "2026-08-17",
  "skills": [
    {
      "id": "swap",
      "name": "Cross-chain swap",
      "description": "Quote and execute cross-chain swaps via the SODAX intent system; independent solvers on the marketplace fill the intents. Sonic is the hub; routes span EVM chains, Solana, Sui, Stellar, and Injective.",
      "capability": "read+execute",
      "ui": "https://sodax.com/exchange/swap",
      "sdk": {
        "package": "@sodax/sdk",
        "module": "swap",
        "entrypoints": [
          "SwapService",
          "SolverApiService",
          "EvmSolverService"
        ]
      },
      "docs": "https://docs.sodax.com/developers/packages/foundation/sdk/functional-modules/swaps",
      "mcpTools": [
        "sodax_get_swap_tokens",
        "sodax_get_intent",
        "sodax_get_solver_intent"
      ]
    },
    {
      "id": "money-market",
      "name": "Money market (lend & borrow)",
      "description": "Supply and borrow assets on the SODAX money market. Supports per-asset rate lookup, reserve data, and per-user position inspection.",
      "capability": "read+execute",
      "ui": "https://sodax.com/exchange/loans",
      "sdk": {
        "package": "@sodax/sdk",
        "module": "moneyMarket",
        "entrypoints": [
          "MoneyMarketService",
          "MoneyMarketDataService",
          "LendingPoolService",
          "UiPoolDataProviderService"
        ]
      },
      "docs": "https://docs.sodax.com/developers/packages/foundation/sdk/functional-modules/money_market",
      "mcpTools": [
        "sodax_get_money_market_assets",
        "sodax_get_money_market_asset",
        "sodax_get_asset_suppliers",
        "sodax_get_asset_borrowers",
        "sodax_get_user_position"
      ]
    },
    {
      "id": "bridge",
      "name": "Cross-chain bridge",
      "description": "Move assets across supported chains via SODAX bridging. In the UI, bridge flows are initiated from the same Exchange > Swap screen as cross-chain swaps — when the input and output chains differ, a solver fills it as a bridge transfer. No separate /exchange/bridge route exists; the SDK `bridge` module is the distinct surface.",
      "capability": "read+execute",
      "ui": "https://sodax.com/exchange/swap",
      "uiNote": "Shared with the swap skill. Select different input and output chains to trigger a bridge flow.",
      "sdk": {
        "package": "@sodax/sdk",
        "module": "bridge",
        "entrypoints": [
          "BridgeService"
        ]
      },
      "docs": "https://docs.sodax.com/developers/packages/foundation/sdk/functional-modules/bridge",
      "mcpTools": [
        "sodax_get_supported_chains",
        "sodax_get_swap_tokens"
      ]
    }
  ],
  "related": {
    "mcpServerCard": "https://sodax.com/.well-known/mcp/server-card.json",
    "apiCatalog": "https://sodax.com/.well-known/api-catalog",
    "llmsTxt": "https://sodax.com/llms.txt",
    "sdkSkillMd": "https://sodax.com/skill.md"
  }
}