ChainRay
REMOTE · CHAINRAY.ONLINE · 2 COMPONENTS · SCANNED OCT 4
Multi-chain on-chain intelligence for AI agents through a public remote MCP server.
Available components
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 Security83
- The endpoint's TLS certificate is valid, in date, and uses a strong key. View diagnostics → Pass
- No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one. See how to fix → View diagnostics → Partial
- HTTPS is enforced; there's no plaintext access path. View diagnostics → Pass
- The HSTS (Strict-Transport-Security) header is present. View diagnostics → Pass
- DNSSEC is configured correctly; the domain's records validate against the full chain to the root. View diagnostics → Pass
Transport & Reachability100
- Verified streamable-http transport via a live MCP handshake. View diagnostics → Pass
Schema Quality & AI Usability83
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 12187 tokens (~154/item across 79 items; 79 tools + 0 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management7
- Stability observed for 2 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
- Structured output schemas are declared (100% of tools); any adoption earns full credit.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- We read all 79 captured tool definition(s), and no name or description among them implies an irreversible operation.Pass
- An AI judge read all 79 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the ChainRay MCP server?
ChainRay is a hosted endpoint at https://chainray.online/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 · chainray.online
claude mcp add --transport http online-chainray-chainray 'https://chainray.online/mcp'
{
"mcpServers": {
"online-chainray-chainray": {
"url": "https://chainray.online/mcp"
}
}
} {
"servers": {
"online-chainray-chainray": {
"type": "http",
"url": "https://chainray.online/mcp"
}
}
} [mcp_servers.online-chainray-chainray] url = "https://chainray.online/mcp"
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"online-chainray-chainray": {
"type": "remote",
"url": "https://chainray.online/mcp",
"enabled": true
}
}
} openclaw mcp add online-chainray-chainray --url 'https://chainray.online/mcp' --transport streamable-http
mcp_servers:
online-chainray-chainray:
url: "https://chainray.online/mcp" {
"McpServers": {
"online-chainray-chainray": {
"Transport": "http",
"Url": "https://chainray.online/mcp"
}
}
} assistant mcp add online-chainray-chainray -t streamable-http -u 'https://chainray.online/mcp'
{
"mcpServers": {
"online-chainray-chainray": {
"type": "http",
"url": "https://chainray.online/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.
- 4 Oct 26 +51
- Authorization: unverified → partial ▲ security
- Injection markers: unverified → pass ▲ security
- Transport: fail → pass ▲ security
- Tool “agent.reputation” rewrote its description, which is the text the model reads security
- Tool “analyze.risk_dashboard” rewrote its description, which is the text the model reads security
- Tool “chain.block” rewrote its description, which is the text the model reads security
- Tool “chain.bridge.flow” rewrote its description, which is the text the model reads security
- Tool “chain.compare” rewrote its description, which is the text the model reads security
- Tool “chain.health” rewrote its description, which is the text the model reads security
- Tool “defi.aggregator” rewrote its description, which is the text the model reads security
- Tool “defi.health” rewrote its description, which is the text the model reads security
- Tool “defi.liquidity” rewrote its description, which is the text the model reads security
- Tool “gas.history” rewrote its description, which is the text the model reads security
- Tool “gas.optimize” rewrote its description, which is the text the model reads security
- Tool “gas.predict” rewrote its description, which is the text the model reads security
- Tool “gas.tracker” rewrote its description, which is the text the model reads security
- Tool “market.dex_trades” rewrote its description, which is the text the model reads security
- Tool “market.overview” rewrote its description, which is the text the model reads security
- Tool “market.solver_feed” rewrote its description, which is the text the model reads security
- Tool “monitor.watch.address” rewrote its description, which is the text the model reads security
- Tool “monitor.watch.diff” rewrote its description, which is the text the model reads security
- Tool “security.contract.scan” rewrote its description, which is the text the model reads security
- Tool “security.mev.shield” rewrote its description, which is the text the model reads security
- Tool “security.sandwich” rewrote its description, which is the text the model reads security
- Tool “token.holders” rewrote its description, which is the text the model reads security
- Tool “token.risk” rewrote its description, which is the text the model reads security
- Tool “token.supply” rewrote its description, which is the text the model reads security
- Tool “util.context_brief” rewrote its description, which is the text the model reads security
- Tool “util.intent_router” rewrote its description, which is the text the model reads security
- Tool “util.stream_info” rewrote its description, which is the text the model reads security
- Tool “util.verify_proof” rewrote its description, which is the text the model reads security
- Tool “wallet.credit_score” rewrote its description, which is the text the model reads security
- Schema quality: 136 → 154 ▼ functional
- Endpoint reachability: not serving MCP → reachable ▲ functional
- Tool coverage: unverified → 100 ▲ functional
- Schema quality: unverified → 100 ▲ functional
- Stability: unverified → 0.07 ▲ functional
- MCP protocol: unverified → pass ▲ functional
- 3 Oct 26 −50
- Endpoint reachability: reachable → not serving MCP ▼ security
- Authorization: partial → unverified ▼ security
- Tool safety: pass → unverified ▼ security
- Transport: pass → fail ▼ security
- Schema quality: 100 → unverified ▼ functional
- Capabilities: pass → unverified ▼ functional
- Tool coverage: 100 → unverified ▼ functional
- 2 Oct 26 76
First indexed and scored.
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 4 Oct 2026 · Probed https://chainray.online/mcp
TLS valid
Negotiated TLS 1.3 with TLS_AES_128_GCM_SHA256 .
| Subject | Issuer | Valid from | Valid until | Key | Signature | Serial |
|---|---|---|---|---|---|---|
| CN=chainray.online | CN=YE2,O=Let's Encrypt,C=US | 1 Oct 2026 | 30 Dec 2026 | ECDSA 256 | ECDSA-SHA384 | 656d54bea70a6b97cad24dead9c9f445a3c |
| SANs: *.chainray.online, chainray.online | ||||||
| CN=YE2,O=Let's Encrypt,C=US (CA) | CN=Root YE,O=ISRG,C=US | 3 Sept 2025 | 2 Sept 2028 | ECDSA 384 | ECDSA-SHA384 | 4df3b15dd6c0784c507cd37b58e6f115 |
| CN=Root YE,O=ISRG,C=US (CA) | CN=ISRG Root X2,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | ECDSA-SHA384 | 872165fc34b6e5fba8add5b3705fb53a |
| CN=ISRG Root X2,O=Internet Security Research Group,C=US (CA) | CN=ISRG Root X1,O=Internet Security Research Group,C=US | 13 May 2026 | 2 Sept 2032 | ECDSA 384 | SHA256-RSA | 6c8f1dc727c7117f7baf853ac980f9cd |
Background: What to check on a remote MCP endpoint →
DNSSEC secure
Validation of chainray.online. — Secure
| Zone | DS | Keys | Algorithms | Outcome |
|---|---|---|---|---|
| . | trust_anchor | 20326, 38696 | 8, 8 | Verified |
| online. | present | 30961 | 13 | Verified |
| chainray.online. | present | 2371 | 13 | Verified |
| chainray.online. | Verified address RRset verified with the apex keys |
Authentication No authorisation required
The endpoint answered without asking for a token. Anyone who knows the URL can reach it.
| Result | No authorisation required |
|---|---|
| HTTP status | 200 |
| Header | Value |
|---|---|
| strict-transport-security | max-age=15552000; includeSubDomains; preload |
| content-security-policy | default-src 'self'; script-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline'; img-src 'self' data:; font-src 'self'; connect-src 'self'; frame-ancestors 'none'; base-uri 'self'; object-src 'none'; form-action 'self' |
| x-content-type-options | nosniff |
| x-frame-options | DENY |
| referrer-policy | strict-origin-when-cross-origin |
| permissions-policy | camera=(), microphone=(), geolocation=(), payment=() |
Background: How OAuth 2.1 works in the 2026 MCP spec →
Transports 2 probes
| Transport | URL | Outcome | Status | Location |
|---|---|---|---|---|
| streamable-http | https://chainray.online/mcp | Verified | 200 | |
| http (plaintext) | http://chainray.online/mcp | HTTPS enforced | 301 | https://chainray.online/mcp |
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 →
security.contract.events Contract Events ~189
Read recent event logs from any smart contract. Auto-decodes Transfer, Approval, Swap events. EVM only.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Contract address |
| blocks | number | – | Number of blocks to scan |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| blockRange | object | – | – |
| blocksScanned | number | yes | – |
| chain | string | yes | Blockchain queried |
| chainName | string | yes | – |
| contract | string | yes | Address |
| error | string | – | – |
| eventTypes | object | – | – |
| knownLabel | – | – | – |
| recentEvents | array | – | – |
| timestamp | number | yes | Unix timestamp ms |
| totalEvents | number | yes | – |
No examples provided.
security.contract.scan Contract Security Scan ~259
Security scan a smart contract via bytecode analysis. Detects selfdestruct, delegatecall, proxy patterns, ownership. No external APIs. EVM only. Scope: bytecode-level inspection of one EVM contract for proxy, ownership, delegatecall, and selfdestruct signals. Use this for 'what does the deployed code expose?'. It is not a token market/liquidity assessment (token.risk), a wallet score, or a full audit, and it does not judge a trade by itself.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Contract address to scan |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Address |
| chain | string | yes | Blockchain queried |
| findings | array | – | Security findings |
| riskLevel | string | – | Risk assessment |
| verified | boolean | – | Contract verification status |
No examples provided.
security.contract.verify Contract Verify ~56
Check if an address is a smart contract or an EOA wallet. Returns code size, balance, and classification.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address to verify |
| chain | string | – | EVM chain (default: base) |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address |
| balance | string | yes | – |
| balanceEth | – | – | – |
| balanceNative | string | yes | – |
| balanceUnit | string | yes | – |
| chain | string | yes | Blockchain queried |
| classification | string | yes | – |
| codeSize | string | yes | – |
| isContract | boolean | yes | – |
| isEOA | boolean | yes | – |
| nativeAsset | string | yes | – |
| nativeDecimals | number | yes | – |
| timestamp | number | yes | Unix timestamp ms |
| transactionCount | number | yes | – |
No examples provided.
security.mev.detect MEV Detection ~182
Quick sandwich attack detection. Analyzes 5 transactions before/after target in the same block. EVM only.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| txHash | string | yes | Transaction hash to analyze |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| detected | boolean | – | – |
| mevType | string | – | – |
| transactions | array | – | – |
No examples provided.
security.mev.intel Cross-DEX Spread Analysis ~181
Cross-protocol spread analysis with chain-specific DEX names, cost estimates, and market microstructure data. This is a heuristic estimate, not real-time mempool data.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| marketMicrostructure | – | – | – |
| opportunities | array | – | Cross-DEX arbitrage opportunities |
| recommendation | string | – | – |
| timestamp | number | – | Unix timestamp ms |
| type | string | – | – |
| viableCount | number | – | – |
No examples provided.
security.mev.shield Pre-Trade Safety ~294
Pre-trade safety analysis. Evaluates sandwich attack risk, recommends optimal slippage, and suggests mitigations before executing on-chain trades. Every agent should call this before swapping. ($0.05) Scope: composite pre-trade decision for a proposed swap, bridge, or liquidity action, focused on MEV exposure and slippage mitigation. Use this before acting. It is not a historical sandwich scan (security.sandwich), a token due-diligence report (token.risk), or a transaction executor.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | – | Trade action type |
| amountUsd | number | – | Trade size in USD |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| tokenIn | string | – | Input token symbol |
| tokenOut | string | – | Output token symbol |
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | – | – |
| chain | string | yes | Blockchain queried |
| note | string | – | – |
| safe | boolean | – | Whether trade is safe from MEV |
| status | string | – | – |
| warnings | array | – | – |
No examples provided.
security.sandwich Sandwich Scanner ~94
Batch scan an address's recent transactions for MEV sandwich attacks. Checks front-run + back-run patterns in surrounding transactions. Use to inspect historical sandwich patterns around an address. It is not a pre-trade protection decision; use security.mev.shield before a swap or liquidity action.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address to scan for sandwich attacks |
| chain | string | – | EVM chain (default: base) |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| count | number | – | – |
| sandwiches | array | – | Detected sandwich attacks |
No examples provided.
token.approval Token Approval Scanner ~179
Check a wallet's ERC20 token approvals for security risks. Flags unlimited approvals and risky spender contracts.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Wallet address to check approvals for |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| approvals | array | yes | – |
| available | boolean | – | – |
| chain | string | yes | Blockchain queried |
| highRiskCount | – | – | – |
| note | string | yes | – |
| riskLevel | string | – | – |
| status | string | – | – |
| timestamp | number | yes | Unix timestamp ms |
| totalApprovals | – | – | – |
| wallet | string | yes | Address |
No examples provided.
token.holders Token Holders ~230
Analyze top token holders by recent accumulation. Scans Transfer events to identify the largest net receivers of a token. Use for token-holder concentration and recent net accumulation. Do not use it for a wallet's portfolio or token price; use wallet.report for a wallet address or token.price for a token price.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | ERC20 token contract address |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| limit | integer | – | Number of top holders to return |
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | yes | – |
| blocksScanned | number | yes | – |
| chain | string | yes | Blockchain queried |
| error | – | – | – |
| note | string | yes | – |
| status | string | yes | – |
| timestamp | number | yes | Unix timestamp ms |
| token | object | yes | – |
| topHolders | array | yes | – |
| transfersAnalyzed | number | yes | – |
No examples provided.
token.price Token Price ~225
Get real-time token price. EVM: reads Uniswap V3 TWAP on-chain. Solana: reads Pyth oracle price account directly from chain. No external API.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | Blockchain to query. EVM chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, crono… |
| token | string | yes | Token symbol (e.g., 'eth', 'weth', 'sol', 'usdc') or contract address |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| confidence | string | – | Price confidence level |
| marketCap | string | – | Market capitalization |
| priceChange24h | string | – | 24h price change percentage |
| priceUsd | number | yes | Current USD price |
| source | string | yes | Price data source |
| timestamp | number | – | Unix timestamp ms |
| token | string | yes | Token symbol |
| volume24h | string | – | 24h trading volume |
No examples provided.
token.risk Token Risk Analysis ~300
Analyze a token's risk profile. EVM: checks contract verification, proxy status, ownership renouncement, liquidity. Solana: checks mint/freeze authority, supply, Metaplex metadata. Scope: asset-level token due diligence for a token contract or mint, combining market, liquidity, verification, and control signals. Use this when the question is 'is this token safe or liquid?'. It is not raw bytecode inspection (use security.contract.scan), a wallet's financial behavior (use wallet.credit_score), or a multi-signal address dashboard (use analyze.risk_dashboard).
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Token contract address (EVM hex) or mint address (Solana base58) |
| chain | string | – | Blockchain to query. EVM chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, crono… |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Address |
| chain | string | yes | Blockchain queried |
| factors | array | – | Risk factors identified |
| riskLevel | string | – | Overall risk level (low/medium/high/critical) |
| score | number | – | Risk score 0-100 |
No examples provided.
token.screener Token Screener ~194
Screen tokens by risk score and price. Returns sorted list of tokens matching criteria. EVM only.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| limit | integer | – | Max results |
| maxRisk | number | – | Maximum risk score (0-100, lower = safer) |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| filters | – | – | – |
| tokens | array | – | – |
No examples provided.
token.sentiment Token Sentiment ~207
On-chain sentiment oracle for any token/chain. Derives market sentiment from 5 on-chain signals: gas trend, gas level, momentum, chain health, ecosystem trend. No LLM. ($0.012)
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| token | string | – | Token symbol or 'native' for the chain gas asset |
| Name | Type | Req | Description |
|---|---|---|---|
| available | boolean | – | – |
| chain | string | – | Blockchain queried |
| note | string | – | – |
| score | number | yes | Sentiment score -1 to 1 |
| sentiment | string | yes | Sentiment direction (bullish/bearish/neutral/unavailable) |
| sources | array | – | – |
| status | string | – | – |
| token | string | yes | – |
No examples provided.
token.supply Token Supply ~96
Get ERC20 token total supply, decimals, symbol, and name from on-chain data. Use for contract-level supply metadata such as total supply, decimals, symbol, and name. It does not assess price, token safety, or holder concentration; use token.risk, token.price, or token.holders instead.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Token contract address |
| chain | string | – | EVM chain (default: base) |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| decimals | number | yes | – |
| name | string | yes | – |
| symbol | string | yes | – |
| timestamp | number | yes | Unix timestamp ms |
| token | string | yes | Address |
| totalSupply | string | yes | – |
| totalSupplyFormatted | string | yes | – |
| totalSupplyUsd | – | yes | – |
No examples provided.
token.trending Trending Tokens ~64
Get trending tokens by on-chain transfer volume. EVM only — ranks tokens by Transfer event count in recent blocks.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Solana is not supported for this endpoint. |
| hours | number | – | Lookback period in hours |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| tokens | array | – | – |
No examples provided.
token.unlock Token Unlock Schedule ~64
Read token vesting/unlock schedule from on-chain contracts. Supports LinearVesting, CliffVesting, and Timelock patterns.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Vesting/timelock contract address |
| chain | string | – | EVM chain (default: base) |
| Name | Type | Req | Description |
|---|---|---|---|
| beneficiary | string | – | – |
| chain | string | yes | Blockchain queried |
| contract | string | yes | Address |
| note | string | – | – |
| schedule | object | – | – |
| status | object | – | – |
| timestamp | number | yes | Unix timestamp ms |
| token | string | – | – |
| tokenSymbol | string | – | – |
| type | string | yes | – |
No examples provided.
util.context_brief Context Brief ~273
CaaS (Context as a Service): Aggregates real-time on-chain signals into a structured context brief for agent decision-making. Intents: swap (gas+price+whales), bridge (multi-chain gas), invest (yields+trending), monitor (whales+gas), general (all signals). No LLM cost — pure data. Use at the start of a swap, bridge, invest, monitor, or general workflow to collect the relevant signals in one structured brief. Use focused tools when the agent already knows the exact data it needs.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| intent | string | – | Agent's intent for the context brief |
| Name | Type | Req | Description |
|---|---|---|---|
| advisory | string | yes | – |
| chain | string | yes | Blockchain queried |
| intent | string | yes | – |
| oracleType | string | yes | – |
| recommendations | array | yes | – |
| signalCount | number | yes | – |
| signalQuality | string | yes | – |
| signals | object | yes | – |
| timestamp | number | yes | Unix timestamp ms |
No examples provided.
util.ens_resolve ENS Resolver ~56
Resolve ENS domain names to Ethereum addresses (forward) or addresses to ENS names (reverse). Also retrieves text records.
| Name | Type | Req | Description |
|---|---|---|---|
| nameOrAddress | string | yes | ENS name (e.g. vitalik.eth) or Ethereum address |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | – | Address |
| name | string | – | – |
| resolved | boolean | – | – |
No examples provided.
util.governance Governance ~175
Read on-chain DAO governance proposals. Shows last 5 proposals with vote counts and states. Supported: Ethereum, Arbitrum, Optimism.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| count | number | – | – |
| proposals | array | – | Governance proposals |
No examples provided.
util.intent_router Intent Router ~257
Natural language intent routing: describe what you want to know and ChainRay selects a focused set of data services. Counts toward the client hourly MCP capacity policy; use the paid HTTP API for per-request settlement. Use when the agent has a natural-language data question and needs ChainRay to select a focused route. For deterministic workflows, call the specific tool directly; paid HTTP requests are separate from this MCP capacity policy.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| query | string | yes | Natural language query: 'Is 0xABC safe?', 'Best yield on base?', 'Whale activity?' |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| detectedAddress | – | – | – |
| detectedToken | string | – | – |
| endpointsQueried | number | yes | – |
| query | string | yes | – |
| results | array | yes | – |
| successCount | number | yes | – |
| summary | string | yes | – |
| timestamp | number | – | Unix timestamp ms |
| type | string | – | – |
No examples provided.
util.multi_sig Multi-Sig Analysis ~180
Analyze a Gnosis Safe multi-sig wallet. Returns owners, threshold, nonce, modules, and security assessment.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Gnosis Safe contract address |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address |
| chain | string | yes | Blockchain queried |
| data | – | – | – |
| owners | array | – | – |
| threshold | number | – | – |
No examples provided.
util.stream_info Stream Info ~82
Get connection info for ChainRay real-time SSE streaming endpoints. These endpoints require a direct HTTP connection with text/event-stream Accept header, not MCP. Use this tool to learn how to connect. Use to discover the five real-time SSE streams and their connection requirements. The returned guidance is not a stream itself; connect directly over HTTP with the documented Accept and payment headers.
Input schema present but exposes no named parameters.
| Name | Type | Req | Description |
|---|---|---|---|
| count | number | – | – |
| streams | array | yes | Available SSE stream endpoints |
No examples provided.
util.verify_proof Verify Proof ~95
Verify data integrity: pass a dataHash from any ChainRay response's _proof field to verify that the data was produced by ChainRay. Use after receiving a ChainRay response with _proof.dataHash to verify its integrity. It verifies a supplied hash and does not independently validate the underlying blockchain data.
| Name | Type | Req | Description |
|---|---|---|---|
| hash | string | yes | 64-char SHA-256 hex hash from _proof.dataHash of any ChainRay response |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| inputHash | string | yes | – |
| proofVersion | string | – | – |
| signedBy | – | – | – |
| timestamp | number | – | Unix timestamp ms |
| type | string | – | – |
| verificationDetail | – | yes | – |
| verified | boolean | yes | Proof validity |
No examples provided.
util.workflow_brief Workflow Brief ~93
Multi-agent workflow intelligence. Generates differentiated context briefs for each agent role in a collaborative workflow (swap, risk, bridge, settle, monitor, analysis agents). ($0.05)
| Name | Type | Req | Description |
|---|---|---|---|
| agents | array | yes | Agent roles: swap-agent, risk-agent, bridge-agent, settle-agent, monitor-agent, analysis-agent |
| chains | array | – | Target EVM chains |
| intent | string | – | Workflow intent |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| steps | array | yes | – |
| workflow | object | yes | – |
No examples provided.
wallet.credit_score Credit Score ~264
Calculate an on-chain credit score (0-100) for any wallet. Factors: transaction history, native balance, token diversity, stablecoin holdings, DeFi activity. Returns grade (AAA to C). Scope: wallet-level financial behavior and activity score based on transaction history, balances, token diversity, stablecoins, and DeFi use. Use this for 'how active or creditworthy is this wallet?'. It is not Agent identity/reputation (agent.reputation), a registered card (agent.card.lookup), or token/contract risk.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Wallet address to score |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | yes | Blockchain queried |
| creditScore | number | yes | – |
| description | string | yes | – |
| factors | array | yes | – |
| grade | string | yes | – |
| maxScore | number | yes | – |
| methodology | string | yes | – |
| timestamp | number | yes | Unix timestamp ms |
| wallet | string | yes | Address |
No examples provided.
wallet.labels Address Intelligence ~50
Query the Address Intelligence database for labels on an address (whale, smart_money, etc). Labels are learned automatically from whale alerts and smart money tracking.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address to look up |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address |
| labels | array | – | Address intelligence labels |
| source | string | – | – |
No examples provided.
wallet.portfolio Portfolio Analysis ~176
Analyze a wallet's portfolio: total USD value, token breakdown, concentration analysis, and diversification score.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Wallet address to analyze |
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| analysis | object | yes | – |
| chain | string | yes | Blockchain queried |
| ethPrice | – | yes | – |
| holdings | array | yes | – |
| portfolio | object | yes | – |
| timestamp | number | yes | Unix timestamp ms |
| wallet | string | yes | Address |
No examples provided.
wallet.profile Wallet Profile ~208
Profile a wallet address. EVM: ETH balance, token count, activity labels (whale/active/dormant). Solana: SOL balance, SPL token holdings, activity classification.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Wallet address to profile |
| chain | string | – | Blockchain to query. EVM chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, crono… |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address |
| balance | string | – | Native token balance |
| chain | string | yes | Blockchain queried |
| classification | string | – | Wallet classification (whale/active/dormant) |
| lastActivity | string | – | Last activity timestamp |
| tokenCount | number | – | Number of token holdings |
No examples provided.
wallet.report Address Report ~52
Comprehensive address report combining wallet profile, credit score, token approvals, and recent interactions in one response.
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address to analyze |
| chain | string | – | EVM chain (default: base) |
| Name | Type | Req | Description |
|---|---|---|---|
| address | string | yes | Address |
| approvals | – | – | – |
| chain | string | yes | Blockchain queried |
| creditScore | – | – | – |
| interactions | – | – | – |
| profile | – | – | – |
No examples provided.
wallet.smart_money Smart Money Tracker ~165
Track smart money patterns by analyzing whale transfer activity. Identifies accumulation vs distribution behavior and market sentiment.
| Name | Type | Req | Description |
|---|---|---|---|
| chain | string | – | EVM chain only. Supported chains: base, ethereum, arbitrum, optimism, polygon, bsc, avalanche, zksync, linea, scroll, blast, mantle, gnosis, polygon-zkevm, mode, sei, celo, manta, taiko, fantom, cron… |
| Name | Type | Req | Description |
|---|---|---|---|
| addresses | array | – | Smart money addresses |
| chain | string | yes | Blockchain queried |
| count | number | – | – |
No examples provided.
What is the ChainRay MCP server?
ChainRay is an MCP server listed in the public MCP registry as online.chainray/chainray. Multi-chain on-chain intelligence for AI agents through a public remote MCP server. This page covers its hosted endpoint (https://chainray.online/mcp).
Is the ChainRay MCP server safe to use?
ChainRay scores 77 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 ChainRay MCP server expose?
ChainRay exposes 79 tools: monitor.whale.alerts, token.risk, gas.tracker, token.price, wallet.profile, and 74 more. Their descriptions and schemas cost roughly 12,187 tokens of context every time the server is loaded.
Does the ChainRay MCP server require authentication?
No. We connected to ChainRay without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.
Is the ChainRay MCP server still maintained?
ChainRay is still listed as active in the MCP registry. We last reached this channel on 4 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.