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

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

Кросчейн-своп TON → Base через MCP: HTLC-ескроу, некастодіально, 5 інструментів. Як агент рухає цінність з TON у Base без моста-кастодіана.

кросчейнTONBaseHTLCнекастодіальний свопMCP

Ваш ШІ-агент знайшов вигідну можливість: капітал користувача лежить у TON, а потрібний протокол чи актив — на Base. Класична відповідь — «прожени через міст». Але міст означає, що хтось тримає ваші кошти в момент переходу: bridge-контракт, релеєр, мультисиг із підписантів, яких ви не обирали. За останні роки саме мости-кастодіани вивели понад мільярд доларів користувацьких грошей — не тому, що криптографія погана, а тому, що хтось тримав кошти в проміжку.

Для автономного агента це подвійна проблема. По-перше, агент не повинен підписувати транзакцію, яка віддає кошти третій стороні без гарантії повернення. По-друге, в агента взагалі не має бути ваших приватних ключів. А класичний міст вимагає саме цього — довіри до посередника.

Є інший шлях — атомарний HTLC-ескроу. Нижче розберемо, як виконати кросчейн своп TON → Base так, щоб жоден посередник у жоден момент не міг торкнутися ваших ключів чи коштів, і як увесь цей потік викликається ШІ-агентом через п'ять MCP-інструментів TONNode.

Навіщо свапати з TON у Base і чому це не звичайний міст

Base — це L2 поверх Ethereum від Coinbase на OP Stack. Туди мігрує ліквідність, туди йдуть DeFi-протоколи, і дедалі частіше саме там опиняється контракт, з яким має працювати ваш агент. А вихідний капітал у вас у TON — у GRAM (це перейменований у червні 2026 року Toncoin; мережа, як і раніше, називається TON) або в USDT на TON.

Звичайний міст розв'язує цю задачу через кастодію. Ви віддаєте кошти в bridge-контракт у вихідній мережі, десь осторонь релеєр це бачить і випускає еквівалент на Base. Між «віддав» і «отримав» є вікно, в якому вашими грошима розпоряджаєтеся не ви. Для людини, яка раз на місяць перекидає кошти, це стерпно. Для агента, який робить це в циклі й без нагляду, — неприйнятний ризик.

Альтернатива — атомарний обмін, у якому не існує моменту, коли кошти належать посереднику. Або угода виконується цілком в обох мережах, або цілком відкочується. Саме так влаштований кросчейн у TONNode.

Як працює атомарний HTLC-ескроу між TON і Base

HTLC — hashed timelock contract, ескроу з двома умовами розблокування: хеш секрету і таймлок. Найпростіше уявити два сейфи: один у TON, один у Base. Обидва відчиняються тим самим ключем — секретом. Поки секрет не розкрито, обидва замкнені.

  • Хеш-замок. Кошти в обох мережах блокуються під той самий хеш секрету h = hash(s). Відкрити ескроу можна, лише пред'явивши сам секрет s, чий хеш збігається.
  • Таймлок. У кожного сейфа є термін. Якщо угода не виконалася вчасно, кошти повертаються власнику після спливу таймлока.

Схема на пальцях:

  1. Генерується випадковий секрет s і його хеш h = hash(s).
  2. На TON ваші кошти блокуються в ескроу під умову: «видати тому, хто пред'явить s; повернути відправнику, якщо до дедлайну s так і не пред'явлено».
  3. На Base контрагент (резолвер, який забезпечує ліквідність призначення) блокує свої кошти під той самий h — з коротшим таймлоком.
  4. Ви розкриваєте s, щоб забрати кошти на Base. У цей момент s стає публічним ончейн.
  5. Контрагент бачить розкритий s і забирає заблоковані кошти на TON.

Ключова властивість: h той самий в обох мережах. Щойно секрет розкрито для розрахунку на одному боці, другий бік математично може завершити угоду. Проміжного стану «мої гроші в чужого дядька» не існує — є лише математика хеша і годинник таймлока. Якщо щось пішло не так і таймлок сплив, кошти повертаються початковим власникам. Атомарно: або обидві ноги виконуються, або обидві відкочуються.

У схемі TONNode TON завжди виступає джерелом угоди, а Base (чи інша підтримувана мережа) — призначенням.

П'ять інструментів кросчейн-свапу в TONNode MCP

TONNode — це hosted MCP-сервер для TON, який має рівно 16 інструментів. MCP (Model Context Protocol) — стандарт, за яким ШІ-агенти (Claude, Cursor, ChatGPT/Codex і будь-який MCP-клієнт) викликають зовнішні інструменти. Кросчейн-набір — це рівно 5 інструментів, і вони доступні на всіх тарифах:

  • get_crosschain_quote — котирування: скільки отримаєте на Base за ваші кошти з TON, з урахуванням маршруту і таймлоків.
  • build_crosschain_swap_tx — збирає непідписану HTLC-ескроу транзакцію для TON і повертає її разом із секретом. Підписує її гаманець користувача через TonConnect.
  • track_crosschain_swap — показує фази угоди в обох мережах: чи заблоковано на TON, чи заблокував контрагент на Base, чи розкрито секрет, чи завершено.
  • disclose_crosschain_secret — розкриває секрет для розрахунку, але лише після того, як ончейн підтверджено, що зустрічна нога готова.
  • build_crosschain_refund — збирає непідписану транзакцію повернення коштів з ескроу, якщо угода зависла і таймлок сплив.

Зверніть увагу на порядок відповідальності: інструмент, який розкриває секрет, робить це не наосліп, а після перевірки готовності на Base. Це не дасть вам розкрити s у ситуації, коли контрагент ще нічого не заблокував.

Повний потік: котирування → збирання → відстеження → розкриття секрету

Спершу підключіть сервер. Локально і безкоштовно, пакет @tonnode/mcp — open source (MIT), працює через нативний ADNL-протокол TON без HTTP-прошарків:

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

Далі вся робота йде через промпти до агента — він сам розкладає їх на виклики інструментів.

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

Дай котирування кросчейн-свапу: 200 USDT з TON у USDC на Base.
Використай get_crosschain_quote.

Агент поверне, скільки ви отримаєте на Base і які таймлоки в ескроу, — цифри до будь-яких дій. Якщо влаштовує — рухаємося далі.

Крок 2. Збирання непідписаної транзакції.

Збери HTLC-ескроу транзакцію за цим котируванням через build_crosschain_swap_tx.
Моя TON-адреса EQ…, адреса отримання на Base 0x…

На виході — непідписане TonConnect-повідомлення з HTLC-ескроу і секрет угоди. Секрет ваш, зберігайте його; сервер його не зберігає. Кошти блокуються в ескроу на TON під хеш цього секрету. Підпис ставить ваш гаманець через TonConnect — сервер підпису не торкається.

Крок 3. Відстеження.

Перевір статус угоди через track_crosschain_swap за хешем h….
Чи заблокував контрагент кошти на Base?

Інструмент показує фази в обох мережах. Агент чекає, доки обидві сторони не опиняться замкненими під одним хешем.

Крок 4. Розкриття секрету.

Кошти на Base заблоковано. Розкрий секрет для розрахунку
через disclose_crosschain_secret.

Лише після того, як track_crosschain_swap підтвердить готовність ончейн, агент розкриває секрет. Розкриття виконує обидва ескроу атомарно: ви отримуєте кошти на Base, контрагент за публічним секретом закриває свій бік на TON. Угоду закрито.

Зауважте порядок: секрет розкривається останнім і лише після перевірки, що зустрічний ескроу справді на місці. До розкриття ваші кошти нікуди не подінуться, а після розкриття угода вже атомарна.

Докладний розбір такого самого потоку, але з Ethereum у ролі призначення, — в окремому матеріалі: кросчейн-свап TON → Ethereum, механіка та сама, відрізняється лише мережа призначення. А про те, чому сама можливість рухати цінність з TON руками агента — це новий клас операцій, — у цьому матеріалі.

Некастодіальність: чому сервер ніколи не тримає ваші ключі

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

Розберімо покроково, де що лежить:

  • Приватний ключ вашого TON-гаманця — лише у вас, у гаманці.
  • Секрет s — згенерований під час збирання і відданий вам; на сервері не залишається.
  • Підпис HTLC-транзакції — ставить ваш гаманець через TonConnect.
  • Кошти на TON — в ескроу-контракті під криптографічною умовою, а не на рахунку посередника.

Навіть якби сервер захотів, він не зміг би ні підписати за вас, ні вивести кошти з ескроу: в нього немає ні ключа, ні можливості пред'явити умову розблокування на свою користь. Це принципово відрізняється від кастодіального підходу, де оператор тримає ключ і підписує сам. Розгорнуте порівняння двох моделей — у розборі кастодіальні vs некастодіальні MCP, а розбір саме свапу без кастодії — у тексті про некастодіальний своп з агента.

Які мережі підтримуються, крім Base (і чому TRON поки немає)

TON завжди джерело, а мережею призначення може бути будь-яка з:

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

TRON поки не підтримується. Причина технічна, а не ідеологічна: атомарний HTLC-ескроу вимагає сумісної семантики хеш-таймлоків і передбачуваної поведінки контрактів на боці призначення. Якщо ваш сценарій зав'язаний на TRON — не будуйте на цьому логіку агента, в поточному кросчейн-наборі його немає. Коли додамо, це буде відображено в роадмапі: tonnode.io/roadmap.

Як підключити і що робити, якщо угода зависне: рефанд

Для продакшену з гарантованою пропускною здатністю використовується hosted-ендпоінт зі своїм ключем:

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

На всіх ключах доступні всі 16 інструментів, включно з повним кросчейн-набором. Платите ви лише за пропускну здатність, а не за доступ до інструментів:

  • Hobby — безкоштовно назавжди, 60 запитів/хв. Ключ видається одразу після входу, без картки.
  • Pro — $29/міс, 300 запитів/хв.
  • Scale — $199/міс, 1200 запитів/хв.

А якщо контрагент не завершив угоду?

Тут і розкривається сенс таймлока. Якщо зустрічна сторона не виконала свою частину і таймлок сплив, ваші кошти не втрачаються — вони заблоковані під умову повернення відправнику після дедлайну. Агент викликає:

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

build_crosschain_refund віддає непідписану транзакцію повернення — ви підписуєте її своїм гаманцем і забираєте кошти назад на TON. Це і є страховка, вбудована в HTLC: угода або виконується атомарно, або відкочується за таймлоком. Зависла угода не означає втрачені гроші — вона означає рефанд. Саме ця гарантія і робить атомарний обмін безпечною заміною мосту-кастодіану.

З чого почати

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

Найшвидший спосіб спробувати — взяти безкоштовний Hobby-ключ (видається одразу після входу, без картки) і прогнати потік TON → Base зі свого агента:

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

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