TaifoonTAIFOON
SIGN IN
PROOF: THE GATE
[ PROOF · THE GATE ]

Prove a transaction on any chain.

For bridges, solvers and agents: prove a block, a transaction or an event on any covered chain, and check the proof yourself.

60+
Chains
603.2M
Blocks under the root
294,519
Twigs
V5 ROOT · LIVE
reading the root
…CHAINS
…TWIGS
…PEAKS
V5VERSION
CHAIN COVERAGE
MMR PROOF TERMINAL

Query V5 MMR inclusion proofs directly from DA API

query proof
block number, tx hash, or "latest"
Proves the latest block on chain 42161 against the root.
Agent view · the call
GET https://www.taifoon.io/v5/proof/blob/42161/latest
LIVE TWIG STREAM

Block headers indexed as MMR twigs: 60+ chains, live

…
CHAINS ACTIVE
…
TOTAL BLOCKS
…
TOTAL TWIGS
LATEST INDEXED BLOCK PER CHAIN
CONNECTING TO SPINNER…
CHAIN COVERAGE · MMR TWIG SOURCES

All chains indexed into the universal MMR proof tree

LOADING CHAIN COVERAGE…
TAIFOON UNIVERSAL OPERATOR · MMR TWIGS COMPATIBILITY
Operator Contract
ADDRESS
0x7C7dCA7370dBe78f7b8970eC59a1CB8c7696759a
CHAIN
Taifoon Devnet (36927)
RPC
rpc.taifoon.dev
STATUS
TEST · our test network
ARC EXECUTOR
0x8e820f7E7AEaC0962c279422D8F7A7226b4F245d
vendor: ACTIVErole: ACTIVE
V5 PROOF STEPS
1
Source Block (Twig)
Block header collected → indexed as MMR twig
2
Intent Anchored
OrderCreated matched to MMR twig position
3
Dst Block
Destination chain block confirmed
4
Finality
Source twig confirmed finalized
5
Settlement
Twig inclusion proof submitted to TaifoonUniversalOperator
Agent view · the calldata
CALLDATA ABI
executeVerifiedCall(
  uint256 batchId,
  InclusionProof proof,  // contains twig MMR path
  address vendorContract,
  bytes callData
)

WHY YOU CAN TRUST THE ARRIVAL

One transfer, six steps up to one root.

Your transfer is a cell on the tape. Seventeen sibling hashes carry it up to the root anchored on Taifoon mainnet. Anyone can redo the climb.

Reading the last transfer's proof.

INCLUDED
Steps 1 to 4 reach the chain root.
FINAL
Past the chain’s reorg depth.
ANCHORED
The root is on Base.
LEVEL 1 · YOUR TRANSFER
01

Prove what your protocol depends on, with one API

Bridges, intents, solvers, oracles and agents all rest on the same facts: this block happened, this transaction is in it, this event was emitted. The coordination layer proves them on 60+ chains through one API, and anyone can check the proof without trusting Taifoon.

Current rootone hash that commits every chain, refreshed every 10 sLIVE
Blocks are canonicalup to 256 blocks in one compact proof, under the rootLIVE
Your transaction happenedreceipt, block and root checked togetherLIVE
Full V5 proofthe six-layer blob a contract verifiesLIVE
What the layer watchesdecoded cross-chain activity per chain and contract, refreshed every 4 minutesLIVE
An order, end to endevery transition of a bridge, intent or agent job in one bundleNEXT
Signed quotes and commitmentsRFQ answers and solver commitments as provable factsNEXT
Agent view · the calls
Current rootGET /v1/root
Blocks are canonicalGET /v1/proof/blocks/{chain}?blocks=a,b,c
Your transaction happenedGET /v1/proof/tx/{chain}/{tx}
Full V5 proofGET /v1/proof/verifiable/{chain}
What the layer watchesGET /v1/genome/live
An order, end to end/v1/proof/order/{protocol}/{key}
Signed quotes and commitmentsPOST /v1/attest
02

Check it yourself

The proof explorer above does exactly this in your browser: it recomputes the proof with keccak and compares it with the published root. The same construction runs in Rust and in Solidity, where checking a batch of blocks costs about 18k gas.

Fold 1
Hash your block with its siblings, level by level. The result must equal the chain’s root.
Fold 2
Hash the chain’s leaf with its siblings. The result must equal the published root.
Agent view · the same in three calls
# 1. three Base blocks, one proof (≈ a few hundred bytes)
curl -s "https://coord.taifoon.dev/v1/proof/blocks/8453?blocks=52136000,52136001,52136010"

# 2. one of your transactions
curl -s https://coord.taifoon.dev/v1/proof/tx/8453/0x<your tx hash>

# 3. check it yourself: two folds, no Taifoon code trusted
#    multiRoot(blockTree)                         == anchor.root
#    fold(chainLeaf(anchor), anchor.l3Siblings)   == anchor.superrootHash
03

Ready today for

Order-level proofs for bridges, intents and agent jobs are next; the block and transaction proofs they build on are live now.

Oracles and data feeds
prove the block a value was read from, on any collected chain, in one call
Cross-chain messaging and relayers
prove the source block and the event before you deliver
Light bridge verifiers
batch block proofs plus EVM log proofs, verifiable on chain
Explorers and compliance trails
a portable proof for every block and transaction you show
Agents (MCP)
the same calls as tools, no key for reads
04

Onboard your protocol

Get a proof of one of your own transactions, verify it, then register your contracts and events so the layer decodes and tracks your orders. Registration has a dry run that tells you, per chain, what is proven for you.

TWIGS · LIVE

Browse the most recent MMR twig per chain.

Every block header lands in a twig. Each {chain, block, twig_index} maps to a Merkle path to that chain's own root, then into the one root over every chain. These are the live tips, sampled from the busiest chains right now.

Idle. No twigs sampled yet.
/proof · api.taifoon.dev · taifoon · 2026-11-07T09:50:21Z