This EVM MCP Server provides comprehensive access to Ethereum Virtual Machine blockchain data through JSON-RPC methods, enabling blockchain analytics, smart contract interactions, and network monitoring across any EVM-compatible chain.
Core Capabilities:
Blockchain Data Queries: Retrieve latest block numbers, detailed block information, transaction details by hash, transaction receipts, account balances at any block height, transaction counts (nonces), contract bytecode, and storage values at specific positions.
Smart Contract Interactions: Execute read-only contract calls (eth_call), estimate gas costs (eth_estimateGas), and send pre-signed raw transactions (eth_sendRawTransaction).
Event & Log Monitoring: Query historical event logs (eth_getLogs) with flexible filtering by block range, contract addresses, and event topics/signatures.
Network Information: Access current gas prices, chain IDs, network versions, client versions, listening status, and peer counts.
Utility Functions: Compute Keccak-256 hashes (web3_sha3) and support multiple block references (latest, earliest, pending, specific numbers).
Universal Compatibility: Works with Ethereum (Mainnet, Sepolia, Goerli), Polygon, Arbitrum, Optimism, BNB Smart Chain, Avalanche, Fantom, and any custom EVM network. Compatible with Infura, Alchemy, QuickNode, local nodes (Geth, Erigon), public RPC endpoints, and any JSON-RPC provider. Configurable via RPC_URL and CHAIN_ID environment variables.
Supports Alchemy as an RPC node provider for accessing Ethereum and other EVM-compatible blockchain networks, enabling blockchain queries and operations through Alchemy's infrastructure.
Supports BNB Smart Chain (Binance Smart Chain) mainnet and testnet networks for blockchain operations and data queries through EVM JSON-RPC methods.
Provides comprehensive access to Ethereum Virtual Machine (EVM) JSON-RPC methods for querying blockchain data, checking balances, executing contract calls, estimating gas, retrieving transaction information, and monitoring network events across any EVM-compatible network.
Enables interaction with Fantom Opera blockchain network through EVM-compatible JSON-RPC methods for accessing blockchain data and executing operations.
Provides access to Optimism Layer 2 blockchain networks through EVM-compatible JSON-RPC methods for blockchain data queries and transaction operations.
Enables interaction with Polygon blockchain networks (mainnet and testnet) through EVM JSON-RPC methods for querying transactions, balances, smart contracts, and network data.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@EVM MCP Servercheck the balance of 0x742d35Cc6634C0532925a3b8D6Ac6e2F0C4C9B7C"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
β½ EVM MCP Server
Complete EVM JSON-RPC access in your AI workflow. Query any EVM-compatible network (Ethereum, Polygon, Arbitrum, Optimism, BSC, and more) through any node provider. Works with Infura, Alchemy, QuickNode, local nodes, and more.
An MCP (Model Context Protocol) server that provides comprehensive access to Ethereum Virtual Machine (EVM) JSON-RPC methods for AI coding environments like Cursor and Claude Desktop.
Why Use EVM MCP?
π Any EVM Network β Ethereum, Polygon, Arbitrum, Optimism, BSC, Avalanche, and more
π Any Node Provider β Infura, Alchemy, QuickNode, local nodes, or custom RPC
π 20+ RPC Methods β Complete access to blockchain data, transactions, and contracts
β‘ Easy Setup β One-click install in Cursor or simple manual setup
π§ Flexible Configuration β Works with any JSON-RPC compatible endpoint
Quick Start
Ready to interact with EVM blockchains? Install in seconds:
Install in Cursor (Recommended):
Or install manually:
Features
π’ Blockchain Data
eth_blockNumberβ Get latest block numbereth_getBalanceβ Get account balanceeth_getTransactionCountβ Get transaction count (nonce)eth_getBlockByNumberβ Get block informationeth_getTransactionByHashβ Get transaction detailseth_getTransactionReceiptβ Get transaction receipteth_getCodeβ Get contract bytecodeeth_getStorageAtβ Get storage value
π Transactions
eth_callβ Execute contract calleth_estimateGasβ Estimate gas for transactioneth_sendRawTransactionβ Send signed transactioneth_gasPriceβ Get current gas price
π Events & Logs
eth_getLogsβ Get event logs
π Network
eth_chainIdβ Get chain IDnet_versionβ Get network versionnet_listeningβ Check if listeningnet_peerCountβ Get peer count
π Web3
web3_clientVersionβ Get client versionweb3_sha3β Hash data with Keccak-256
Installation
Cursor (One-Click)
Click the install link above or use:
Manual Installation
Requirements: Node.js 18+ and npm
Claude Desktop
Add to claude_desktop_config.json:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Restart Claude Desktop after configuration.
Configuration
RPC URL Examples
Supported Networks
Ethereum: Mainnet, Sepolia, Goerli
Polygon: Mainnet, Mumbai
Arbitrum: One, Sepolia
Optimism: Mainnet, Sepolia
BNB Smart Chain: Mainnet, Testnet
Avalanche: C-Chain
Fantom: Opera
Any EVM-compatible chain
Usage Examples
Get Latest Block Number
Query the current block number:
Get Account Balance
Check an address balance:
Get Transaction Details
View transaction information:
Call Smart Contract
Execute a contract call:
Get Event Logs
Query contract events:
Use Cases
Blockchain Analytics β Query transaction data, balances, and contract states
DeFi Applications β Monitor token balances, transaction receipts, and smart contract calls
NFT Projects β Track transfers, metadata, and collection statistics
Development Tools β Debug transactions, estimate gas, and test smart contracts
Monitoring β Watch for specific events and transaction patterns
Research β Analyze blockchain data across multiple EVM networks
Technical Details
Built with: Node.js, TypeScript, MCP SDK, Ethers.js
Dependencies: @modelcontextprotocol/sdk, ethers, zod
Platforms: macOS, Windows, Linux
Environment Variables:
RPC_URL(required): Any EVM-compatible RPC endpointCHAIN_ID(optional): Chain ID for the network (defaults to 1)
Contributing
β If this project helps you, please star it on GitHub! β
Contributions welcome! Please open an issue or submit a pull request.
License
MIT License β see LICENSE.md for details.
Support
If you find this project useful, consider supporting it:
β‘ Lightning Network
βΏ Bitcoin: bc1ptzvr93pn959xq4et6sqzpfnkk2args22ewv5u2th4ps7hshfaqrshe0xtp
Ξ Ethereum/EVM: 0x42ea529282DDE0AA87B42d9E83316eb23FE62c3f