Усі статті
7 хв читання

Кросчейн-свопи з TON в Arbitrum: як це працює

Кросчейн-своп TON → Arbitrum через MCP: атомарний HTLC-ескроу, некастодіально, без зберігання ключів. Як влаштовано потік і які мережі підтримано.

кросчейнTONArbitrumHTLCнекастодіальністьMCP

Кросчейн-своп TON → Arbitrum: гроші застрягли між двома мережами

Класичний сценарій: ваш ШІ-агент тримає баланс на TON-гаманці — GRAM або USDT, — а оплатити треба контракт в Arbitrum. Там дешевий газ, там ліквідність, там потрібний протокол. Звичний шлях виглядає так: вивести на біржу, дочекатися зарахування, купити ETH, вивести в Arbitrum, втратити на спреді й комісіях — і все це вручну, через кастодіальний сервіс, якому ви віддаєте кошти «потримати». Для людини це пів години мороки. Для автономного агента — глуха стіна: у нього немає акаунта на біржі, немає KYC, а довіряти чужому серверу приватний ключ він не повинен за визначенням. А кожен міст — це ще й окрема інтеграція, окрема точка відмови і регулярні новини в стилі «міст зламали».

Кросчейн-своп TON → Arbitrum розв'язує саме цей біль: перемістити вартість із TON в іншу мережу однією атомарною угодою, не віддаючи нікому приватний ключ. Нижче — як це влаштовано під капотом і як під'єднати це до агента через п'ять MCP-інструментів TONNode.

Навіщо свопати з TON в Arbitrum і які мережі ще доступні

Arbitrum — популярний L2-напрямок поверх Ethereum: низька комісія, зріла DeFi-інфраструктура, багато протоколів, яких немає на TON. Типові причини піти саме туди:

  • перекинути USDT в екосистему, де його приймає потрібний протокол;
  • зайти в позицію на Arbitrum-нативному DEX чи перп-протоколі;
  • розрахуватися в мережі, яку підтримує контрагент.

У TONNode кросчейн підтримує шість мереж призначення:

  • Ethereum
  • Arbitrum
  • Base
  • BNB Chain
  • Polygon
  • Avalanche

Важливе обмеження, яке варто тримати в голові: TON завжди джерело. Потік іде з TON в EVM-мережу, а не навпаки. І TRON поки що не підтримується — якщо хтось чекає USDT-TRC20 напряму, такого маршруту немає, не закладайте його в логіку агента. Arbitrum тут просто один із шести адресатів; усе описане нижче дослівно справедливе й для переходу TON → Ethereum чи TON → Base — змінюється лише мережа призначення в котируванні.

Що таке HTLC-ескроу і чому своп атомарний

Головне питання будь-якого кросчейн-обміну: як обміняти актив у мережі A на актив у мережі B, якщо мережі не мають спільного «судді»? Наївний варіант — довіритися посереднику — і є той самий кастодіальний ризик.

TONNode використовує атомарний HTLC-ескроу (Hashed TimeLock Contract — контракт із хеш-замком і таймером). Аналогія: дві сейфові комірки, по одній у кожній мережі, і обидві відчиняються тим самим ключем-секретом. Працює це завдяки двом властивостям:

  • Хеш-замок (hash lock). Генерується випадковий секрет S, з нього обчислюють хеш H = hash(S). Обидві комірки — ескроу на TON і ескроу на Arbitrum — замикаються на цей хеш з умовою «видати тому, хто пред'явить такий S, що hash(S) == H». Поки секрет не розкрито, ніхто нічого не забирає; щойно S пред'явлено на одному боці, він стає видимим і на іншому.
  • Таймер (time lock). Кожна комірка має свій строк. Якщо угода не склалася, після закінчення таймлоку кошти повертаються початковому власнику.

Звідси й слово атомарний: угода або проходить в обох мережах (секрет розкрито — обидва ескроу виконано), або не проходить ніде (таймлок сплив — обидва повернення). Проміжного стану «гроші пішли з TON, але не прийшли в Arbitrum» тут не буває. Це не міст зі спільним пулом, який можна зламати, а два незалежні ескроу, синхронізовані одним секретом.

Потік кросчейн-свопу TON → Arbitrum крок за кроком

Увесь обмін — це п'ять інструментів, які викликають послідовно. Кожен робить рівно одну річ.

1. get_crosschain_quote — котирування

Питаєте: скільки отримаю в Arbitrum за X GRAM (або за X USDT на TON). Повертається тверде котирування за маршрутом — курс, комісії, параметри.

2. build_crosschain_swap_tx — непідписана HTLC-транзакція + секрет

Сервер збирає непідписану транзакцію, що створює ескроу на боці TON, і віддає вам секрет S (той самий ключ від обох комірок). Транзакцію ще не відправлено й не підписано — її підпише гаманець користувача через TonConnect. Секрет залишається у вас; саме ним ви пізніше завершите розрахунок.

3. track_crosschain_swap — фази угоди в обох мережах

Після того як ескроу на TON створено, контрагент виставляє зустрічний ескроу на Arbitrum. Цей інструмент показує фази угоди в обох мережах: чи створено ескроу джерела, чи з'явився ескроу призначення, чи все готово до розрахунку. Це ваш ончейн-детектор готовності — ви буквально бачите обидві комірки.

4. disclose_crosschain_secret — розкрити секрет для розрахунку

Ключовий момент безпеки. Секрет розкривається лише після ончейн-перевірки готовності ескроу — тобто після того, як інструмент переконався, що зустрічна комірка в Arbitrum справді існує і замкнена на правильний хеш-замок. Сенс перевірки прямий: поки зустрічний ескроу не сформовано, секрет розкривати не можна — інакше контрагент забере ваші кошти, не виконавши свою частину. Щойно секрет розкрито, обидві сторони отримують своє.

5. build_crosschain_refund — страховка

Якщо угода зависла — збирає транзакцію повернення коштів з ескроу після закінчення таймлоку. Про це — окремий розділ нижче.

Схема потоку:

get_crosschain_quote      → котирування TON → Arbitrum
build_crosschain_swap_tx  → непідписана HTLC-tx + секрет  (підписує гаманець)
track_crosschain_swap     → фази на TON і на Arbitrum
disclose_crosschain_secret→ розкрити секрет після ончейн-перевірки
build_crosschain_refund   → рефанд, якщо угода зависла

Агентові при цьому досить людського промпту — він сам обере й викличе інструменти в правильному порядку:

Свопни 50 USDT з мого TON-гаманця на Arbitrum.
Спочатку покажи котирування через get_crosschain_quote,
збери HTLC-ескроу транзакцію через build_crosschain_swap_tx
і дай мені підписати її в гаманці. Потім відстежуй фази в обох мережах
і розкрий секрет лише тоді, коли ескроу призначення готовий ончейн.

На жодному кроці агент не просить ваш приватний ключ.

Некастодіальність: сервер не підписує і не зберігає ключі

Це те, що відрізняє підхід докорінно. build_crosschain_swap_tx повертає непідписане TonConnect-повідомлення — підпис ставить гаманець користувача, а не сервер. Сервер ніколи не підписує і не зберігає кошти та приватні ключі.

Що це означає на практиці:

  • Секрет від HTLC віддається вам у build_crosschain_swap_tx, а не лишається на сервері; розкриття відбувається вашою свідомою дією через disclose_crosschain_secret.
  • Кошти весь час лежать в ончейн-ескроу, а не на гаманці провайдера.
  • Навіть якби сервер захотів «прибрати» гроші до рук — не має чим: ключів немає, підпис не його, а розкриття секрету ініціюєте тільки ви.

Те саме правило діє й для решти інструментів TONNode, які щось «пишуть» ончейн: своп і generate_wallet строго некастодіальні. Для порівняння — офіційний @ton/mcp від TON Foundation влаштований інакше: це кастодіальний агент-гаманець зі split-key, де operator-ключ тримає і підписує сам агент. Підхід робочий і має свої плюси (автономні витрати, NFT, DNS, офіційність), але він кастодіальний і працює тільки всередині TON — кросчейну там немає. TONNode свідомо обирає протилежну модель: підпис завжди на боці користувача. Докладніше про цю модель для агентів — у розборі чому агентський своп має бути некастодіальним.

Що робити, якщо угода зависла: рефанд з ескроу

Кросчейн — це дві незалежні мережі, і часом зустрічна сторона не виконує свою частину: ескроу в Arbitrum не з'явився або розрахунок застряг. Гроші при цьому не втрачаються — вони лежать у вашому ескроу на TON під таймлоком.

build_crosschain_refund збирає непідписану транзакцію повернення — теж під підпис вашим гаманцем. Після закінчення таймлоку кошти йдуть з ескроу назад на вашу TON-адресу:

Угода не пройшла, ескроу висить.
Збери повернення через build_crosschain_refund і дай підписати.

Це і є друга половина «атомарності»: якщо угода не склалася в обох мережах, вона відкочується. У найгіршому разі ви втрачаєте трохи часу і газ, але не суму угоди. Жодного «завислого в мості» балансу, який потім місяцями вибиваєш через підтримку.

Практичне правило для агента: якщо track_crosschain_swap довго не показує готовий ескроу призначення, а таймлок добігає кінця — не розкривайте секрет, а викликайте build_crosschain_refund.

Як під'єднати інструменти кросчейну до ШІ-агента

Усі п'ять кросчейн-інструментів — частина MCP-сервера TONNode. MCP (Model Context Protocol) — це стандарт, за яким Claude, Cursor, ChatGPT/Codex і будь-який інший MCP-клієнт викликають інструменти. Під'єднується одним конфігом.

Локально, безкоштовно (публічний конфіг, повний набір читання):

{
  "mcpServers": {
    "ton": {
      "command": "npx",
      "args": ["-y", "@tonnode/mcp"]
    }
  }
}

Локальний безкоштовний запуск дає повний набір інструментів читання. Кросчейн- і своп-інструменти (збирання угод — build_crosschain_swap_tx, track_crosschain_swap, disclose_crosschain_secret, build_crosschain_refund) працюють за hosted-ключем — зокрема й за безкоштовним Hobby (див. розділ про тарифи нижче).

Hosted (гарантована пропускна здатність, свій ключ):

{
  "mcpServers": {
    "ton": {
      "type": "http",
      "url": "https://mcp.tonnode.io/mcp",
      "headers": { "Authorization": "Bearer tn_live_…" }
    }
  }
}

Пакет @tonnode/mcp — open source (MIT), лежить на npm і GitHub (tonnode/mcp), працює за нативним ADNL-протоколом TON без HTTP-прошарків.

Кілька технічних уточнень, щоб агент не спотикався. GRAM — це перейменований Toncoin (перейменування в червні 2026), сама мережа, як і раніше, називається TON; якщо агент оперує «GRAM» у котируванні — це той самий нативний токен. Комісію за hosted-ключ можна оплатити GRAM або USDT у мережі TON через TonConnect, або ж BTC/ETH/SOL та іншими монетами через рахунок xRocket у Telegram — ключ видається автоматично після розрахунку.

Тарифи і що входить

Усі 16 інструментів TONNode — включно з п'ятьма кросчейн-інструментами — доступні на будь-якому тарифі. Платите ви лише за пропускну здатність, а не за «розблокування» функцій:

  • Hobby — безкоштовно назавжди, 60 запитів/хв;
  • Pro — $29/міс, 300 запитів/хв;
  • Scale — $199/міс, 1200 запитів/хв.

Безкоштовний ключ Hobby видається одразу після входу, без картки.

Коротко

Кросчейн-своп TON → Arbitrum у TONNode — це атомарний HTLC-ескроу: один секрет пов'язує дві комірки у двох мережах, тож угода або проходить цілком, або повертається за таймлоком. П'ять інструментів покривають увесь потік — котирування, збирання непідписаної HTLC-транзакції із секретом, відстеження фаз в обох мережах, розкриття секрету після ончейн-перевірки готовності та рефанд у разі затримки, — а сервер при цьому лишається некастодіальним: не підписує і не зберігає ні кошти, ні ключі. Той самий механізм працює й для інших напрямків: див. розбори свопу TON → Ethereum і TON → Base, а також чому перше кросчейн-перенесення вартості з TON через MCP — це важливо.

Хочете спробувати на живому агенті — отримайте безкоштовний ключ Hobby (усі 16 інструментів, включно з кросчейном, 60 запитів/хв, без картки) і зазирніть на сторінку про інструменти.

Дайте вашому агенту доступ до TON

16 MCP-інструментів: читання, некастодіальні свопи, кросчейн і гаманці. Безкоштовний тариф — 60 зап/хв, картка не потрібна.