The MCTP (Mayan-Circle Transfer Protocol) method converts input tokens to USDC and sends them to the destination chain via Circle’s CCTP. Drivers then compete in an on-chain auction on Solana to deliver the best rate for swapping USDC into the user’s requested output token. How it works:
- Input tokens are swapped to USDC on the source chain, then forwarded using Circle CCTP.
- An auction is held on Solana. The winning driver converts USDC on the destination chain to the requested output token.
- Output tokens are delivered directly to the user’s wallet.
- The protocol fee is zero if the output token is USDC and 3 basis points for other tokens.

MCTP Contract Addresses
| Network | Wormhole Chain ID | Contract Address |
|---|---|---|
| Solana | 1 | dkpZqrxHFrhziEMQ931GLtfy11nFkCsfMftH9u6QwBU |
| Ethereum | 2 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| BSC | 4 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Polygon | 5 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Avalanche | 6 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Arbitrum | 23 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Optimism | 24 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Base | 30 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Unichain | 44 | 0x875d6d37EC55c8cF220B9E5080717549d8Aa8EcA |
| Sui | 21 | 0xb787fe0f7530b4fd2162fa0cc92f4f6c5a97c54b4c5c55eb04ab29f4b803ac9c(shared state) |
A variant using Circle CCTPv2 for faster settlement and more efficient messaging. Flow and auction structure are identical; finality is faster and latency reduced. Protocol fee is 3 basis points.
| Network | Wormhole Chain Id | Contract Address |
|---|---|---|
| Solana | 1 | Gx9rivpS3YR8pBFwMuP6omYqVxunpLvLkNn7ubNyuZZ5 |
| Ethereum | 2 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Polygon | 5 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Avalanche | 6 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Arbitrum | 23 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Optimism | 24 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Base | 30 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Linea | 38 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Unichain | 44 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| HyperEVM | 47 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |
| Monad | 48 | 0xC1062b7C5Dc8E4b1Df9F200fe360cDc0eD6e7741 |