EVM MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Server capabilities have not been inspected yet.
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| get_chain_infoB | Get information about an EVM network |
| resolve_ensB | Resolve an ENS name to an Ethereum address |
| get_supported_networksB | Get a list of supported EVM networks |
| get_block_by_numberC | Get a block by its block number |
| get_latest_blockC | Get the latest block from the EVM |
| get_balanceA | Get the native token balance (ETH, MATIC, etc.) for an address |
| get_erc20_balanceC | Get the ERC20 token balance of an Ethereum address |
| get_token_balanceC | Get the balance of an ERC20 token for an address |
| get_transactionA | Get detailed information about a specific transaction by its hash. Includes sender, recipient, value, data, and more. |
| get_transaction_receiptC | Get a transaction receipt by its hash |
| estimate_gasC | Estimate the gas cost for a transaction |
| transfer_ethB | Transfer native tokens (ETH, MATIC, etc.) to an address |
| transfer_erc20C | Transfer ERC20 tokens to another address |
| approve_token_spendingA | Approve another address (like a DeFi protocol or exchange) to spend your ERC20 tokens. This is often required before interacting with DeFi protocols. |
| transfer_nftA | Transfer an NFT (ERC721 token) from one address to another. Requires the private key of the current owner for signing the transaction. |
| transfer_erc1155B | Transfer ERC1155 tokens to another address. ERC1155 is a multi-token standard that can represent both fungible and non-fungible tokens in a single contract. |
| transfer_tokenC | Transfer ERC20 tokens to an address |
| read_contractA | Read data from a smart contract by calling a view/pure function. This doesn't modify blockchain state and doesn't require gas or signing. |
| write_contractA | Write data to a smart contract by calling a state-changing function. This modifies blockchain state and requires gas payment and transaction signing. |
| is_contractB | Check if an address is a smart contract or an externally owned account (EOA) |
| get_token_infoA | Get comprehensive information about an ERC20 token including name, symbol, decimals, total supply, and other metadata. Use this to analyze any token on EVM chains. |
| get_token_balance_erc20B | Get ERC20 token balance for an address |
| get_nft_infoA | Get detailed information about a specific NFT (ERC721 token), including collection name, symbol, token URI, and current owner if available. |
| check_nft_ownershipB | Check if an address owns a specific NFT |
| get_erc1155_token_uriB | Get the metadata URI for an ERC1155 token (multi-token standard used for both fungible and non-fungible tokens). The URI typically points to JSON metadata about the token. |
| get_nft_balanceA | Get the total number of NFTs owned by an address from a specific collection. This returns the count of NFTs, not individual token IDs. |
| get_erc1155_balanceB | Get the balance of a specific ERC1155 token ID owned by an address. ERC1155 allows multiple tokens of the same ID, so the balance can be greater than 1. |
| get_address_from_private_keyB | Get the EVM address derived from a private key |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| explore_block | Explore information about a specific block |
| analyze_transaction | Analyze a specific transaction |
| analyze_address | Analyze an EVM address |
| interact_with_contract | Get guidance on interacting with a smart contract |
| explain_evm_concept | Get an explanation of an EVM concept |
| compare_networks | Compare different EVM-compatible networks |
| analyze_token | Analyze an ERC20 or NFT token |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| ethereum_chain_info | |
| default_latest_block | |
| supported_networks |
TDQS
Scored across 28 tools
The tool set has clear distinctions for most operations, but there are notable overlaps that could cause confusion. For example, get_token_balance and get_erc20_balance appear to serve the same purpose, and transfer_erc20 and transfer_token are redundant. However, descriptions help clarify specific use cases, such as differentiating between ERC20, ERC721, and ERC1155 token types.
Most tools follow a consistent verb_noun pattern (e.g., get_balance, transfer_erc20, read_contract), making them predictable and readable. Minor deviations exist, such as check_nft_ownership and is_contract, which use different verb styles but still fit the overall naming convention without causing significant confusion.
With 28 tools, the count feels heavy for an EVM server, as many tools could be consolidated or generalized. While the domain is broad, the high number may overwhelm agents and lead to inefficiency. A more streamlined set of 15-20 tools would better balance coverage and usability.
The tool surface provides comprehensive coverage for EVM operations, including token interactions, contract reads/writes, and blockchain queries. Minor gaps exist, such as missing tools for advanced DeFi operations or event listening, but core workflows like transfers, balances, and contract interactions are well-covered, allowing agents to handle most common tasks effectively.