MCP Server for 60+ EVM Networks
Enable AI agents to access 60+ EVM networks via the MCP server, using a unified interface with 22 tools and 10 AI-guided prompts.
npx -y @mcpdotdirect/evm-mcp-serverOverview
The MCP Server for 60+ EVM Networks is a Model Context Protocol (MCP) implementation that exposes a unified suite of blockchain tools to AI agents. It wraps read/write RPCs, contract interactions, token operations and signing flows for more than 60 EVM-compatible chains (34 mainnets + 26 testnets). The server delivers automatic ABI fetching, ENS resolution, and wallet signing utilities so agents can operate across networks without custom per-chain code.
For developer-driven AI workflows, this server removes repetitive plumbing: agents call a consistent set of MCP tools and prompts instead of juggling different explorer APIs, contract ABIs, or chain-specific endpoints. That makes it easier to prototype wallet analysis, token transfers, contract reads/writes, meta-transactions, or SIWE flows with the same interface across chains.
Features
- Multi-chain support: 60+ EVM-compatible networks (mainnets + testnets)
- Unified MCP interface: 22 tools and 10 AI-guided prompts for discovery and workflows
- Automatic ABI fetching from block explorers (Etherscan APIs where available)
- ENS resolution for all address inputs (accepts human-readable names)
- Read access: blocks, transactions, balances, token holdings, events
- Write access: native transfers, ERC20/ERC721/ERC1155 transfers, contract calls
- Wallet support: private key or BIP-39 mnemonic (HD path)
- Message signing: personal sign, EIP-712, SIWE, permit signatures, meta-tx payloads
- Gas estimation, transaction trace/receipt reporting, and decoded logs
- AI-friendly prompts to guide complex tasks (transaction prep, contract exploration, approval audits)
Installation / Configuration
Prerequisites: Bun (recommended) or Node.js. Clone the repo and install dependencies:
# clone
# install (Bun recommended)
# or with npm/yarn
Create a .env file (example below). Important variables:
- PORT — server port
- PRIVATE_KEY or MNEMONIC — wallet credentials for signing (choose one)
- ETHERSCAN_API_KEY — API key for ABI fetching across compatible explorers
- RPC_OVERRIDES — optional per-chain RPC URLs (format depends on config)
Example .env:
PORT=3000
PRIVATE_KEY=0xYOUR_PRIVATE_KEY
MNEMONIC="word1 word2 ... word12"
ETHERSCAN_API_KEY=your_etherscan_api_key
Start the server:
# development
# or with npm
# production build & run (example)
The server will listen on the configured PORT and expose MCP-compatible tools and prompts.
Available Tools (overview)
The server exposes 22 tools covering common blockchain operations. They are grouped by capability:
- Chain & Node
- chain.info (chainId, blockNumber, RPCs)
- block.get (by number/hash/latest)
- Account & Balances
- address.resolve (ENS → address)
- balance.get (native + token balances)
- token.list (holdings summary)
- Tokens (ERC20 / ERC721 / ERC1155)
- token.metadata (name, symbol, decimals, totalSupply)
- token.balanceOf
- token.transfer
- token.approve / allowance
- nft.metadata / nft.transfer / nft.ownerOf
- erc1155.balance / transfer
- Contracts & Transactions
- contract.read (view/pure calls)
- contract.write (state-changing calls with ABI auto-fetch)
- tx.prepare (estimate gas, build unsigned tx)
- tx.send (sign & broadcast)
- tx.status (receipt, decoded logs)
- Signing & Auth
- sign.personal
- sign.eip712
- sign.siwe
- sign.permit
Plus 10 higher-level AI prompts that guide agents through workflows like “prepare & send transfer”, “inspect wallet activity”, “explore contract”, “audit approvals”, and “diagnose failed transaction”.
Note: tools accept ENS names for address inputs and will resolve automatically.
Available Resources
The server exposes MCP resources (metadata) describing chain lists, supported RPCs, and tool schemas so agents can discover capabilities programmatically. Use the resource endpoints to enumerate supported networks and the tool signatures before invoking actions.
Use Cases (concrete examples)
- Cross-chain balance aggregation: an agent queries balance.get for a wallet across Ethereum, Polygon, and BSC via a single interface and returns a combined USD estimate.
- Automated ERC20 transfer with ABI discovery: an agent detects a token contract (ENS or address), fetches its ABI automatically, prepares a transfer, estimates gas, signs (using configured private key/mnemonic), and broadcasts the transaction.
- Wallet analysis and alerting: run an approval-audit prompt to list all ERC20 approvals > X for an address, then generate recommended revoke transactions.
- Contract interaction exploration: an AI-guided prompt that discovers public functions, reads view methods, and prepares safe write calls with warnings based on decoded event logs.
- SIWE login flow: generate a SIWE message, have the wallet sign it via sign.siwe, and verify the assertion for authentication workflows.
Example: preparing a balance check (pseudo JSON request to MCP server)
Response will include native balance and basic token holdings (with token metadata resolved).
Project Structure (quick)
- src/ — TypeScript source (tools, prompts, MCP adapters)
- config/ — chain metadata & RPC mappings
- scripts/ — dev/start/build helpers
- tests/ — unit/integration tests
- .env.example — environment variables template
Security Considerations
- Keep PRIVATE_KEY / MNEMONIC out of source control and use vaults for production secrets.
- Limit ETHERSCAN/API