
ChainRPC MCP
io.github.John0n1Published by GitHub account John0n1v2.0.2Updated Oct 24, 2026
Safety-first EVM and Bitcoin RPC tools for balances, contracts, blocks, and transactions
The publisher's own server: Agent.chain.tokyo Address Contracts
Overview
A safety-first MCP server that gives an assistant read access to EVM chains and Bitcoin for balances, blocks, transactions, contracts, logs and fees, with gated
- What you can do
- Read EVM chain state: block number, chain info, native balances, blocks, transactions and receipts, event logs, and gas estimation for unsigned transactions. Read and call smart contracts by encoding calldata or a function from its ABI and decoding the result. Read Bitcoin data: blockchain info, blocks, raw transactions, transaction outputs, address UTXO balances and fee estimates, and decode raw transactions. Broadcast already-signed EVM or Bitcoin transactions, only when explicitly enabled and after a literal confirmation phrase.
- When to use it
- Useful when an assistant needs to inspect on-chain state on Ethereum-compatible chains or Bitcoin, check balances, decode transactions or contracts, or estimate fees. Suited to evaluation and public-chain reads through the hosted endpoint, or to production use through your own deployment and RPC endpoints.
- Requirements
- Runs as a hosted remote endpoint or locally via npx with Node.js 20 or newer. EVM_RPC_URL and BITCOIN_RPC_URL are optional and default to public PublicNode endpoints; optional HTTP Basic credentials use EVM_RPC_USERNAME/EVM_RPC_PASSWORD and BITCOIN_RPC_USERNAME/BITCOIN_RPC_PASSWORD. Outbound network access to the RPC endpoints is required. Broadcasts stay off unless ALLOW_EVM_BROADCAST or ALLOW_BITCOIN_BROADCAST is enabled.
Installation
In SourceWeft
- Open ChainRPC MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Use with an agent
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/io.github.John0n1%2Fchainrpc-mcp/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Other MCP clients
Add this to your client's mcpServers config.
{
"mcpServers": {
"chainrpc": {
"type": "http",
"url": "https://chainrpc-mcp.mitander.io/mcp"
}
}
}README
ChainRPC MCP
JSON-RPC MCP server for EVM chains and Bitcoin
[npm] [CI] [Node.js] [License: MIT]
A safety-first Model Context Protocol server for EVM chains and Bitcoin.
ChainRPC MCP gives agents a focused set of tools for balances, blocks, transactions, logs, smart-contract reads, gas and fee estimation, and transaction decoding. It can submit already-signed transactions, but only behind explicit, disabled-by-default safety gates. It never accepts private keys, manages wallets, or signs transactions.
- Two ecosystems, one server: EVM JSON-RPC and Bitcoin Core-compatible RPC.
- Useful without an account: defaults to public Ethereum and Bitcoin endpoints from PublicNode.
- Bring your own infrastructure: replace either endpoint and optionally use HTTP Basic authentication.
- Official transports: local stdio and stateful Streamable HTTP through the official MCP SDK.
- Constrained by design: no arbitrary RPC passthrough and no wallet, admin, debug, miner, or node-management methods.
Choose how to connect
Hosted, read-only service
The public endpoint is available now:
For clients that accept a remote Streamable HTTP server:
Health and upstream status:
The hosted service is shared, rate-limited, and intentionally has both broadcast features disabled. It is suitable for evaluation and public-chain reads, but has no availability SLA. Requests are visible to the service operator and upstream RPC providers; use your own deployment for sensitive queries or production workloads.
Local stdio server
Requirements: Node.js 20 or newer.
Example client configuration:
The RPC variables are optional; they are shown to make the defaults explicit.
Available tools
EVM
Any HTTP(S) EVM JSON-RPC endpoint can be used, so the same tools work with Ethereum mainnet, testnets, and compatible chains. Results always come from the configured endpoint; callers should inspect evm_getChainInfo before making chain-specific assumptions.
Bitcoin
Bitcoin Core is not an address indexer. btc_getAddressBalance uses scantxoutset, which reports currently unspent, confirmed outputs—not history or unconfirmed balance. Only one scan can run on a node at a time, so a shared endpoint may return scan already in progress. Use a dedicated node for frequent address scans.
Safety model
ChainRPC MCP treats transaction submission as an exceptional operation:
- Broadcasting is off unless
ALLOW_EVM_BROADCASTorALLOW_BITCOIN_BROADCASTis explicitly enabled. - The server accepts only serialized, already-signed transaction bytes.
- Every broadcast call requires the literal confirmation
I understand this broadcasts a real transaction. - EVM submission checks the endpoint and transaction chain IDs, rejects unprotected legacy transactions, recovers the signer, and runs
eth_estimateGasfirst. - Bitcoin submission checks the endpoint network and requires
testmempoolacceptto approve the transaction. - Submission requests are never automatically retried. A timeout can leave broadcast status ambiguous.
- Read inputs use strict schemas; upstream concurrency, timeout, retry, and response sizes are bounded.
- HTTP mode validates hosts and browser origins, supports bearer authentication, caps request bodies, and binds to loopback by default.
RPC responses are untrusted external data. A compromised endpoint can lie about chain state, censor requests, or observe queries. Independently verify high-value decisions, ideally against infrastructure you control.
See SECURITY.md for vulnerability reporting and the complete trust boundary.
Configuration
Copy example.env to .env when running from a checkout.
GETH_URL remains a deprecated compatibility alias for EVM_RPC_URL. Credentials embedded in RPC URLs are rejected; use the matching username and password variables.
Self-host with Streamable HTTP
Start a loopback-only HTTP server:
To bind beyond loopback, explicitly set the host allowlist and authentication:
Terminate TLS at a trusted reverse proxy, preserve the original Host header, and keep the origin private. A bearer token is useful for a single trusted client; use an OAuth-capable gateway and network access policy for multi-user deployments.
Docker defaults to stdio. Override the command for HTTP:
Production service topology:
Deployment units, nginx configuration, hardening details, and operating commands are in docs/OPERATIONS.md.
Development
Useful commands:
The detailed design and remediation record is in docs/AUDIT.md. Contributions are welcome through issues and pull requests. Please use a private GitHub security advisory—not a public issue—for suspected vulnerabilities.
License
Source: README.md at commit 707c39e
Tools
0Version history
1- v2.0.2LatestSep 16, 2026
Score
85% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 daysRequired25 pts
- Auth declaredRequired10 pts
- Tools listedRequired15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Other Chain integrations
Agent.chain.tokyo Address Contracts
tokyo.chain.agentOfficial publisher
Lets an assistant rent a Japan mailing address for an agent: browse locations and floors, create a 55 USDC payment intent, and track contracts and events.

Zovo Countdown Chain
Published by GitHub account theluckystrike
Generates a printable countdown calendar to one event — month pages, paper-chain strips or tear-off cards — plus an ICS reminder file.

DeviceChain
io.devicechain
Read-only MCP tools for a self-hosted DeviceChain IoT instance, letting an assistant inspect devices, telemetry and alarms.

BridgePilot — cross-chain route quotes
Published by GitHub account ert1981
BridgePilot — cross-chain route quotes's hosted MCP server; no sign-in required; Streamable HTTP; 1 tool.
BrainChain
com.usebrainchain
Lets an assistant post a task to BrainChain, where an AI decision model hires a frontier model or worker, grades the result, and pays only if it passes.