xyz.tenzro/tenzro-chainlink
REMOTE · CHAINLINK-MCP.TENZRO.XYZ · SCANNED AUG 24
Chainlink tools over MCP: CCIP cross-chain, data feeds, data streams, VRF, proof of reserve.
Available components
Dead
Every channel of this server has been unreachable for long enough to be marked dead. Its trust score is pinned to 0 and does not recover automatically: even once the server responds again it stays dead until it is manually reinstated.
How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. How we score → Why this is hard to score →
Endpoint Security0
- TLS not yet verified: we couldn't open a connection to check the certificate. View diagnostics → Unverified
- Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. View diagnostics → Unverified
- HTTPS enforcement could not be verified: the plaintext port answered with HTTP 502, which proves neither a plaintext path nor enforcement. View diagnostics → Unverified
- HSTS not yet verified: we couldn't read the response headers to check for it. View diagnostics → Unverified
- DNSSEC check failed: this domain isn't protected by DNSSEC. See how to fix → View diagnostics → Fail
Transport & Reachability0
- Transport check failed: declared streamable-http, but we couldn't connect to verify it. See how to fix → View diagnostics → Fail
Schema Quality & AI Usability0
- Schema not yet verified: we couldn't read the endpoint's schema.Unverified
Stability & Change Management0
- Stability not yet verified: not enough scan history yet (needs a 30-day window).Unverified
Tool Coverage0
- Tool coverage not yet verified: we couldn't read the endpoint's tools.Unverified
Tool Safety–
Not scored yet: our latest scan of this component recorded no findings here. It fills in the next time we score it.
Capabilities0
- Capabilities not yet verified: we couldn't read the endpoint's capabilities.Unverified
Unverified: 4 categories
Categories scored 0 because we could not verify them: authentication we do not have, an unreachable endpoint, or not enough scan history. We only credit what we can confirm.
How do I install the xyz.tenzro/tenzro-chainlink MCP server?
xyz.tenzro/tenzro-chainlink is a hosted endpoint at https://chainlink-mcp.tenzro.xyz/mcp, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
remote · chainlink-mcp.tenzro.xyz
claude mcp add --transport http xyz-tenzro-tenzro-chainlink 'https://chainlink-mcp.tenzro.xyz/mcp'
{
"mcpServers": {
"xyz-tenzro-tenzro-chainlink": {
"url": "https://chainlink-mcp.tenzro.xyz/mcp"
}
}
} {
"servers": {
"xyz-tenzro-tenzro-chainlink": {
"type": "http",
"url": "https://chainlink-mcp.tenzro.xyz/mcp"
}
}
} [mcp_servers.xyz-tenzro-tenzro-chainlink] url = "https://chainlink-mcp.tenzro.xyz/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"xyz-tenzro-tenzro-chainlink": {
"type": "remote",
"url": "https://chainlink-mcp.tenzro.xyz/mcp",
"enabled": true
}
}
} openclaw mcp add xyz-tenzro-tenzro-chainlink --url 'https://chainlink-mcp.tenzro.xyz/mcp' --transport streamable-http
mcp_servers:
xyz-tenzro-tenzro-chainlink:
url: "https://chainlink-mcp.tenzro.xyz/mcp" {
"McpServers": {
"xyz-tenzro-tenzro-chainlink": {
"Transport": "http",
"Url": "https://chainlink-mcp.tenzro.xyz/mcp"
}
}
} assistant mcp add xyz-tenzro-tenzro-chainlink -t streamable-http -u 'https://chainlink-mcp.tenzro.xyz/mcp'
{
"mcpServers": {
"xyz-tenzro-tenzro-chainlink": {
"type": "http",
"url": "https://chainlink-mcp.tenzro.xyz/mcp"
}
}
} The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.
Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 24 Aug 26 −14
The score moved with no change recorded against any check. We would rather say so than guess.
- 19 Aug 26 −13
The score moved with no change recorded against any check. We would rather say so than guess.
- 18 Aug 26 −14
The score moved with no change recorded against any check. We would rather say so than guess.
- 17 Aug 26 −13
The score moved with no change recorded against any check. We would rather say so than guess.
- 16 Aug 26 −14
The score moved with no change recorded against any check. We would rather say so than guess.
- 11 Aug 26 0
- We updated how we score, so this day's move reflects our rubric, not a change to the server See what changed → functional
- 9 Aug 26 0
- Endpoint reachability: reachable → unreachable ▼ security
- HSTS header: fail → unverified ▼ security
- Stability: 0.43 → unverified ▼ security
- HTTPS: pass → unverified ▼ security
- TLS certificate: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Authorization: Authorisation not yet verified: we couldn't confirm whether this endpoint requires it. security
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- First check of Schema quality: unverified functional
- 8 Aug 26 +1
No change was recorded against any check on this day. Stability & Change Management went from 40 to 43. That category is still filling its 30-day observation window: 12 days of observed history at the previous scan, 13 at this one. The score rises as the window fills, whether or not the server changes.
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 24 Aug 2026 · Probed https://chainlink-mcp.tenzro.xyz/mcp
TLS unreached
Background: What to check on a remote MCP endpoint →
DNSSEC insecure
Validation of chainlink-mcp.tenzro.xyz. — Not signed
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| xyz. | present | 3599, 18130 | 8, 8 | Verified |
| tenzro.xyz. | absent | Unsigned (proven) parent-signed NSEC/NSEC3 proves an unsigned delegation |
Authentication Inconclusive
We could not reach the endpoint well enough to judge its authorisation posture.
| Result | Inconclusive |
|---|
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://chainlink-mcp.tenzro.xyz/mcp | Unreachable | ||
| http (plaintext) | http://chainlink-mcp.tenzro.xyz/mcp | Inconclusive | 502 |
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
ccip_get_fee ~238
Estimate CCIP cross-chain messaging fee via Router.getFee() eth_call. Returns the native fee required to send a CCIP message from the source chain to the destination chain. Supports Ethereum, Base, and Arbitrum as source chains.
| Name | Type | Req | Description |
|---|---|---|---|
| data_hex | string|null | – | Hex-encoded data payload to send (with or without 0x prefix). Use '0x' or '' for empty |
| dst_chain_selector | string | yes | Destination CCIP chain selector (uint64). E.g. 4949039107694359620 for Arbitrum |
| fee_token | string|null | – | Fee token address. Use zero address (0x0000...0000) for native gas token payment |
| receiver | string | yes | Hex-encoded receiver address on the destination chain (with or without 0x prefix) |
| src_chain_id | string | yes | Source chain identifier: 'ethereum', 'base', 'arbitrum', or a chain ID number |
| token_amounts | array|null | – | Token amounts to transfer as JSON array of {token, amount} objects. Empty array for message-only |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_get_lanes ~98
Get available CCIP lanes (source-destination chain pairs) from the Chainlink REST API. Optionally filter by source or destination chain selector.
| Name | Type | Req | Description |
|---|---|---|---|
| dest_chain_selector | string|null | – | Optional destination chain selector to filter lanes |
| environment | string|null | – | Environment: 'mainnet' or 'testnet'. Defaults to 'mainnet' |
| source_chain_selector | string|null | – | Optional source chain selector to filter lanes |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_get_rate_limits ~129
Get CCIP Token Pool rate limiter configuration for a specific remote chain. Returns inbound and outbound rate limits (tokens per second, capacity) that control the maximum cross-chain transfer throughput. Part of CCIP v1.6+ security model.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string|null | – | Chain the pool is deployed on: 'ethereum', 'base', 'arbitrum'. Defaults to 'ethereum' |
| pool_address | string | yes | Token pool contract address (hex with 0x prefix) |
| remote_chain_selector | string | yes | Remote chain selector (uint64) to query rate limits for |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_get_supported_chains ~61
Get supported chains for Chainlink CCIP from the Chainlink REST API. Returns chain names, selectors, and network details.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | string|null | – | Environment: 'mainnet' or 'testnet'. Defaults to 'mainnet' |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_get_supported_tokens ~60
Get supported tokens for Chainlink CCIP from the Chainlink REST API. Returns token addresses, symbols, and supported lanes.
| Name | Type | Req | Description |
|---|---|---|---|
| environment | string|null | – | Environment: 'mainnet' or 'testnet'. Defaults to 'mainnet' |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_get_token_pool ~115
Get information about a CCIP Token Pool contract. Returns the pool type (Lock/Release or Burn/Mint), the token address, supported remote chains, and rate limiter config. Token Pools are part of the Cross-Chain Token (CCT) standard in CCIP v1.6+.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string|null | – | Chain: 'ethereum', 'base', 'arbitrum'. Defaults to 'ethereum' |
| pool_address | string | yes | Token pool contract address (hex with 0x prefix) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_send_message ~211
Send a CCIP cross-chain message via Router.ccipSend(). Submits a signed transaction to the source chain's CCIP Router to send a message and/or tokens to the destination chain. Returns the transaction hash.
| Name | Type | Req | Description |
|---|---|---|---|
| data_hex | string|null | – | Hex-encoded data payload |
| dst_chain_selector | string | yes | Destination CCIP chain selector (uint64) |
| fee_token | string|null | – | Fee token address (zero address for native). Defaults to native |
| gas_limit | integer|null | – | Gas limit for execution on destination chain (default: 200000) |
| receiver | string | yes | Hex-encoded receiver address on the destination chain |
| sender_key | string | yes | Hex-encoded sender private key for signing the transaction |
| src_chain_id | string | yes | Source chain: 'ethereum', 'base', 'arbitrum', or chain ID |
| token_amounts | array|null | – | Token amounts to transfer as JSON array of {token, amount} objects |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ccip_track_message ~153
Track the execution status of a CCIP cross-chain message on the destination chain. Calls OffRamp.getExecutionState() to check message delivery status. States: 0=UNTOUCHED (not yet processed), 1=IN_PROGRESS (being executed), 2=SUCCESS (delivered), 3=FAILURE (execution failed).
| Name | Type | Req | Description |
|---|---|---|---|
| dst_chain_id | string | yes | Destination chain: 'ethereum', 'base', 'arbitrum', or chain ID |
| message_id | string | yes | CCIP message ID (64-byte hex, with or without 0x prefix) |
| offramp_address | string | yes | OffRamp contract address on the destination chain (hex with 0x prefix) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_broadcast_signed_tx ~147
Broadcast a pre-signed Ethereum transaction (CCIP Router.ccipSend, VRF requestRandomWords, Functions request, etc.) to the chosen chain via eth_sendRawTransaction. Returns the resulting transaction hash as plain text. Sign the tx externally — typically built via ccip_send_message or vrf_request_random and signed with the operator key.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Source chain to broadcast on: 'ethereum', 'base', 'arbitrum' |
| signed_tx_hex | string | yes | Pre-signed RLP-encoded transaction as hex (0x-prefixed). Build via ccip_send_message → external signer, or vrf_request_random → external signer. |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_check_upkeep ~130
Check if a Chainlink Automation upkeep needs to be performed by dry-running checkUpkeep(bytes) on the target contract. Returns whether upkeep is needed and the perform data.
| Name | Type | Req | Description |
|---|---|---|---|
| chain_id | string|null | – | Chain to query: 'ethereum', 'arbitrum', 'base', or chain ID. Defaults to 'ethereum' |
| check_data | string|null | – | Hex-encoded check data to pass to checkUpkeep (with or without 0x prefix). Defaults to empty |
| contract_address | string | yes | Address of the Automation-compatible contract (hex with 0x prefix) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_estimate_functions_cost ~132
Estimate the cost of a Chainlink Functions request. Calculates the approximate LINK cost based on callback gas limit, gas price, and the Functions premium. Returns the estimated total cost in LINK.
| Name | Type | Req | Description |
|---|---|---|---|
| callback_gas_limit | integer | yes | Callback gas limit for the fulfillment |
| chain_id | string|null | – | Chain to query. Defaults to 'ethereum' |
| gas_price_wei | string|null | – | Gas price in wei for cost estimation |
| router_address | string | yes | Functions Router address (hex with 0x prefix) |
| subscription_id | string | yes | Functions subscription ID (uint64) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_get_price ~205
Get the latest price from a Chainlink data feed by calling AggregatorV3Interface.latestRoundData(). Returns the price, round ID, timestamps, and decimal precision. Common feeds on Ethereum: ETH/USD = 0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419, BTC/USD = 0xF4030086522a5bEEa4988F8cA5B36dbC97BeE88c.
| Name | Type | Req | Description |
|---|---|---|---|
| chain_id | string|null | – | Chain to query: 'ethereum', 'arbitrum', 'base', or a chain ID. Defaults to 'ethereum' |
| feed_address | string | yes | Chainlink data feed contract address (hex with 0x prefix). E.g. 0x5f4eC3Df9cbd43714FE2740f5E3616155c5b8419 for ETH/USD |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_get_subscription ~84
Get Chainlink Functions subscription details including balance, owner, authorized consumers, and request counts. Queries the Functions Router contract on-chain.
| Name | Type | Req | Description |
|---|---|---|---|
| chain_id | string|null | – | Chain to query. Defaults to 'ethereum' |
| router_address | string | yes | Functions Router address (hex with 0x prefix) |
| subscription_id | string | yes | Subscription ID (uint64) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_get_upkeep_info ~105
Get information about a Chainlink Automation upkeep from the registry. Returns the upkeep target, balance, gas limit, and execution status.
| Name | Type | Req | Description |
|---|---|---|---|
| chain_id | string|null | – | Chain to query: 'ethereum', 'arbitrum', 'base', or chain ID. Defaults to 'ethereum' |
| registry_address | string | yes | Automation Registry address (hex with 0x prefix) |
| upkeep_id | string | yes | Upkeep ID (uint256 as decimal string) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
chainlink_list_feeds ~63
List popular Chainlink data feed addresses for a given chain. Returns feed pairs, addresses, and decimal precision.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string|null | – | Optional chain to list feeds for: 'ethereum', 'arbitrum', 'base'. Defaults to 'ethereum' |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ds_get_report ~218
Get a Data Streams report for a specific feed ID. Data Streams provide sub-second, low-latency market data for crypto, forex, equities, and commodities. Returns benchmarkPrice, bid, ask, timestamps, and fee info. Common feed IDs: ETH/USD = 0x000359843a543ee2fe414dc14c7e7920ef10f4372990b79d6361cdc0dd1ba782, BTC/USD = 0x00037da06d56d083fe599397a4769a042d63aa73dc4ef57709d31e9971a5b439.
| Name | Type | Req | Description |
|---|---|---|---|
| feed_id | string | yes | Data Streams feed ID (hex string, e.g. '0x000359843a543ee2fe414dc14c7e7920ef10f4372990b79d6361cdc0dd1ba782' for ETH/USD) |
| timestamp | integer|null | – | Unix timestamp to query (optional — latest if omitted) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
ds_list_feeds ~86
List available Chainlink Data Streams feeds. Returns feed IDs, pairs, and asset classes (crypto, forex, equities, commodities). Data Streams provide sub-second latency market data — distinct from the slower on-chain Data Feeds.
| Name | Type | Req | Description |
|---|---|---|---|
| asset_class | string|null | – | Filter by asset class: 'crypto', 'forex', 'equities', 'commodities' (optional) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
por_get_reserve ~241
Read a Chainlink Proof of Reserve feed to verify asset reserves onchain. Uses the same AggregatorV3Interface as price feeds but returns reserve amounts instead of prices. Well-known PoR feeds on Ethereum: WBTC = 0xa81FE04086865e63E12dD3776978E49DEEa2ea4e, USDC = 0x9a177Bb065A0636C7972C6D27Abcd4B1e5EDb65c, TUSD = 0x478f4c42b877c697C4b19E396865D5437Ef4E08B.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string|null | – | Chain: 'ethereum'. Defaults to 'ethereum' |
| feed_address | string | yes | Proof of Reserve feed contract address (hex). Well-known: WBTC=0xa81FE04086865e63E12dD3776978E49DEEa2ea4e, USDC=0x9a177Bb065A0636C7972C6D27Abcd4B1e5EDb65c |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
por_list_feeds ~39
List well-known Chainlink Proof of Reserve feeds. Returns feed addresses, asset names, and descriptions for verifying reserve backing of wrapped/synthetic assets.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
vrf_get_subscription ~95
Get VRF v2.5 subscription details from the VRFCoordinatorV2_5 contract. Returns balance, owner, authorized consumers, and pending requests. Supports Ethereum, Arbitrum, and Base.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string|null | – | Chain: 'ethereum', 'arbitrum', 'base'. Defaults to 'ethereum' |
| subscription_id | string | yes | VRF subscription ID (uint256 as decimal string) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
vrf_request_random ~221
Build transaction calldata for a VRF v2.5 random words request. Returns the hex-encoded calldata for VRFCoordinatorV2_5.requestRandomWords(). The caller must sign and submit the transaction from a consumer contract. VRF v2.5 supports payment in LINK or native token.
| Name | Type | Req | Description |
|---|---|---|---|
| callback_gas_limit | integer|null | – | Callback gas limit (default: 100000) |
| chain | string|null | – | Chain: 'ethereum', 'arbitrum', 'base'. Defaults to 'ethereum' |
| key_hash | string | yes | VRF key hash for the gas lane (hex, 32 bytes) |
| native_payment | boolean|null | – | Pay in native token instead of LINK (default: false) |
| num_words | integer|null | – | Number of random words to request (default: 1, max: 500) |
| request_confirmations | integer|null | – | Number of block confirmations before fulfillment (default: 3) |
| subscription_id | string | yes | VRF subscription ID (uint256 as decimal string) |
| Name | Type | Req | Description |
|---|---|---|---|
| result | – | yes | Underlying response payload verbatim. |
No examples provided.
What is the xyz.tenzro/tenzro-chainlink MCP server?
xyz.tenzro/tenzro-chainlink is an MCP server listed in the public MCP registry as xyz.tenzro/tenzro-chainlink. Chainlink tools over MCP: CCIP cross-chain, data feeds, data streams, VRF, proof of reserve. This page covers its hosted endpoint (https://chainlink-mcp.tenzro.xyz/mcp).
Is the xyz.tenzro/tenzro-chainlink MCP server safe to use?
xyz.tenzro/tenzro-chainlink scores 0 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.
What tools does the xyz.tenzro/tenzro-chainlink MCP server expose?
xyz.tenzro/tenzro-chainlink exposes 21 tools: ccip_get_fee, ccip_get_lanes, ccip_get_rate_limits, ccip_get_supported_chains, ccip_get_supported_tokens, and 16 more. Their descriptions and schemas cost roughly 2,831 tokens of context every time the server is loaded.
Does the xyz.tenzro/tenzro-chainlink MCP server require authentication?
Its publisher declares no required credentials for xyz.tenzro/tenzro-chainlink. We have not been able to confirm that against the live endpoint, and a server can require authorisation without declaring it here.
Is the xyz.tenzro/tenzro-chainlink MCP server still maintained?
xyz.tenzro/tenzro-chainlink has been unreachable for long enough that we treat it as dead, and its score is pinned to zero. We last reached this channel on 8 August 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.