Tenzro
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
← All tutorials