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
Google Analytics MCP Server: AI-Powered Analytics for GA4
Google Analytics MCP server enables AI models to interact with Google Analytics 4 for reports, user behavior analysis, event tracking, and real-time data access.
Google Drive MCP Server
Google Drive MCP servers enable AI models to interact with Google Drive, providing capabilities for file search, content retrieval, and seamless integration with cloud storage.
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.