ton-swap について
ton-swapは、DEXアグリゲーターを介してTON上のトークンを交換するスキルです。見積もり、取引のシミュレーション、確認、ステータス確認の手順を案内します。
主な機能
- 01トークンアドレスで見積もりを取得
- 02人が読める形式で金額を指定
- 03送信前にシミュレーションし資金の流れを確認
- 04確認後に実行しステータスを確認
活用シーン
- 01ネイティブTONとJettonを交換
- 02既知のJettonのアドレスを特定
- 03交換を送信する前にシミュレーションを確認
MCP 対応
TON MCPツールで見積もりの取得、取引のシミュレーションと送信、ステータス確認を行います。get_known_jettonsでトークンアドレスを特定できます。
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ton-org/ skills --skill ton-swapインストール後、Claude Code で/ton-swapを入力して読み込まれたか確認します。
詳細
TON トークンをスワップする
DEX アグリゲーターを使って TON 上でトークンをスワップします。2 段階のフローです。見積もりを取得し、ユーザーに確認してから実行します。
MCP ツール
| ツール | 必須 | 任意 |
|---|---|---|
get_swap_quote | fromToken、toToken、amount | walletSelector |
emulate_transaction | messages | validUntil |
send_raw_transaction | messages | walletSelector |
get_known_jettons | — | — |
ワークフロー
- ユーザーがトークン名(例:「USDT」、「jUSDC」)を挙げた場合は、
get_known_jettonsを呼び出してジェットトンのアドレスを解決します fromToken、toToken、amountを指定してget_swap_quoteを呼び出します- ネイティブ TON には
"TON"を、トークンにはジェットトンのマスターコントラクトアドレスを使用します - 金額は人が読み取れる形式です(例:
"1.5"は 1.5 TON)
- ネイティブ TON には
- 見積もりの
transaction.messagesを指定してemulate_transactionを呼び出し、スワップをドライランします。送信前に予想される資金の流れ(TON/ジェットトンの残高変化)を確認します - 見積もりの詳細とエミュレーション結果をユーザーに提示し、簡潔な「はい/いいえ」での確認を求めます
- 見積もりから返されたトランザクションパラメーターを指定して
send_raw_transactionを呼び出します get_transaction_statusを、返されたnormalizedHashを使って呼び出し、ステータスがcompletedまたはfailedになるまでポーリングします(ton-balanceスキルを参照)。ユーザーはポーリングを省略するよう求めることができます
注意事項
- 実行前に必ずユーザーにスワップを確認してください。利用できる場合はホストクライアントの構造化された確認 UI を優先し、それ以外の場合は自然言語での「はい/いいえ」を受け付け、決まった確認フレーズは必須にしないでください
- 見積もりは
send_raw_transactionですぐに使えるトランザクションメッセージを返します - 実行後は、デフォルトで
get_transaction_statusをポーリングします。ステータスを確認するかどうかはユーザーが指定できます - ウォレットが設定されていない場合は、先に
ton-create-walletスキルを使用してください
コメント
Markdown 対応