Evm MCP Server
Blockchain services for 60+ EVM networks including automated ABI fetching.
Data last scanned today · Reviewed today
Overview
The Evm MCP Server provides a unified interface for AI agents to interact with over 60 Ethereum-compatible networks. By leveraging the Model Context Protocol, it enables seamless reading of blockchain state, including balances and transaction history, while supporting native, ERC20, ERC721, and ERC1155 token standards across mainnets and testnets. The server simplifies complex interactions through intelligent ABI fetching from block explorers and built-in ENS name resolution, allowing agents to use human-readable identifiers instead of raw addresses. With 22 distinct tools and 10 pre-defined AI prompts, it streamlines tasks ranging from querying block data to executing token transfers.
Our verdict
With a security score of 63/100, this server is categorized as medium risk. The lack of a read-only mode, which grants every installation full write access, is a significant consideration for developers handling sensitive assets. While it benefits from being maintained by an official organization and having a lean codebase with only four direct dependencies, users should exercise caution given that its authentication methods have not yet been editorially reviewed.
- Supports over 60 different EVM-compatible networks.
- Integrated ENS resolution for human-readable addresses.
- Automated ABI fetching simplifies smart contract interaction.
- Lean implementation with only four direct dependencies.
- Lacks a read-only mode for restricted operations.
- Authentication methods have not been editorially reviewed.
- No OAuth support detected for managing permissions.
- Missing a configured project homepage link.
Setup
{
"mcpServers": {
"evm-mcp-server": {
"args": [
"-y",
"@mcpdotdirect/evm-mcp-server"
],
"command": "npx"
}
}
}Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows), then restart Claude Desktop. Some servers require API keys or tokens as environment variables — check the project's README and add an "env" object if needed.
- No read-only mode — running this grants full read/write access.
- No built-in authentication — anyone with access to this config can invoke every tool it exposes.
Tools
| Tool | Description | Risk |
|---|---|---|
| get_wallet_address | Get the address of the configured wallet (from EVM_PRIVATE_KEY) | low |
| get_chain_info | Get network information | low |
| get_supported_networks | List all supported EVM networks | low |
| get_gas_price | Get current gas prices on a network | low |
| resolve_ens_name | Resolve ENS name to address | low |
| lookup_ens_address | Reverse lookup address to ENS name | low |
| get_block | Get block data | low |
| get_latest_block | Get latest block data | low |
| get_transaction | Get transaction details | low |
| get_transaction_receipt | Get transaction receipt with logs | low |
Compatibility
| Client | Local | Docker | Remote | Read-only |
|---|---|---|---|---|
| Claude Desktop | ||||
| Cursor | ||||
| VS Code | ||||
| Windsurf | ||||
| ChatGPT |
Frequently asked questions
›What software do I need to run this server?
You must have Bun 1.0.0 or higher (recommended) or Node.js 20.0.0 or higher installed.
›Do I need to manually provide ABIs to interact with smart contracts?
No, the server features automatic ABI fetching from block explorers, allowing agents to interact with contracts without manual ABI input.
›Can I use human-readable names instead of Ethereum addresses?
Yes, the server natively supports ENS resolution, so you can use names like 'vitalik.eth' for any tool that accepts an Ethereum address.
›How can I configure the wallet for transaction signing?
The server supports configuration via a Private Key or a BIP-39 Mnemonic with HD path support.
›Which EVM networks are supported?
The server supports over 60 networks, including 34 mainnets like Ethereum, Optimism, and Base, as well as 26 testnets.
Badge
Maintain this server? Add the live badge to your README.