EVM MCP Server
Server Configuration
Describes the environment variables required to run the server.
Name | Required | Description | Default |
---|---|---|---|
No arguments |
Schema
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 |
Tools
Functions exposed to the LLM to take actions
Name | Description |
---|---|
get_chain_info | Get information about an EVM network |
resolve_ens | Resolve an ENS name to an Ethereum address |
get_supported_networks | Get a list of supported EVM networks |
get_block_by_number | Get a block by its block number |
get_latest_block | Get the latest block from the EVM |
get_balance | Get the native token balance (ETH, MATIC, etc.) for an address |
get_erc20_balance | Get the ERC20 token balance of an Ethereum address |
get_token_balance | Get the balance of an ERC20 token for an address |
get_transaction | Get detailed information about a specific transaction by its hash. Includes sender, recipient, value, data, and more. |
get_transaction_receipt | Get a transaction receipt by its hash |
estimate_gas | Estimate the gas cost for a transaction |
transfer_eth | Transfer native tokens (ETH, MATIC, etc.) to an address |
transfer_erc20 | Transfer ERC20 tokens to another address |
approve_token_spending | Approve another address (like a DeFi protocol or exchange) to spend your ERC20 tokens. This is often required before interacting with DeFi protocols. |
transfer_nft | Transfer an NFT (ERC721 token) from one address to another. Requires the private key of the current owner for signing the transaction. |
transfer_erc1155 | 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_token | Transfer ERC20 tokens to an address |
read_contract | 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_contract | Write data to a smart contract by calling a state-changing function. This modifies blockchain state and requires gas payment and transaction signing. |
is_contract | Check if an address is a smart contract or an externally owned account (EOA) |
get_token_info | 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_erc20 | Get ERC20 token balance for an address |
get_nft_info | Get detailed information about a specific NFT (ERC721 token), including collection name, symbol, token URI, and current owner if available. |
check_nft_ownership | Check if an address owns a specific NFT |
get_erc1155_token_uri | 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_balance | 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_balance | 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_key | Get the EVM address derived from a private key |