Chainlens

io.github.CloudCorpRecords由 GitHub 账号 CloudCorpRecords 发布v0.1.0更新于 Nov 3, 2026

Blockscout 浏览器数据:地址、区块、交易、代币、NFT 以及合约读取。

AI 翻译由 AI 模型根据下方的原文描述翻译,可能有误。

原文描述

Blockscout explorer data: addresses, blocks, transactions, tokens, NFTs, and contract reads.

已验证STDIO仅桌面

概览

Chainlens 的本地 MCP 服务;无需登录;STDIO。

暂无 AI 概览:以下信息来自注册中心条目和服务本身。

安装

在 SourceWeft 中

  1. 打开 控制台中的 Chainlens,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

chainlens

chainlens looks into EVM blockchains through Blockscout: what an address holds and has done, what is in a block or a transaction, which tokens and NFTs sit in a wallet, and what a verified contract's ABI and source say. Six chains are built in — Ethereum, Optimism, Gnosis, Polygon, Base, and Arbitrum One — and every answer comes from that chain's public Blockscout API v2 instance.

This package is a clean-room rebuild of the 16 tools documented in the README of the original Blockscout MCP server. The full documented set is covered; the wire mapping is described below, including the parts that are reconstructions.

How it talks to the service

No API key is required — public Blockscout instances are keyless:

bash
# Optional: send a key as an x-api-key headerexport BLOCKSCOUT_API_KEY="your key"# Optional: override the per-chain base URL for any chainexport BLOCKSCOUT_API_URL="https://eth.blockscout.com/api/v2"

The base URL is chosen per chain_id from a built-in map: 1 Ethereum, 10 Optimism, 100 Gnosis, 137 Polygon, 8453 Base, 42161 Arbitrum One. An unknown chain_id is an error naming the known chains (unless BLOCKSCOUT_API_URL is set, in which case the override wins for any chain).

Wire-format notes. The original server routes most data tools through its PRO gateway; this rebuild maps them onto the public Blockscout API v2 (/addresses/..., /blocks/..., /transactions/..., /smart-contracts/..., /search). A few shapings are documented reconstructions and first live-smoke checks:

  • ENS resolution uses mainnet /search?q=<name> and picks the first result carrying an address.
  • read_contract POSTs {function_name, args, abi} to /smart-contracts/{address}/methods/read — the least-proven mapping.
  • cursor arguments are forwarded as a cursor query parameter; Blockscout v2 paging normally uses next_page_params, so cursor support is a drift risk.
  • age_from / age_to (and methods / token) filters are applied client-side over the first fetched page, not forwarded upstream.

Two tools never touch the network: __unlock_blockchain_analysis__ returns local guidance plus the chain list, and get_chains_list filters that list locally by name, chain id, or currency substring.

Install

bash
npx @reneturcios/chainlens get_block_number '{"chain_id":"1"}'

Or run the container image:

bash
docker run -i ghcr.io/cloudcorprecords/chainlens

The container defaults to the MCP server. Pass CLI arguments to use it as a CLI instead.

CLI

The CLI mirrors the tools: one subcommand per tool, taking its arguments as a single JSON object.

bash
chainlens get_chains_list '{"query":"base"}'chainlens get_address_info '{"chain_id":"1","address":"0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"}'chainlens get_transactions_by_address '{"chain_id":"1","address":"0x...","age_from":"2026-10-01T00:00:00Z","age_to":"2026-10-26T23:59:59Z"}'chainlens get_block_info '{"chain_id":"8453","number_or_hash":"latest"}'chainlens --version

Exit codes: 0 on success, 1 on an API or validation error (the error names the problem), 2 for usage errors.

MCP server

One bin serves both faces. The mcp subcommand starts a stdio MCP server:

bash
npx -y @reneturcios/chainlens mcp

MCP client configuration:

json
{  "mcpServers": {    "chainlens": {      "command": "npx",      "args": ["-y", "@reneturcios/chainlens", "mcp"]    }  }}

Tools

ToolInputWhat it does
__unlock_blockchain_analysis__—Local: returns status, guidance, and the supported chain list.
get_chains_listqueryLocal: the 6-chain list filtered by a name/id/currency substring.
get_address_by_ens_namename (required)Resolve an ENS name via mainnet search; returns the first result with an address.
lookup_token_by_symbolchain_id, symbol (required)Search a chain; returns token-type items (fallback: all items).
get_contract_abichain_id, address (required)The ABI of a verified contract.
inspect_contract_codechain_id, address (required), file_nameSource code and creation status of a verified contract.
get_address_infochain_id, address (required)Address balance, type, and metadata.
get_tokens_by_addresschain_id, address (required), cursorToken balances held by an address.
get_block_numberchain_id (required), datetimeLatest block number and timestamp; echoes the requested datetime.
get_transactions_by_addresschain_id, address, age_from, age_to (required), methods, cursorAddress transactions; age and method filters applied client-side over the first page.
get_token_transfers_by_addresschain_id, address, age_from, age_to (required), token, cursorERC-20 transfers; age and token filters applied client-side over the first page.
nft_tokens_by_addresschain_id, address (required), cursorNFT tokens (ERC-721, ERC-1155) held by an address.
get_block_infochain_id, number_or_hash (required), include_transactionsBlock details by number or hash.
get_transaction_infochain_id, hash (required), include_raw_inputTransaction details by hash.
read_contractchain_id, address, abi, function_name (required), args (JSON string, default []), blockRead a contract function (reconstructed wire mapping, see notes).
direct_api_callchain_id, endpoint_path (required), query_params, method, json_body, cursorCall any Blockscout API v2 endpoint path directly.

Development

bash
npm installnpm run build   # tsc -> dist/npm test        # node test runner over test/*.test.ts, fake fetch only, no networknpm run dev     # run the CLI from source via tsx

License

MIT — see LICENSE.

来源:README.md,提交 e980653

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

1
  1. v0.1.0最新Nov 3, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分