Tools
CLI

A command-line interface for building and interacting with ZetaChain (opens in a new tab) universal applications. Seamlessly interact with EVM, Solana, Bitcoin, Sui, and TON, all from one CLI.

  • Scaffold new ZetaChain universal apps from templates
  • Spin up a local multi-chain development environment (EVM, Solana, etc.) in one command
  • Query cross-chain fees, contracts, balances, cross-chain transaction, tokens, and more
  • Make cross-chain calls between Solana, Sui, Bitcoin, TON, and universal apps on ZetaChain
  • Transfer supported tokens across connected chains
  • Node.js ≥ 18
  • Git (for template cloning)
  • (Optional) Docker ≥ 24 for localnet

Run without installing:

npx zetachain@next new

Or install globally:

npm install -g zetachain@latest

Use zetachain@next for bleeding-edge builds.

Create a new project:

zetachain new

Start localnet:

zetachain localnet start

Query cross-chain balances:

zetachain query balances

The ZetaChain CLI can be used as an MCP (Model Context Protocol) server, allowing AI assistants like Claude Code and Cursor to execute ZetaChain commands.

Local Installation (Recommended)

Install locally for full access to your filesystem, accounts, and localnet:

npm install -g zetachain
zetachain mcp install --client claude    # for Claude Code
# or
zetachain mcp install --client cursor    # for Cursor

Then restart your AI editor to activate the MCP server.

Check installation status:

zetachain mcp list

Remove:

zetachain mcp remove --client claude

Cloud Installation (Smithery)

For quick setup without local installation, visit Smithery (opens in a new tab) and click "One-Click Install".

⚠️ Note: The cloud version runs on remote servers and cannot access your local files, accounts, or localnet.

For full command documentation:

zetachain docs

Or use --help with any command:

zetachain accounts --help

We welcome contributions! Please open issues or submit pull requests.

Usage: zetachain new [options]

Create a new universal contract project.

Options:
  --verbose                Enable verbose logging
  --output <directory>     Specify custom output directory or name
  --project <projectName>  Specify the example project to use and skip the
                           prompt
  -h, --help               display help for command
Usage: zetachain accounts [options] [command]

Manages accounts for all connected chains in the ZetaChain CLI. Supports
creating new accounts, importing existing ones, listing all accounts, showing
details, and deleting accounts.

Accounts are stored locally in the CLI's key management system and can be used
across all supported networks.

Options:
  -h, --help        display help for command

Commands:
  create [options]  Create a new account
  delete [options]  Delete an existing account
  import [options]  Import an existing account
  list [options]    List all stored accounts
  show [options]    View details of a specific account
Usage: zetachain accounts create [options]

Generates a new account for the specified chain type.

You can name the account for easier identification; if no name is provided, it
defaults to default.

Options:
  --type <type>  Chain type (choices: "evm", "solana", "sui", "bitcoin", "ton")
  --name <name>  Account name (default: "default")
  -h, --help     display help for command
Usage: zetachain accounts delete [options]

Removes an account from the local key store. You must provide both the chain
type and account name.

Options:
  --type <type>  Chain type (choices: "evm", "solana", "sui", "bitcoin", "ton")
  --name <name>  Account name
  -h, --help     display help for command
Usage: zetachain accounts import [options]

Adds an account to the local key store using a private key or mnemonic phrase.

You can choose the chain type and give the account a name.

Options:
  --type <type>        Chain type (choices: "evm", "solana", "sui", "bitcoin",
                       "ton")
  --name <name>        Account name (default: "default")
  --private-key <key>  Private key in hex format
  --mnemonic <phrase>  Mnemonic phrase
  -h, --help           display help for command
Usage: zetachain accounts list [options]

Display all accounts currently stored locally in the CLI key store

Options:
  --json      Output in JSON format
  -h, --help  display help for command
Usage: zetachain accounts show [options]

Show the address, public key, and other details for a specific account. You must
provide the chain type and account name.

Options:
  --type <type>  Chain type (choices: "evm", "solana", "sui", "bitcoin", "ton")
  --name <name>  Account name
  -h, --help     display help for command
Usage: zetachain query|q [options] [command]

Provides a set of tools to fetch on-chain data from ZetaChain and its connected
chains.

You can retrieve balances, token information, supported chain details,
cross-chain transaction status, and fee estimates for cross-chain operations.

Options:
  -h, --help          display help for command

Commands:
  balances [options]  Fetch native and ZRC-20 token balances
  cctx [options]      Track the status of a cross-chain transaction.
  contracts           Contract registry commands
  fees                Fees commands
  tokens|t            Work with tokens on ZetaChain
  chains|c            View connected chain information
Usage: zetachain query balances [options]

Retrieve token balances across connected chains

Options:
  --evm <address>      Address on EVM chains
  --solana <address>   Address on Solana
  --bitcoin <address>  Address on Bitcoin
  --sui <address>      Address on Sui
  --ton <address>      Address on TON
  --name <name>        Account name
  --network <network>  Network to use (choices: "mainnet", "testnet", default:
                       "testnet")
  --json               Output balances as JSON
  --show-zero          Include zero balances in output (default: false)
  -h, --help           display help for command
Usage: zetachain query cctx [options]

Queries the real-time status of a cross-chain transaction by its inbound
transaction hash. You can control polling frequency, timeout, and target RPC
endpoint.

Options:
  --hash <hash>       Inbound transaction hash
  -r, --rpc <rpc>     RPC endpoint (default:
                      "https://zetachain-athens.blockpi.network/lcd/v1/public")
  -d, --delay <ms>    Delay between polling rounds in milliseconds (default:
                      "2000")
  -t, --timeout <ms>  Timeout duration in milliseconds (default: indefinite)
                      (default: "0")
  -h, --help          display help for command
Usage: zetachain query contracts [options] [command]

Contract registry commands

Options:
  -h, --help        display help for command

Commands:
  list|l [options]  List protocol contracts on all connected chains
  show|s [options]  Show a protocol contract address on a specific chain
Usage: zetachain query contracts list|l [options]

Options:
  --rpc <url>            Custom RPC URL (default:
                         "https://zetachain-athens-evm.blockpi.network/v1/rpc/public")
  --json                 Output contracts as JSON
  --columns <values...>  Additional columns to show (choices: "type", "address",
                         default: ["type","address"])
  -h, --help             display help for command
Usage: zetachain query contracts show|s [options]

Options:
  --rpc <url>               Custom RPC URL (default:
                            "https://zetachain-athens-evm.blockpi.network/v1/rpc/public")
  -c, --chain-id <chainId>  Chain ID
  -t, --type <type>         Contract type
  -h, --help                display help for command
Usage: zetachain query fees [options] [command]

Fees commands

Options:
  -h, --help      display help for command

Commands:
  list [options]  List withdraw gas fees
  show [options]  Show withdraw gas fee for a target ZRC-20, with optional
                  source conversion
Usage: zetachain query fees list [options]

List withdraw gas fees for all ZRC-20 tokens

Options:
  --api <url>          API endpoint URL (default:
                       "https://zetachain-athens.blockpi.network/lcd/v1/public")
  --rpc <url>          RPC endpoint URL (default:
                       "https://zetachain-athens-evm.blockpi.network/v1/rpc/public")
  --gas-limit <limit>  Gas limit for withdraw and call transactions
  --json               Output in JSON format
  -h, --help           display help for command
Usage: zetachain query fees show [options]

Show withdraw gas fee for a target ZRC-20, with optional source conversion

Options:
  --target <address>   Target ZRC-20 token address
  --gas-limit <limit>  Optional gas limit to compute withdraw fee with
  --target-chain <id>  Target chain ID to auto-resolve gas token ZRC-20
  --source <address>   Source ZRC-20 token address
  --source-chain <id>  Source chain ID to auto-resolve source ZRC-20
  --rpc <url>          RPC endpoint URL (default:
                       "https://zetachain-athens-evm.blockpi.network/v1/rpc/public")
  --router <address>   UniswapV2 router address (default:
                       "0x2ca7d64A7EFE2D62A725E2B35Cf7230D6677FfEe")
  --api <url>          API endpoint URL (default:
                       "https://zetachain-athens.blockpi.network/lcd/v1/public")
  --json               Output results in JSON format
  -h, --help           display help for command
Usage: zetachain query tokens|t [options] [command]

Provides commands to list all available ZRC-20 tokens or view detailed
information about a specific token. Useful for discovering token metadata,
contract addresses, and supported chains.

Options:
  -h, --help        display help for command

Commands:
  list|l [options]  List all ZRC-20 tokens
  show|s [options]  Show details for a ZRC-20 token
Usage: zetachain query tokens list|l [options]

Fetch and display all registered ZRC-20 tokens on ZetaChain

Options:
  --api <url>            API endpoint URL (default:
                         "https://zetachain-athens.blockpi.network/lcd/v1/public")
  --json                 Output in JSON format
  --columns <values...>  Additional columns to display (choices: "asset",
                         "type", "decimals", default: [])
  -h, --help             display help for command
Usage: zetachain query tokens show|s [options]

Display detailed information about a specific ZRC-20 token by symbol; supports
returning a single field for scripting

Options:
  --api <url>           API endpoint URL (default:
                        "https://zetachain-athens.blockpi.network/lcd/v1/public")
  --symbol -s <symbol>  Token symbol (e.g., POL.AMOY, USDC.BSC)
  --field -f <field>    Return only a specific field value. Use 'zrc20' as
                        shorthand for 'zrc20_contract_address'
  --json                Output in JSON format
  -h, --help            display help for command
Usage: zetachain query chains|c [options] [command]

Provides commands to list all chains connected to ZetaChain or view details
about a specific chain by name or chain ID.

Options:
  -h, --help        display help for command

Commands:
  list|l [options]  List all connected chains
  show|s [options]  Show details for a connected chain
Usage: zetachain query chains list|l [options]

Retrieve a list of all supported chains connected to ZetaChain

Options:
  --api <url>  API endpoint URL (default:
               "https://zetachain-athens.blockpi.network/lcd/v1/public")
  --json       Output in JSON format
  -h, --help   display help for command
Usage: zetachain query chains show|s [options]

Fetches detailed information about a connected chain by name or chain ID. You
can query both testnet and mainnet endpoints, and optionally return only a
specific field for scripting.

Options:
  --api-testnet <url>        Testnet API endpoint URL (default:
                             "https://zetachain-athens.blockpi.network/lcd/v1/public")
  --api-mainnet <url>        Mainnet API endpoint URL (default:
                             "https://zetachain.blockpi.network/lcd/v1/public")
  --chain-name  <chain>      Chain name
  -c, --chain-id <chain-id>  Chain ID
  --field -f <field>         Return only a specific field value
  --json                     Output in JSON format
  -h, --help                 display help for command
Usage: zetachain faucet [options]

Request testnet ZETA tokens from the faucet

Options:
  --address <address>  Recipient address.
  --name <name>        Account name to use if address not provided (default:
                       "default")
  -h, --help           display help for command
Usage: zetachain zetachain|z [options] [command]

Provides commands to call contracts, withdraw tokens, or withdraw tokens and
call contracts on any connected chain from ZetaChain. Supports both pure
contract calls and calls with asset transfers, with full control over gas
limits, revert handling, and execution parameters.

Options:
  -h, --help                   display help for command

Commands:
  call [options]               Call a contract on a connected chain from
                               ZetaChain
  withdraw [options]           Withdraw tokens from ZetaChain to a connected
                               chain
  withdraw-and-call [options]  Withdraw tokens and call a contract on a
                               connected chain
Usage: zetachain zetachain call [options]

Executes a contract call from ZetaChain to a connected chain without
transferring tokens. You can specify the destination contract, function
signature, parameters, and advanced options like revert handling and gas
settings.

Options:
  --zrc20 <address>                 ZRC-20 token address to pay cross-chain fees
  --receiver <address>              Receiver contract address on the connected
                                    chain (non-hex strings will be encoded)
  --name <name>                     Account name (default: "default")
  --chain-id <chainId>              Chain ID of the destination network
  --private-key <key>               Private key for signing transactions
  --rpc <url>                       ZetaChain RPC URL
  --gateway <address>               Gateway contract address on ZetaChain
  --revert-address <address>        Address to receive tokens if the transaction
                                    reverts (default:
                                    "0x0000000000000000000000000000000000000000")
  --abort-address <address>         Address to receive tokens if transaction is
                                    aborted (default:
                                    "0x0000000000000000000000000000000000000000")
  --call-on-revert                  Call onRevert handler if the transaction
                                    fails (default: false)
  --on-revert-gas-limit <limit>     Gas limit for the revert transaction
                                    (default: "1000000")
  --revert-message <message>        Message to include in the revert call
                                    (default: "0x")
  --tx-options-gas-limit <limit>    Gas limit for the transaction (default:
                                    "1000000")
  --tx-options-gas-price <price>    Gas price for the transaction (default:
                                    "10000000000")
  --call-options-gas-limit <limit>  Gas limit for the contract call on the
                                    connected chain (default: "1000000")
  --call-options-is-arbitrary-call  Call any function (--function is required)
                                    (default: false)
  --yes                             Skip confirmation prompt (default: false)
  --function <function>             Function signature to call (example:
                                    "hello(string)")
  --types <types...>                List of parameter types (e.g. uint256
                                    address)
  --values <values...>              Parameter values for the function call
  --data <data>                     Raw data
  -h, --help                        display help for command
Usage: zetachain zetachain withdraw [options]

Send tokens from ZetaChain to a connected chain without making a contract call.
Specify the receiver address, token amount, and advanced execution options.

Options:
  --zrc20 <address>                 ZRC-20 token address to pay cross-chain fees
  --receiver <address>              Receiver contract address on the connected
                                    chain (non-hex strings will be encoded)
  --name <name>                     Account name (default: "default")
  --chain-id <chainId>              Chain ID of the destination network
  --private-key <key>               Private key for signing transactions
  --rpc <url>                       ZetaChain RPC URL
  --gateway <address>               Gateway contract address on ZetaChain
  --revert-address <address>        Address to receive tokens if the transaction
                                    reverts (default:
                                    "0x0000000000000000000000000000000000000000")
  --abort-address <address>         Address to receive tokens if transaction is
                                    aborted (default:
                                    "0x0000000000000000000000000000000000000000")
  --call-on-revert                  Call onRevert handler if the transaction
                                    fails (default: false)
  --on-revert-gas-limit <limit>     Gas limit for the revert transaction
                                    (default: "1000000")
  --revert-message <message>        Message to include in the revert call
                                    (default: "0x")
  --tx-options-gas-limit <limit>    Gas limit for the transaction (default:
                                    "1000000")
  --tx-options-gas-price <price>    Gas price for the transaction (default:
                                    "10000000000")
  --call-options-gas-limit <limit>  Gas limit for the contract call on the
                                    connected chain (default: "1000000")
  --call-options-is-arbitrary-call  Call any function (--function is required)
                                    (default: false)
  --yes                             Skip confirmation prompt (default: false)
  --amount <amount>                 The amount of tokens to withdraw
  -h, --help                        display help for command
Usage: zetachain zetachain withdraw-and-call [options]

Combines token withdrawal from ZetaChain with a contract call on the connected
chain in a single transaction. Supports full control over function parameters,
gas settings, and revert handling.

Options:
  --zrc20 <address>                 ZRC-20 token address to pay cross-chain fees
  --receiver <address>              Receiver contract address on the connected
                                    chain (non-hex strings will be encoded)
  --name <name>                     Account name (default: "default")
  --chain-id <chainId>              Chain ID of the destination network
  --private-key <key>               Private key for signing transactions
  --rpc <url>                       ZetaChain RPC URL
  --gateway <address>               Gateway contract address on ZetaChain
  --revert-address <address>        Address to receive tokens if the transaction
                                    reverts (default:
                                    "0x0000000000000000000000000000000000000000")
  --abort-address <address>         Address to receive tokens if transaction is
                                    aborted (default:
                                    "0x0000000000000000000000000000000000000000")
  --call-on-revert                  Call onRevert handler if the transaction
                                    fails (default: false)
  --on-revert-gas-limit <limit>     Gas limit for the revert transaction
                                    (default: "1000000")
  --revert-message <message>        Message to include in the revert call
                                    (default: "0x")
  --tx-options-gas-limit <limit>    Gas limit for the transaction (default:
                                    "1000000")
  --tx-options-gas-price <price>    Gas price for the transaction (default:
                                    "10000000000")
  --call-options-gas-limit <limit>  Gas limit for the contract call on the
                                    connected chain (default: "1000000")
  --call-options-is-arbitrary-call  Call any function (--function is required)
                                    (default: false)
  --yes                             Skip confirmation prompt (default: false)
  --amount <amount>                 The amount of tokens to withdraw
  --function <function>             Function signature to call (example:
                                    "hello(string)")
  --types <types...>                List of parameter types (e.g. uint256
                                    address)
  --values <values...>              Parameter values for the function call
  --data <data>                     Raw data for non-EVM chains like Solana
  -h, --help                        display help for command
Usage: zetachain evm [options] [command]

Interact from EVM chains: call contracts on ZetaChain or deposit tokens (with or
without a call).

Options:
  -h, --help                  display help for command

Commands:
  call [options]              Call a contract on ZetaChain from an
                              EVM-compatible chain
  deposit-and-call [options]  Deposit tokens and call a contract on ZetaChain
                              from an EVM-compatible chain
  deposit [options]           Deposit tokens to ZetaChain from an EVM-compatible
                              chain
Usage: zetachain evm call [options]

Call a contract on ZetaChain from an EVM-compatible chain

Options:
  --chain-id <chainId>           Chain ID of the network
  --receiver <address>           Receiver address on ZetaChain
  --name <name>                  Account name (default: "default")
  --private-key <key>            Private key for signing transactions
  --rpc <url>                    RPC URL for the source chain
  --gateway <address>            EVM Gateway address
  --revert-address <address>     Address to revert to in case of failure
                                 (default: signer address)
  --abort-address <address>      Address to receive funds if aborted (default:
                                 "0x0000000000000000000000000000000000000000")
  --call-on-revert               Whether to call revert address on failure
                                 (default: false)
  --on-revert-gas-limit <limit>  Gas limit for revert operation (default:
                                 "200000")
  --revert-message <message>     Message to include in revert (default: "")
  --gas-limit <limit>            Gas limit for the transaction
  --gas-price <price>            Gas price for the transaction
  --yes                          Skip confirmation prompt (default: false)
  --types <types...>             List of parameter types (e.g. uint256 address)
  --values <values...>           Parameter values for the function call
  -h, --help                     display help for command
Usage: zetachain evm deposit-and-call [options]

Deposit tokens and call a contract on ZetaChain from an EVM-compatible chain

Options:
  --chain-id <chainId>           Chain ID of the network
  --receiver <address>           Receiver address on ZetaChain
  --name <name>                  Account name (default: "default")
  --private-key <key>            Private key for signing transactions
  --rpc <url>                    RPC URL for the source chain
  --gateway <address>            EVM Gateway address
  --revert-address <address>     Address to revert to in case of failure
                                 (default: signer address)
  --abort-address <address>      Address to receive funds if aborted (default:
                                 "0x0000000000000000000000000000000000000000")
  --call-on-revert               Whether to call revert address on failure
                                 (default: false)
  --on-revert-gas-limit <limit>  Gas limit for revert operation (default:
                                 "200000")
  --revert-message <message>     Message to include in revert (default: "")
  --gas-limit <limit>            Gas limit for the transaction
  --gas-price <price>            Gas price for the transaction
  --yes                          Skip confirmation prompt (default: false)
  --amount <amount>              Amount of tokens to deposit
  --erc20 <address>              ERC20 token address (optional for native token
                                 deposits)
  --types <types...>             List of parameter types (e.g. uint256 address)
  --values <values...>           Parameter values for the function call
  -h, --help                     display help for command
Usage: zetachain evm deposit [options]

Deposit tokens to ZetaChain from an EVM-compatible chain

Options:
  --chain-id <chainId>           Chain ID of the network
  --receiver <address>           Receiver address on ZetaChain
  --name <name>                  Account name (default: "default")
  --private-key <key>            Private key for signing transactions
  --rpc <url>                    RPC URL for the source chain
  --gateway <address>            EVM Gateway address
  --revert-address <address>     Address to revert to in case of failure
                                 (default: signer address)
  --abort-address <address>      Address to receive funds if aborted (default:
                                 "0x0000000000000000000000000000000000000000")
  --call-on-revert               Whether to call revert address on failure
                                 (default: false)
  --on-revert-gas-limit <limit>  Gas limit for revert operation (default:
                                 "200000")
  --revert-message <message>     Message to include in revert (default: "")
  --gas-limit <limit>            Gas limit for the transaction
  --gas-price <price>            Gas price for the transaction
  --yes                          Skip confirmation prompt (default: false)
  --amount <amount>              Amount of tokens to deposit
  --erc20 <address>              ERC20 token address (optional for native token
                                 deposits)
  -h, --help                     display help for command
Usage: zetachain solana [options] [command]

Interact from Solana: call contracts on ZetaChain or deposit tokens (with or
without a call).

Options:
  -h, --help                  display help for command

Commands:
  call [options]              Call a contract on ZetaChain from Solana
  deposit-and-call [options]  Deposit tokens from Solana and call a contract on
                              ZetaChain
  deposit [options]           Deposit tokens from Solana
  encode [options]            Encode payload data for Solana
Usage: zetachain solana call [options]

Call a universal contract on ZetaChain from Solana

Options:
  --receiver <receiver>                     EOA or contract address on ZetaChain
  --mnemonic <mnemonic>                     Mnemonic
  --name <name>                             Name of the wallet (default: "default")
  --private-key <privateKey>                Private key in base58 or hex format (with optional 0x prefix)
  --chain-id <chainId>                      Chain ID of the network
  --revert-address <revertAddress>          Revert address
  --abort-address <abortAddress>            Abort address (default: "0x0000000000000000000000000000000000000000")
  --call-on-revert                          Call on revert (default: false)
  --revert-message <revertMessage>          Revert message (default: "")
  --on-revert-gas-limit <onRevertGasLimit>  On revert gas limit (default: "0")
  --types <types...>                        List of parameter types (e.g. uint256 address)
  --values <values...>                      Parameter values for the function call
  -h, --help                                display help for command
Usage: zetachain solana deposit-and-call [options]

Deposit tokens from Solana and call a universal contract on ZetaChain

Options:
  --receiver <receiver>                     EOA or contract address on ZetaChain
  --mnemonic <mnemonic>                     Mnemonic
  --name <name>                             Name of the wallet (default: "default")
  --private-key <privateKey>                Private key in base58 or hex format (with optional 0x prefix)
  --chain-id <chainId>                      Chain ID of the network
  --revert-address <revertAddress>          Revert address
  --abort-address <abortAddress>            Abort address (default: "0x0000000000000000000000000000000000000000")
  --call-on-revert                          Call on revert (default: false)
  --revert-message <revertMessage>          Revert message (default: "")
  --on-revert-gas-limit <onRevertGasLimit>  On revert gas limit (default: "0")
  --amount <amount>                         Amount of tokens to deposit
  --token-program <tokenProgram>            Token program (default: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA")
  --types <types...>                        List of parameter types (e.g. uint256 address)
  --values <values...>                      Parameter values for the function call
  --mint <mint>                             SPL token mint address
  -h, --help                                display help for command
Usage: zetachain solana deposit [options]

Options:
  --receiver <receiver>                     EOA or contract address on ZetaChain
  --mnemonic <mnemonic>                     Mnemonic
  --name <name>                             Name of the wallet (default: "default")
  --private-key <privateKey>                Private key in base58 or hex format (with optional 0x prefix)
  --chain-id <chainId>                      Chain ID of the network
  --revert-address <revertAddress>          Revert address
  --abort-address <abortAddress>            Abort address (default: "0x0000000000000000000000000000000000000000")
  --call-on-revert                          Call on revert (default: false)
  --revert-message <revertMessage>          Revert message (default: "")
  --on-revert-gas-limit <onRevertGasLimit>  On revert gas limit (default: "0")
  --amount <amount>                         Amount of tokens to deposit
  --token-program <tokenProgram>            Token program (default: "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA")
  --mint <mint>                             SPL token mint address
  -h, --help                                display help for command
Usage: zetachain solana encode [options]

Options:
  --connected <address>     Connected program address
  --data <data>             Data to encode
  --gateway <address>       Gateway program address
  --mint <address>          Mint address for SPL token operations
  --accounts <accounts...>  Additional accounts in format 'address:isWritable'
  -h, --help                display help for command
Usage: zetachain sui [options] [command]

Interact from Sui: deposit tokens to ZetaChain or deposit and call contracts

Options:
  -h, --help                  display help for command

Commands:
  deposit-and-call [options]  Deposit tokens from Sui and call a contract on
                              ZetaChain
  deposit [options]           Deposit tokens from Sui
  encode [options]            Encode payload data for SUI
Usage: zetachain sui deposit-and-call [options]

Options:
  --mnemonic <mnemonic>               Mnemonic for the account
  --private-key <privateKey>          Private key for the account
  --gateway-object <gatewayObject>    Gateway object ID
  --gateway-package <gatewayPackage>  Gateway package ID
  --receiver <receiver>               Receiver address on ZetaChain
  --amount <amount>                   Amount to deposit in decimal format
  --chain-id <chainId>                Chain ID
  --coin-type <coinType>              Coin type to deposit (default:
                                      "0x2::sui::SUI")
  --gas-budget <gasBudget>            Gas budget in MIST (default: "10000000")
  --name <name>                       Account name (default: "default")
  --decimals <number>                 Number of decimals for the coin type
                                      (default: "9")
  --values <values...>                Parameter values for the function call
  --types <types...>                  List of parameter types (e.g. uint256
                                      address)
  -h, --help                          display help for command
Usage: zetachain sui deposit [options]

Options:
  --mnemonic <mnemonic>               Mnemonic for the account
  --private-key <privateKey>          Private key for the account
  --gateway-object <gatewayObject>    Gateway object ID
  --gateway-package <gatewayPackage>  Gateway package ID
  --receiver <receiver>               Receiver address on ZetaChain
  --amount <amount>                   Amount to deposit in decimal format
  --chain-id <chainId>                Chain ID
  --coin-type <coinType>              Coin type to deposit (default:
                                      "0x2::sui::SUI")
  --gas-budget <gasBudget>            Gas budget in MIST (default: "10000000")
  --name <name>                       Account name (default: "default")
  --decimals <number>                 Number of decimals for the coin type
                                      (default: "9")
  -h, --help                          display help for command
Usage: zetachain sui encode [options]

Options:
  --data <data>                        Data to encode
  --type-arguments <typeArguments...>  Type arguments for the encoding
  --objects <objects...>               Objects to include in the encoding
                                       (comma-separated)
  -h, --help                           display help for command
Usage: zetachain ton [options] [command]

Interact from TON: deposit TON to ZetaChain or deposit and call contracts

Options:
  -h, --help                  display help for command

Commands:
  deposit-and-call [options]  Deposit TON and call a contract on ZetaChain
  deposit [options]           Deposit tokens from TON
Usage: zetachain ton deposit-and-call [options]

Deposit TON and call a universal contract on ZetaChain

Options:
  --mnemonic <mnemonic>  Mnemonic for the account
  --name <name>          Name of the account (default: "default")
  --gateway <gateway>    Gateway contract address (default: testnet)
  --receiver <receiver>  Receiver address
  --rpc <rpc>            RPC endpoint (default: testnet) (default:
                         "https://testnet.toncenter.com/api/v2/jsonRPC")
  --api-key <apiKey>     API key
  --chain-id <chainId>   Chain ID
  --amount <amount>      Amount in TON
  --types <types...>     ABI types
  --values <values...>   Values corresponding to types
  --data <data>          Data to call the contract with
  -h, --help             display help for command
Usage: zetachain ton deposit [options]

Deposit tokens to an EOA or a contract on ZetaChain

Options:
  --mnemonic <mnemonic>  Mnemonic for the account
  --name <name>          Name of the account (default: "default")
  --gateway <gateway>    Gateway contract address (default: testnet)
  --receiver <receiver>  Receiver address
  --rpc <rpc>            RPC endpoint (default: testnet) (default:
                         "https://testnet.toncenter.com/api/v2/jsonRPC")
  --api-key <apiKey>     API key
  --chain-id <chainId>   Chain ID
  --amount <amount>      Amount in TON
  -h, --help             display help for command
Usage: zetachain bitcoin|b [options] [command]

Work with Bitcoin to deposit BTC to ZetaChain or call contracts using
inscriptions or OP_RETURN memo.

Options:
  -h, --help     display help for command

Commands:
  inscription|i  Make a transaction using inscriptions
  memo|m         Make a transaction using a memo (OP_RETURN)
Usage: zetachain bitcoin inscription|i [options] [command]

Use Bitcoin inscriptions to deposit BTC to ZetaChain or call contracts

Options:
  -h, --help                  display help for command

Commands:
  call [options]              Call a contract on ZetaChain
  deposit-and-call [options]  Deposit BTC and call a contract on ZetaChain
  deposit [options]           Deposit BTC to ZetaChain
  encode [options]            Encode data for Bitcoin transactions using ABI
                              encoding
Usage: zetachain bitcoin inscription call [options]

Options:
  --yes                       Skip confirmation prompt (default: false)
  -r, --receiver <address>    ZetaChain receiver address
  --commit-fee <fee>          Commit fee (in sats) (default: "15000")
  -g, --gateway <address>     Bitcoin gateway (TSS) address (default:
                              "tb1qy9pqmk2pd9sv63g27jt8r657wy0d9ueeh0nqur")
  --private-key <key>         Bitcoin private key
  --name <name>               Account name (default: "default")
  --revert-address <address>  Revert address
  --abort-address <address>   Abort address
  --revert-message <message>  Revert message
  --network <network>         Network (choices: "signet", "mainnet", default:
                              "signet")
  --format <format>           Encoding format (choices: "ABI", "CompactLong",
                              "CompactShort", default: "ABI")
  --data <data>               Pass raw data
  --bitcoin-api <url>         Bitcoin API (default:
                              "https://mempool.space/signet/api")
  --gas-price-api <url>       ZetaChain API (default:
                              "https://zetachain-athens.blockpi.network/lcd/v1/public/zeta-chain/crosschain/gasPrice/18333")
  -t, --types <types...>      ABI types
  -v, --values <values...>    Values corresponding to types
  -h, --help                  display help for command
Usage: zetachain bitcoin inscription deposit-and-call [options]

Options:
  --yes                       Skip confirmation prompt (default: false)
  -r, --receiver <address>    ZetaChain receiver address
  --commit-fee <fee>          Commit fee (in sats) (default: "15000")
  -g, --gateway <address>     Bitcoin gateway (TSS) address (default:
                              "tb1qy9pqmk2pd9sv63g27jt8r657wy0d9ueeh0nqur")
  --private-key <key>         Bitcoin private key
  --name <name>               Account name (default: "default")
  --revert-address <address>  Revert address
  --abort-address <address>   Abort address
  --revert-message <message>  Revert message
  --network <network>         Network (choices: "signet", "mainnet", default:
                              "signet")
  --format <format>           Encoding format (choices: "ABI", "CompactLong",
                              "CompactShort", default: "ABI")
  --data <data>               Pass raw data
  --bitcoin-api <url>         Bitcoin API (default:
                              "https://mempool.space/signet/api")
  --gas-price-api <url>       ZetaChain API (default:
                              "https://zetachain-athens.blockpi.network/lcd/v1/public/zeta-chain/crosschain/gasPrice/18333")
  -t, --types <types...>      ABI types
  -v, --values <values...>    Values corresponding to types
  -a, --amount <btcAmount>    BTC amount to send (in BTC)
  -h, --help                  display help for command
Usage: zetachain bitcoin inscription deposit [options]

Options:
  --yes                       Skip confirmation prompt (default: false)
  -r, --receiver <address>    ZetaChain receiver address
  --commit-fee <fee>          Commit fee (in sats) (default: "15000")
  -g, --gateway <address>     Bitcoin gateway (TSS) address (default:
                              "tb1qy9pqmk2pd9sv63g27jt8r657wy0d9ueeh0nqur")
  --private-key <key>         Bitcoin private key
  --name <name>               Account name (default: "default")
  --revert-address <address>  Revert address
  --abort-address <address>   Abort address
  --revert-message <message>  Revert message
  --network <network>         Network (choices: "signet", "mainnet", default:
                              "signet")
  --format <format>           Encoding format (choices: "ABI", "CompactLong",
                              "CompactShort", default: "ABI")
  --data <data>               Pass raw data
  --bitcoin-api <url>         Bitcoin API (default:
                              "https://mempool.space/signet/api")
  --gas-price-api <url>       ZetaChain API (default:
                              "https://zetachain-athens.blockpi.network/lcd/v1/public/zeta-chain/crosschain/gasPrice/18333")
  -a, --amount <btcAmount>    BTC amount to send (in BTC)
  -h, --help                  display help for command
Usage: zetachain bitcoin inscription encode [options]

Options:
  -r, --receiver <address>        Receiver address
  -t, --types <types...>          ABI types (e.g. string uint256) (default: [])
  -v, --values <values...>        Values corresponding to types (default: [])
  -a, --revert-address <address>  Bitcoin revert address
  -o, --op-code <code>            Operation code (choices: "Call", "Deposit",
                                  "DepositAndCall", "Invalid", default:
                                  "DepositAndCall")
  -f, --format <format>           Encoding format (choices: "ABI",
                                  "CompactLong", "CompactShort", default: "ABI")
  -h, --help                      display help for command
Usage: zetachain bitcoin memo|m [options] [command]

Use OP_RETURN memo to deposit BTC to ZetaChain or call contracts

Options:
  -h, --help                  display help for command

Commands:
  call [options]              Call a contract on ZetaChain
  deposit-and-call [options]  Deposit BTC and call a contract on ZetaChain
  deposit [options]           Deposit BTC to ZetaChain
Usage: zetachain bitcoin memo call [options]

Options:
  --yes                     Skip confirmation prompt (default: false)
  -r, --receiver <address>  ZetaChain receiver address
  --commit-fee <fee>        Commit fee (in sats) (default: "15000")
  -g, --gateway <address>   Bitcoin gateway (TSS) address (default:
                            "tb1qy9pqmk2pd9sv63g27jt8r657wy0d9ueeh0nqur")
  --private-key <key>       Bitcoin private key
  --name <name>             Account name (default: "default")
  -d, --data <data>         Pass raw data
  --network-fee <fee>       Network fee (in sats) (default: "1750")
  --network <network>       Network (choices: "signet", "mainnet", default:
                            "signet")
  --bitcoin-api <url>       Bitcoin API (default:
                            "https://mempool.space/signet/api")
  --gas-price-api <url>     ZetaChain API (default:
                            "https://zetachain-athens.blockpi.network/lcd/v1/public/zeta-chain/crosschain/gasPrice/18333")
  -h, --help                display help for command
Usage: zetachain bitcoin memo deposit-and-call [options]

Options:
  --yes                     Skip confirmation prompt (default: false)
  -r, --receiver <address>  ZetaChain receiver address
  --commit-fee <fee>        Commit fee (in sats) (default: "15000")
  -g, --gateway <address>   Bitcoin gateway (TSS) address (default:
                            "tb1qy9pqmk2pd9sv63g27jt8r657wy0d9ueeh0nqur")
  --private-key <key>       Bitcoin private key
  --name <name>             Account name (default: "default")
  -d, --data <data>         Pass raw data
  --network-fee <fee>       Network fee (in sats) (default: "1750")
  --network <network>       Network (choices: "signet", "mainnet", default:
                            "signet")
  --bitcoin-api <url>       Bitcoin API (default:
                            "https://mempool.space/signet/api")
  --gas-price-api <url>     ZetaChain API (default:
                            "https://zetachain-athens.blockpi.network/lcd/v1/public/zeta-chain/crosschain/gasPrice/18333")
  -a, --amount <btcAmount>  BTC amount to send (in BTC)
  -h, --help                display help for command
Usage: zetachain bitcoin memo deposit [options]

Options:
  --yes                     Skip confirmation prompt (default: false)
  -r, --receiver <address>  ZetaChain receiver address
  --commit-fee <fee>        Commit fee (in sats) (default: "15000")
  -g, --gateway <address>   Bitcoin gateway (TSS) address (default:
                            "tb1qy9pqmk2pd9sv63g27jt8r657wy0d9ueeh0nqur")
  --private-key <key>       Bitcoin private key
  --name <name>             Account name (default: "default")
  -d, --data <data>         Pass raw data
  --network-fee <fee>       Network fee (in sats) (default: "1750")
  --network <network>       Network (choices: "signet", "mainnet", default:
                            "signet")
  --bitcoin-api <url>       Bitcoin API (default:
                            "https://mempool.space/signet/api")
  --gas-price-api <url>     ZetaChain API (default:
                            "https://zetachain-athens.blockpi.network/lcd/v1/public/zeta-chain/crosschain/gasPrice/18333")
  -a, --amount <btcAmount>  BTC amount to send (in BTC)
  -h, --help                display help for command
Usage: zetachain localnet [options] [command]

Local development environment

Options:
  -h, --help       display help for command

Commands:
  start [options]  Start localnet
  stop             Stop localnet
  check [options]  Check if localnet is running
  ton              TON commands
Usage: zetachain localnet start [options]

Start localnet

Options:
  -p, --port <number>      Port to run anvil on (default: "8545")
  -a, --anvil <string>     Additional arguments to pass to anvil (default: "-q")
  -f, --force-kill         Force kill any process on the port without prompting
                           (default: false)
  -s, --stop-after-init    Stop the localnet after successful initialization
                           (default: false)
  -e, --exit-on-error      Exit with an error if a call is reverted (default:
                           false)
  -v, --verbosity <level>  Logger verbosity level (choices: "emerg", "alert",
                           "crit", "error", "warning", "notice", "info",
                           "debug", default: "info")
  --chains [chains...]     Chains to launch when starting localnet (choices:
                           "ton", "solana", "sui", default: [])
  -h, --help               display help for command
Usage: zetachain localnet stop [options]

Stop localnet

Options:
  -h, --help  display help for command
Usage: zetachain localnet check [options]

Check if localnet is running

Options:
  -d, --delay <number>  Seconds to wait before checking localnet (default: "3")
  -h, --help            display help for command
Usage: zetachain localnet ton [options] [command]

TON commands

Options:
  -h, --help          display help for command

Commands:
  balance [options]   Show balance by address
  faucet [options]    Request TON from faucet
  wallet [options]    Create & fund a wallet
  withdraw [options]  Withdraw TON from gateway
  help [command]      display help for command
Usage: zetachain localnet ton balance [options]

Show balance by address

Options:
  -a, --address <address>  Address
  -h, --help               display help for command
Usage: zetachain localnet ton faucet [options]

Request TON from faucet

Options:
  -a, --address <address>  Address
  -m, --amount <amount>    Amount in TON (default: "100")
  -h, --help               display help for command
Usage: zetachain localnet ton wallet [options]

Create & fund a wallet

Options:
  -m, --amount <amount>  Amount to topup in TON (default: "100")
  -h, --help             display help for command
Usage: zetachain localnet ton withdraw [options]

Withdraw TON from gateway

Options:
  -a, --address <address>  Recipient
  -m, --amount <amount>    Amount in TON (default: "1")
  -k, --private-key <key>  Sender's private key on Zeta
  -g, --gateway <gateway>  Gateway address on ZEVM
  -t, --token <token>      TON.TON token address on ZEVM
  -p, --port <port>        Anvil port (default: "8545")
  -h, --help               display help for command
Usage: zetachain mcp [options] [command]

MCP server management commands

Options:
  -h, --help         display help for command

Commands:
  install [options]  Install ZetaChain MCP server for your AI editor
  remove [options]   Remove ZetaChain MCP server from your AI editor (removes
                     from all projects if applicable)
  list               List MCP server installation status for all supported
                     clients
Usage: zetachain mcp install [options]

Install ZetaChain MCP server for your AI editor

Options:
  -c, --client <name>  AI client to install for (choices: "claude", "cursor")
  -h, --help           display help for command
Usage: zetachain mcp remove [options]

Remove ZetaChain MCP server from your AI editor (removes from all projects if
applicable)

Options:
  -c, --client <name>  AI client to remove from (choices: "claude", "cursor")
  -h, --help           display help for command
Usage: zetachain mcp list [options]

List MCP server installation status for all supported clients

Options:
  -h, --help  display help for command
Usage: zetachain docs [options]

Display help information for all available commands and their subcommands

Options:
  --json      Output documentation as JSON (tools schema)
  -h, --help  display help for command
Usage: zetachain ask [options] [prompt...]

Chat with ZetaChain Docs AI

Arguments:
  prompt      Prompt to send to AI

Options:
  -h, --help  display help for command