全部文章
7 分钟阅读

TON 到 Polygon 跨链兑换:原理与全流程解析

通过 MCP 完成 TON 到 Polygon 跨链兑换:原子化 HTLC 锁定如何在服务器从不保管私钥的前提下,非托管地把价值从 TON 转移到 Polygon。

跨链TONPolygonHTLC非托管MCP

钱包里的 USDT 躺在 TON 上,付款却要在 Polygon 完成——那边 gas 便宜、你的 DeFi 合约部署在那儿、收款方也只认 Polygon。常规路线是:提币到交易所,等到账,卖出,买入,再提回 Polygon。四个步骤、四笔手续费、KYC,外加在这几分钟里把钱完全托付给一个中间人。对人来说,这不过是麻烦;对需要自主完成这件事的 AI 智能体来说,这条路干脆走不通:智能体过不了 KYC,也不该持有交易所账户的私钥。

下面我们拆解另一种做法——用 TON 到 Polygon 的原子跨链兑换来解决,全程服务器和智能体都碰不到你的私钥。

为什么要从 TON 换到 Polygon,TONNode 又负责什么

TON 到 Polygon 跨链兑换的适用场景是:价值在一条链上,要花的地方在另一条链,而你既不想等交易所,也不想把资金托付给中间人。典型情形:

  • 给只收 Polygon 的交易对手付款;
  • 手里是 TON 上的余额,要给部署在 Polygon 上的协议加仓;
  • 让 AI 智能体按你的提示词自主在链间转移价值——但不给它你的私钥。

TONNode 是面向 TON 的 hosted MCP 服务器(官网 tonnode.io)。MCP(Model Context Protocol)是 AI 智能体(Claude、Cursor、ChatGPT/Codex 以及任何 MCP 客户端)调用外部工具的标准。你不必教智能体各种 REST 端点,更不必替它签交易,而是给它一套 16 个 TON 工具,由它自己决定调用哪些。这 16 个里有 5 个负责跨链——正是它们把价值从 TON 送出去,非托管,服务器不存任何私钥。

一个重要的机制限制:在 TONNode 里 TON 永远是源链。路径只能从 TON 出发;Polygon 在这里是目标网络,而不是出发点。

术语补充:GRAM 就是改名后的 Toncoin(改名发生在 2026 年 6 月),网络本身仍叫 TON。下文中 GRAM = TON 的原生代币。

TON → Polygon 跨链兑换的原理:原子化 HTLC 锁定

任何跨链交换的难点都在于:两条链互相看不见。没有一个共同的裁判来保证你在 TON 上交出资金后,一定能在 Polygon 上收到。经典解法是原子化 HTLC 锁定(hashed timelock contract,哈希时间锁合约)。可以把它想象成一个装了两把锁外加一个计时器的保险柜。

它建立在两个原语之上——哈希锁和时间锁:

  1. 秘密值及其哈希。 生成一个随机秘密值 S,对它取哈希 H = hash(S)。两条链上的锁定合约都以哈希 H 为条件锁住资金。
  2. 哈希锁。 只有出示能得到该 HS,才能从锁定中解出资金。秘密值未披露之前,两边的钱都被锁死。
  3. 时间锁。 每个锁定合约都有截止时间。到期仍未披露秘密值,资金即可退回给发送方——这是防止交易卡死的保险。

关键在于:在一条链上披露秘密值,在数学上就等于允许在另一条链上取走资金。S 一旦出现在链上,对手方就能用它完成自己那一半。原子性由此而来:交易要么在两条链上整体完成,要么哪儿都不发生、资金原路退回。“钱离开了 TON 却没到 Polygon”这种中间态在设计上就不存在。

TONNode 通过五个工具编排这套协议,但——这一点至关重要——秘密值交到你手里,而不是留在服务器上,且所有 TON 交易都由你的钱包签名。

五个跨链工具:从报价到结算

五个工具在任何套餐下都可用。下面是完整流水线以及每个工具的职责。

1. get_crosschain_quote — 报价

从 TON 发出一笔金额,最终能在 Polygon 收到多少。智能体会最先调用它,在任何签名发生之前展示汇率和路由。它返回的交易参数是后续构建交易的依据。

2. build_crosschain_swap_tx — 未签名的 HTLC 锁定交易

组装一笔未签名交易,在 TON 一侧把你的资金锁进 HTLC,并返回秘密值。交易是 TonConnect 消息格式;签名的是你的钱包,不是服务器。秘密值由你自己保存——结算阶段会用到它。

3. track_crosschain_swap — 两条链上的交易阶段

展示交易进行到哪一步:TON 侧的锁定是否生效、Polygon 侧的对手锁定是否就位、是否一切就绪可以结算。相当于同时盯着两条链的“监控台”。

4. disclose_crosschain_secret — 披露秘密值以完成结算

披露秘密值来完成结算——但仅在链上校验确认双方都已就绪之后。这里的顺序至关重要:在 Polygon 上的对手锁定真正生效之前,绝不能披露秘密值。该工具会检查两条链的状态,确认无误才放出秘密值。

5. build_crosschain_refund — 从锁定中取回资金

在交易卡住、且时间锁已允许取回的情况下,组装一笔未签名的退款交易。这个场景下文细讲。

在与智能体的对话里,这一切看起来是这样的:

把 250 USDT 从 TON 换成 Polygon 上的 USDC。
先给我看报价,再构建交易,
让我用钱包签名,持续跟踪状态,
只有当两侧锁定都就绪时才披露秘密值。

底层的完整流程:

1. get_crosschain_quote       → TON → Polygon 的汇率与路由
2. build_crosschain_swap_tx   → 未签名 HTLC 锁定交易 + 秘密值 S
   (用户在钱包里通过 TonConnect 签名)
3. track_crosschain_swap      → 等待两条链均就绪
4. disclose_crosschain_secret → 链上校验后披露 S → 完成结算
5. build_crosschain_refund    → 仅在出问题时使用

逻辑与 TON 到 Ethereum 的兑换完全一致——变的只是目标网络。

为什么这是非托管:服务器不签名、不存私钥

真正的分界线在这里。非托管不是营销话术,而是架构属性。TONNode 的跨链工具是严格非托管的:服务器从不签名,也从不保管你的资金和私钥。它返回的是未签名的 TonConnect 消息,签名由你的钱包完成。

build_crosschain_swap_tx 为例。工具产出交易草稿和秘密值——但不会执行转账。在你于自己的钱包里确认之前,什么都不会动。私钥不会离开钱包,也不会以任何形式经过服务器。HTLC 的秘密值同理:它交到你手上,因此连结算的主动权也在你,而不在服务器运营方。

对 AI 智能体而言这一点是根本性的。一个拥有工具访问权的自主智能体,绝不应该有能力在没有你签名的情况下花掉你的钱。非托管模型给出的正是这种保证:智能体负责准备交易,而你是唯一能授权它的人。关于两种模式的差异,可以细读托管型与非托管型 MCP 对比,以及如何安全地让智能体在 TON 上做兑换这篇文章。

另外单独说说 TON Foundation 官方的 @ton/mcp。它是一个强大且官方的工具,但设计思路不同:它是托管型智能体钱包(split-key 方案——operator 密钥在智能体手里,owner 密钥在用户手里),由它自己签名,且不支持跨链(仅限 TON)。它有自己的长处——自主花费、NFT 与 DNS 操作、Foundation 官方背书。差异说得很清楚:它是托管型、仅限 TON;TONNode 是非托管型、带跨链和 hosted 选项。完整对比见与官方版的对照页面

支持网络完整清单(以及为什么暂时没有 TRON)

TONNode 的跨链兑换从 TON 出发,目标网络为以下之一:

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

所有情形下 TON 都是源链,上述网络是目标链。TRON 目前不受支持。 原子化 HTLC 锁定要求目标链一侧存在兼容的 hashed-timelock 合约机制并接入交易路由。上面这六条链同属 EVM 兼容家族,TON 能够在其上建立对手锁定。TRON 尚未接入这条路由——不是因为“原理上做不到”,而是产品目前确实还没做这条链的集成。在 TRON 正式出现在清单里之前,不要把它写进你的方案。

Polygon 的逻辑与 Ethereum 路线并无二致;想要一个总体概览,可以看第一个把跨链价值移出 TON 的 MCP这篇拆解。

交易卡住了怎么办:从锁定中退款

跨链意味着两条彼此独立的链,有时对手侧就是确认不了:对手锁定没生效、交易对手消失、目标网络拥堵。在托管模型下,这一刻你只能指望攥着你钱的中间人。在原子化 HTLC 锁定里——不需要。

每个锁定合约都带时间锁。如果交易未完成且时限已过,资金既不会“烧掉”,也不会留在服务器上——它们会退回给你。而秘密值你从未披露(这样做也是对的——disclose_crosschain_secret 在链上确认双方就绪之前不会放出它)。

具体的退款由 build_crosschain_refund 完成:组装一笔未签名交易,你用自己的钱包签名,被锁定的资金就退回你在 TON 上的地址。服务器在这一步依然不签名、不保管任何东西。

到 Polygon 的兑换卡住了,一直没有结算。
把我的资金从锁定里退回来。

智能体会先调用 track_crosschain_swap,确认结算未发生且时间锁允许退款,然后调用 build_crosschain_refund——由你签名。在这套机制里,交易卡死的最坏结局是拿回属于自己的钱,而不是失去它。

如何接入试用:MCP 配置与免费密钥

上手可以完全免费、完全本地。@tonnode/mcp 包是开源的(MIT),发布在 npm 和 GitHub(tonnode/mcp)上,通过 TON 原生的 ADNL 协议直连,不经过任何 HTTP 中间层。

本地免费。 公共配置即可获得完整的读取工具集,无需密钥:

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

MCP 客户端会自动通过 npx 把服务器拉起来。

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 请求/分钟。

Hobby 免费密钥登录后即刻发放,无需绑卡。付费套餐可以用 TON 网络上的 GRAM 或 USDT 通过 TonConnect 支付,也可以通过 Telegram 里的 xRocket 账单用 BTC/ETH/SOL 等币种支付。

最后几句坦诚的提醒,免得期望过高:归档级的历史深度还在路线图上(节点仍在同步),TONNode 目前没有 NFT 和 DNS 工具,也没有 webhook、gasless 中继和书面的可用性保证。跨链产品就是上面描述的那五个工具——它们做的事很实在:非托管地把价值从 TON 转移到 Polygon。


亲手试一次跨链。 领取免费的 Hobby 密钥,让你的智能体构建第一笔 TON → Polygon 兑换:tonnode.io/dashboard?plan=hobby。想先把 16 个工具全部研究一遍——请看工具介绍页

让你的智能体接入 TON

16 个 MCP 工具:读取、非托管兑换、跨链与钱包。免费档 60 次/分钟,无需银行卡。