Tenzro
Bridges and interoperability

Chainlink CCIP.

CCIP messaging, CCT v1.6+ token transfers, Data Feeds, Data Streams, VRF v2.5, Proof of Reserve, Automation, and Functions — the full Chainlink surface for cross-chain messaging, market data, randomness, and reserve attestation.
STATUS
Stable
CRATE
tenzro-bridge
ADAPTER
ChainlinkCcipAdapter
CLASS
RegulatedRail
00

Adapter class + router

The ChainlinkCcipAdapter declares BridgeAdapterClass::RegulatedRail, so BridgeRouter picks it over generic adapters whenever the caller selects RoutingStrategy::Regulated. The router falls back to lowest-fee only when no RegulatedRail adapter covers the lane. Two signature-verification layers gate every inbound message: the OCR commit-store committee (install_commit_set) and the RMN ARM set (install_rmn_set).

The node exposes a CCIP JSON-RPC namespace alongside the standalone Chainlink MCP server. The tenzro_ccip* family covers fee quoting, send envelopes, message tracking, lane discovery, CCT pool inspection, rate-limiter state, and router-mediated bridging. The Rust and TypeScript SDKs expose this as client.ccip(); the CLI as tenzro ccip.

01

Cross-chain messaging

CCIP messaging on top of the Chainlink Router with live fee quoting via Router.getFee() and message tracking via OffRamp.getExecutionState(). The node exposes this as both JSON-RPC (tenzro_ccip*) and MCP tools.

  • tenzro_ccipGetFee / ccip_get_feeRouter.getFee() eth_call.
  • tenzro_ccipSend / ccip_sendRouter.ccipSend() envelope (calldata + msg.value).
  • tenzro_ccipTrack / ccip_trackOffRamp.getExecutionState().
  • tenzro_ccipSupportedChains, tenzro_ccipSupportedTokens, tenzro_ccipLanes — Chainlink docs-API passthrough.
  • tenzro_ccipBridge / ccip_bridgeBridgeRouter dispatch pinned to the CCIP adapter; refuses to fall back to a generic rail.
02

Cross-Chain Token (CCT) v1.6+

CCT is the Chainlink standard for native cross-chain token transfers without wrapped representations. Tenzro implements pool registry, LockRelease and BurnMint pool metadata per chain, and per-lane rate limits.

  • tenzro_ccipTokenPool / ccip_token_pool — CCT pool metadata read from the pool's getToken().
  • tenzro_ccipRateLimits / ccip_rate_limits — inbound + outbound RateLimiter.TokenBucket state per (pool, remote-chain) pair.
  • tenzro_cctListPools, tenzro_cctGetPool, tenzro_cctBuildMessage — pool registry and message build.
03

Data Feeds and Data Streams

  • chainlink_get_priceAggregatorV3.latestRoundData().
  • chainlink_list_feeds — registered feeds.
  • ds_get_report — sub-second market data via Data Streams REST API.
  • ds_list_feeds — crypto / forex / equities / commodities streams.
04

VRF v2.5

  • vrf_request_randomrequestRandomWords() calldata.
  • vrf_get_subscription — subscription balance and consumer set.
05

Proof of Reserve

Chainlink Proof of Reserve feeds back the Secure-Mint policy: the reserve attestation that authorizes a tokenized asset to mint up to reserve is signed by a registered attestor and time-bound.

  • por_get_reserve — read reserve from a PoR feed.
  • por_list_feeds — registered PoR feeds (WBTC, USDC, TUSD, etc.).
06

Automation and Functions

  • chainlink_check_upkeep — dry-run checkUpkeep().
  • chainlink_get_upkeep_info — registry query.
  • chainlink_estimate_functions_cost, chainlink_get_subscription — Functions subscription metadata.
07

Surfaces

The CCIP tool surface is available three ways: the node's tenzro_ccip* JSON-RPC family at rpc.tenzro.network, the main MCP server at mcp.tenzro.network/mcp, and the dedicated Chainlink MCP server at chainlink-mcp.tenzro.network/mcp (which also carries Data Feeds, Data Streams, VRF, PoR, Automation, and Functions).

The Rust and TypeScript SDKs expose this as client.ccip(); the CLI as tenzro ccip {get-fee, send, track, supported-chains, supported-tokens, lanes, token-pool, rate-limits, bridge}.

Related
← All docs