Ethereum RPC MCP Server
A TypeScript MCP server that exposes the full Ethereum JSON-RPC surface, enabling AI assistants to query on-chain data, inspect contracts, and retrieve transaction details across EVM networks. Includes optional analytics and Zircuit-specific SLS methods.
Overview
The Ethereum RPC MCP Server provides a Model Context Protocol interface for standard Ethereum JSON-RPC. It lets AI assistants interact with EVM chains through familiar RPC calls like eth_blockNumber, eth_getBalance, and eth_getTransactionByHash. It supports any RPC endpoint and optionally enables analytics. When connected to Zircuit (Chain ID 48900), it automatically exposes SLS methods for quarantine checks.
Created by:
Developed by Phillip Kemper
Key Features
Full JSON-RPC Coverage
Supports standard Ethereum RPC calls for blocks, tx, accounts, logs
Multi-Chain RPC
Connect to any EVM endpoint (e.g., Ethereum, Zircuit) via URL
Zircuit SLS Methods
Expose zirc_isQuarantined and zirc_getQuarantined on Chain ID 48900
Optional Analytics
Enable request metrics and error reporting via analytics middleware
Available Tools
Quick Reference
| Tool | Purpose | Category |
|---|---|---|
eth_blockNumber | Get current block height | Network |
eth_getBalance | Get ETH balance for address | Account |
eth_getCode | Check if address is a contract | Contract |
eth_getTransactionByHash | Retrieve tx details by hash | Transaction |
zirc_isQuarantined | Check if tx is quarantined (Zircuit only) | Zircuit |
zirc_getQuarantined | List quarantined txs with optional filter | Zircuit |
Detailed Usage
eth_blockNumber▶
Get the latest block number.
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_blockNumber",
arguments: {}
});
Returns a hex quantity per JSON-RPC conventions.
eth_getBalance▶
Get the ETH balance of an address at the latest block.
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_getBalance",
arguments: {
address: "0x742d35Cc6634C0532925a3b844Bc454e4438f44e",
blockTag: "latest"
}
});
Returns a hex-encoded wei balance.
eth_getCode▶
Determine if an address hosts contract bytecode.
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_getCode",
arguments: {
address: "0x6B175474E89094C44Da98b954EedeAC495271d0F",
blockTag: "latest"
}
});
Non-empty bytecode indicates a smart contract.
eth_getTransactionByHash▶
Retrieve a transaction by its hash.
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_getTransactionByHash",
arguments: {
hash: "0x5c504ed432cb51138bcf09aa5e8a410dd4a1e204ef84bfed1be16dfba1b22060"
}
});
Returns full transaction fields per JSON-RPC spec.
zirc_isQuarantined▶
Check if a transaction is quarantined (Zircuit endpoints only).
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "zirc_isQuarantined",
arguments: {
hash: "0x..."
}
});
Available automatically when connected to Zircuit (Chain ID 48900).
Installation
{
"mcpServers": {
"ethereum_rpc": {
"command": "npx",
"args": [
"-y",
"ethereum-rpc-mpc",
"https://eth.llamarpc.com",
"Ethereum"
]
}
}
}
Custom RPC & Chain:
Replace the RPC URL and chain name with your target endpoint (e.g., https://mainnet.zircuit.com and Zircuit).
Add --analytics and --db-path /path/to/analytics.db to enable analytics.
Common Use Cases
1. Get Current Block Number
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_blockNumber",
arguments: {}
});
2. Check Address Balance
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_getBalance",
arguments: { address: "0x742d35Cc6634C0532925a3b844Bc454e4438f44e", blockTag: "latest" }
});
3. Is Address a Contract?
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_getCode",
arguments: { address: "0x6B175474E89094C44Da98b954EedeAC495271d0F", blockTag: "latest" }
});
4. Retrieve Transaction Details
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "eth_getTransactionByHash",
arguments: { hash: "0x5c504ed432cb51138bcf09aa5e8a410dd4a1e204ef84bfed1be16dfba1b22060" }
});
5. Zircuit Quarantine Status
use_mcp_tool({
server_name: "ethereum_rpc",
tool_name: "zirc_isQuarantined",
arguments: { hash: "0x..." }
});
Sources
Related Articles
Datadog MCP Server
Datadog MCP servers enable AI models to interact with Datadog observability: metrics, logs, traces, monitors, dashboards, incidents, and infrastructure insights.
AI/ML Tools MCP: Seamless Integration for AI Workflows
Integrate leading AI/ML frameworks, model management, and training pipelines with AI/ML Tools MCP. Enable robust model serving, training orchestration, and MLOps workflows.
Database and Storage MCP Servers
Explore seamless integration with leading database systems and storage solutions through our Database & Storage category. From SQL to NoSQL, cloud to local storage, these integrations enable robust data management, persistence, and scalability for your AI-powered applications.