# ChainRPC MCP (npm · chainrpc-mcp)

Safety-first EVM and Bitcoin RPC tools for balances, contracts, blocks, and transactions

- Trust score: 65/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: no
- Last scored: 2026-08-20

## Components

- remote · `chainrpc-mcp.mitander.io`: 62/100, [markdown](https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp.md), [page](https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp)
- npm · `chainrpc-mcp`: 65/100 (this document), [markdown](https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp-2.md), [page](https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp-2)

## Channel facts

- Registry: `npm`
- Package: `chainrpc-mcp`
- Version: `2.0.2`
- Transport: `stdio`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-08-20.

- **Supply Chain Security**: 98/100
  - No malware found by supply-chain analysis.
  - No known CVEs affecting this package version or its production dependencies.
  - No install/post-install scripts declared.
  - 30 of 112 dependencies flagged as unhealthy.
- **Provenance & Transparency**: 48/100
  - Source repository is publicly reachable at the declared URL.
  - Provenance check failed: no build-provenance attestation is published.
  - Clear OSI-approved license (MIT).
  - Actively maintained (last published 0 days ago).
  - Publishes a security disclosure policy (SECURITY.md).
- **Schema Quality & AI Usability**: 70/100
  - AI-judged instruction clarity (good).
  - Tool/resource definitions use about 768 tokens (~42/item across 18 items; 18 tools + 0 resources), lean.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 0/100
  - Stability not yet verified: not enough scan history yet (needs a 30-day window).
- **Tool Coverage**: 69/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 6% of tool parameters carry a description.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

**Unverified: 1 category.** A category scored 0 because we could not verify it: a data source with nothing on this package, evidence we could not reach, or a check we could not run. We only credit what we can confirm.

## Install

### Claude

```bash
claude mcp add john0n1-chainrpc-mcp -- npx -y chainrpc-mcp
```

### Codex

```bash
codex mcp add john0n1-chainrpc-mcp -- npx -y chainrpc-mcp
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "john0n1-chainrpc-mcp": {
      "type": "local",
      "command": [
        "npx",
        "-y",
        "chainrpc-mcp"
      ],
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add john0n1-chainrpc-mcp --command npx --arg -y --arg chainrpc-mcp
```

### Hermes

```yaml
mcp_servers:
  john0n1-chainrpc-mcp:
    command: "npx"
    args: ["-y", "chainrpc-mcp"]
```

### Other

```json
{
  "mcpServers": {
    "john0n1-chainrpc-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "chainrpc-mcp"
      ]
    }
  }
}
```

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-08-19 (score 65)

First indexed and scored.

## MCP tools (18)

### `evm_getBlockNumber` (~23 tokens)

Return the latest EVM block number from the configured endpoint.

### `evm_getChainInfo` (~22 tokens)

Return the EVM chain ID and upstream client version.

### `evm_getNativeBalance` (~56 tokens)

Read an address native-token balance at an EVM block without requiring a wallet.

Input parameters:

- `address` (string, required)
- `block` (string|number): Block number or latest, earliest, pending, safe, or finalized

### `evm_getBlock` (~37 tokens)

Read an EVM block by number, tag, or block hash.

Input parameters:

- `block` (required)
- `includeTransactions` (boolean)

### `evm_getTransaction` (~29 tokens)

Read an EVM transaction and its receipt by transaction hash.

Input parameters:

- `hash` (string, required)

### `evm_call` (~65 tokens)

Run a read-only eth_call with pre-encoded calldata. This never submits a transaction.

Input parameters:

- `block` (string|number)
- `data` (string)
- `from`
- `to` (string, required)
- `valueWei` (string|number)

### `evm_readContract` (~73 tokens)

Encode, execute, and decode a read-only smart-contract function using a supplied JSON ABI.

Input parameters:

- `abi` (array, required): JSON ABI entries needed for this function
- `address` (string, required)
- `args` (array)
- `block` (string|number)
- `functionName` (string, required)

### `evm_estimateTransaction` (~29 tokens)

Estimate gas for an unsigned EVM transaction. Values are accepted as decimal or hex quantities.

### `evm_getLogs` (~25 tokens)

Read EVM event logs using an address/topics filter and bounded block range.

### `evm_broadcastTransaction` (~64 tokens)

Preflight and broadcast an already-signed EVM transaction. Disabled unless ALLOW_EVM_BROADCAST=true; never signs or stores keys.

Input parameters:

- `confirmation` (string, required)
- `expectedChainId` (integer, required)
- `rawTransaction` (string, required)

### `btc_getBlockchainInfo` (~23 tokens)

Return Bitcoin network, chain height, sync, and pruning information.

### `btc_getAddressBalance` (~49 tokens)

Scan the Bitcoin UTXO set for an address and return its confirmed spendable outputs. This is not address history and shared RPC nodes may reject concurrent scans.

Input parameters:

- `address` (string, required)

### `btc_getBlock` (~33 tokens)

Read a Bitcoin block by height or hash with selectable verbosity.

Input parameters:

- `block` (required)
- `verbosity` (integer)

### `btc_getTransaction` (~45 tokens)

Read a raw Bitcoin transaction by txid. A block hash can make confirmed transaction lookup more reliable.

Input parameters:

- `blockHash` (string)
- `txid` (string, required)

### `btc_getTxOut` (~54 tokens)

Read an unspent Bitcoin transaction output. Returns null when the output is spent or unknown.

Input parameters:

- `includeMempool` (boolean)
- `txid` (string, required)
- `vout` (integer, required)

### `btc_estimateFee` (~39 tokens)

Estimate a Bitcoin fee rate for confirmation within a target number of blocks.

Input parameters:

- `confirmationTarget` (integer, required)
- `mode` (string)

### `btc_decodeRawTransaction` (~27 tokens)

Decode a serialized Bitcoin transaction without broadcasting it.

Input parameters:

- `rawTransaction` (string, required)

### `btc_broadcastTransaction` (~75 tokens)

Validate and broadcast an already-signed Bitcoin transaction. Disabled unless ALLOW_BITCOIN_BROADCAST=true; never signs or stores keys.

Input parameters:

- `confirmation` (string, required)
- `expectedNetwork` (string, required)
- `maxFeeRateBtcPerKvB` (number)
- `rawTransaction` (string, required)

## Diagnostics

Captured diagnostic sections: Provenance, Dependencies. The full working is on the page: https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp-2#diagnostics

## Score history

- 2026-08-20: 65
- 2026-08-19: 65

## Links

- npm package: https://www.npmjs.com/package/chainrpc-mcp
- Socket report: https://socket.dev/npm/package/chainrpc-mcp
- Repository: https://github.com/John0n1/chainrpc-mcp
- Changelog RSS feed: https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp-2.xml
- Changelog JSON feed: https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp-2.json
- HTML version of this page: https://verifymcp.io/servers/john0n1-chainrpc-mcp/chainrpc-mcp-2
