Tutorial — Bridges
Bridge with Wormhole NTT
Wormhole is Tenzro's primary path for TNZO cross-chain transfers. Guardian signatures form a VAA (Verified Action Approval) that any destination chain can redeem.
- Level
- Intermediate
- Time
- ~20 min
- Prerequisites
- Wallet on source and destination
- Stack
- TypeScript · MCP
01
Pick a route
Wormhole maps every chain to a numeric ID. Tenzro exposes the catalog through the bridge router.
import { McpClient } from "tenzro-sdk";
const tz = new McpClient("https://mcp.tenzro.network/mcp");
const routes = await tz.call("get_bridge_routes", { src: "tenzro", dst: "ethereum" });02
Initiate the transfer
NTT (Native Token Transfer) burns on source and mints on destination — no liquidity pool.
const burn = await tz.call("bridge_tokens", {
adapter: "wormhole",
src: "tenzro", dst: "ethereum",
token: "TNZO", amount: "500",
recipient: "0xabc..."
});03
Wait for Guardian quorum
The Guardian set signs the VAA. Quorum is 13 of 19; expect ~15 minutes on finality-heavy chains.
const vaa = await tz.call("wormhole_get_vaa", { txid: burn.txid });04
Redeem on the destination
Submit the VAA to the destination NTT contract; the recipient receives the wrapped or native asset.
await tz.call("wormhole_redeem", { vaa: vaa.bytes, chain: "ethereum" });Related