moonpay-swap-tokens について
moonpay-swap-tokensは、MoonPay CLIを使って同一チェーン上でトークンを交換したり、チェーン間でブリッジしたりするスキルです。出力量指定に対応し、トランザクションをローカルで署名してから送信します。
主な機能
- 01同一チェーンでのトークン交換
- 02チェーン間のトークンブリッジ
- 03出力量の指定
- 04ローカルでのトランザクション署名
- 05ERC20の承認処理
活用シーン
- 01SolanaでSOLをUSDCに交換
- 02ETHをPolygon上のトークンへブリッジ
- 03承認が必要なERC20トークンの交換
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ moonpay/ skills --skill moonpay-swap-tokensインストール後、Claude Code で/moonpay-swap-tokensを入力して読み込まれたか確認します。
詳細
トークンをスワップまたはブリッジする
目標
同じチェーン上でトークンをスワップするか、チェーン間でトークンをブリッジします。コマンドは2つあります。
mp token swap— 同じチェーン上で異なるトークンをスワップmp token bridge— チェーン間でブリッジ
どちらのコマンドも swaps.xyz 経由でトランザクションを構築し、ローカルで署名してブロードキャストし、追跡に登録します。
コマンド
スワップ(同じチェーン)
mp token swap \
--wallet <wallet-name> \
--chain <chain> \
--from-token <token-address> \
--from-amount <amount> \
--to-token <token-address>
正確な受取額を指定する場合は、--from-amount の代わりに --to-amount を使用します。
ブリッジ(チェーン間)
mp token bridge \
--from-wallet <wallet-name> \
--from-chain <chain> \
--from-token <token-address> \
--from-amount <amount> \
--to-chain <chain> \
--to-token <token-address> \
--to-wallet <wallet-name> # optional, defaults to from-wallet
正確な受取額を指定する場合は、--from-amount の代わりに --to-amount を使用します。
例
同じチェーン上でのスワップ(Solana 上で SOL → USDC)
mp token swap \
--wallet main --chain solana \
--from-token So11111111111111111111111111111111111111111 \
--from-amount 0.1 \
--to-token EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v
チェーン間のブリッジ(ETH → Polygon 上の USDC.e)
mp token bridge \
--from-wallet funded --from-chain ethereum \
--from-token 0x0000000000000000000000000000000000000000 \
--from-amount 0.003 \
--to-chain polygon \
--to-token 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174
ERC20 のスワップ(必要に応じて自動承認)
mp token swap \
--wallet funded --chain polygon \
--from-token 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 \
--from-amount 5 \
--to-token 0x0000000000000000000000000000000000000000
対応チェーン
solana、ethereum、base、polygon、arbitrum、optimism、bnb、avalanche、bitcoin(ブリッジのみ)
仕組み
- ウォレット名をアドレスに解決します
- swaps.xyz 経由で未署名のトランザクションを構築します(小数桁の変換を処理します)
- ERC20 トークンに承認が必要な場合は、先に承認トランザクションを送信してから再構築します
- ローカルで署名します。秘密鍵がマシンの外に出ることはありません
- ネットワークにブロードキャストします
- 追跡に登録します
token swap は、内部で from-chain と to-chain を同じ値にして token bridge を呼び出します。
ヒント
- ユーザーがトークン名やシンボルを指定した場合は、
mp token search --query "USDC" --chain solanaでアドレスを解決します - 先に
mp token balance list --wallet <address> --chain <chain>で残高を確認します - ネイティブトークンには
0x0000000000000000000000000000000000000000(EVM)またはSo11111111111111111111111111111111111111111(Solana)を使用します
関連スキル
- moonpay-discover-tokens — トークンアドレスを検索します
- moonpay-check-wallet — スワップ前に残高を確認します
- moonpay-auth — 署名用のウォレットを設定します
コメント
Markdown 対応