ton-swap
Swap or trade tokens on the TON blockchain via DEX. Use when the user wants to swap, trade, exchange, convert, buy, or sell tokens like GRAM (ex. TON), USDT, jUSDC, or any jetton. Covers phrases like "swap GRAM (ex. TON) for USDT", "trade tokens", "buy USDT", "exchange jettons".
How do I install this agent skill?
npx skills add https://github.com/ton-connect/kit --skill ton-swapIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill is safe. It enables token swaps on the TON blockchain using a multi-step workflow that includes transaction emulation and mandatory user confirmation, aligning with security best practices for blockchain interactions.
- Socketwarn
1 alert: gptSecurity
- Snykwarn
Risk: MEDIUM · 1 issue
- Runlayerpass
1 file scanned · No issues
What does this agent skill do?
Swap TON Tokens
Swap tokens on TON via DEX aggregator. Two-step flow: get a quote, confirm with the user, then execute.
MCP Tools
| Tool | Required | Optional |
|---|---|---|
get_swap_quote | fromToken, toToken, amount | walletSelector |
emulate_transaction | messages | validUntil |
send_raw_transaction | messages | walletSelector |
get_known_jettons | — | — |
Workflow
- If the user mentions a token by name (e.g., "USDT", "jUSDC"), call
get_known_jettonsto resolve the jetton address - Call
get_swap_quotewithfromToken,toToken, andamount- Use
"TON"for native GRAM (ex. TON), or the jetton master contract address for tokens - Amount is human-readable (e.g.,
"1.5"= 1.5 GRAM (ex. TON))
- Use
- Call
emulate_transactionwith the quote'stransaction.messagesto dry-run the swap — verify the expected money flow (GRAM (ex. TON)/jetton balance changes) before sending - Show the quote details and emulation results to the user and ask one short yes/no confirmation
- Call
send_raw_transactionwith the transaction params returned by the quote - Poll
get_transaction_statuswith the returnednormalizedHashuntil status iscompletedorfailed(seeton-balanceskill). User can ask to skip polling.
Notes
- Always confirm the swap with the user before executing; prefer the host client's structured confirmation UI when available, otherwise accept natural-language yes/no and do not require a fixed confirmation phrase
- The quote returns transaction messages ready for
send_raw_transaction - After execution, poll
get_transaction_statusby default. User can specify whether to check status. - If no wallet is configured, use the
ton-create-walletskill first
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/ton-connect/kit/ton-swap">View ton-swap on skillZs</a>