MCP Crypto Wallet EVM
The MCP Crypto Wallet EVM server enables interaction with Ethereum and EVM-compatible blockchains through Claude. With this server, you can:
Create and manage wallets: Generate random wallets or create from private keys, mnemonics, or encrypted JSON; encrypt wallets
Access wallet properties: View addresses, public/private keys, mnemonics, balances
Perform blockchain operations: Check chain ID, gas prices, transaction counts, and call contract methods
Handle transactions: Send, sign, and populate transactions with custom gas fees and nonce values
Sign and verify: Create and verify signed messages and typed data (EIP-712)
Query blockchain data: Fetch blocks, transactions, receipts, contract code, storage data, and estimate gas
Use ENS features: Resolve names, lookup addresses, and interact with ENS resolvers
Get network information: Retrieve network details, block numbers, and fee data
Provides tools for Ethereum blockchain operations including wallet creation, balance checking, and transaction sending via the Ethereum Virtual Machine
Leverages ethers.js v5 to enable wallet management, blockchain interactions, and smart contract operations on EVM-compatible networks
Runs as a Node.js application to provide blockchain access capabilities
Click on "Deploy 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., "@MCP Crypto Wallet EVM what's the balance of my Ethereum wallet?"
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.
MCP Crypto Wallet EVM
This repository contains a Model Context Protocol (MCP) server that provides Claude with access to Ethereum and EVM-compatible blockchain operations via ethers.js v5. The server enables Claude to perform operations like creating wallets, checking balances, sending transactions, and interacting with smart contracts on EVM-compatible blockchains.
Overview
The MCP server exposes the following tools to Claude:
Wallet Creation and Management
wallet_create_random: Create a new wallet with a random private keywallet_from_private_key: Create a wallet from a private keywallet_from_mnemonic: Create a wallet from a mnemonic phrasewallet_from_encrypted_json: Create a wallet by decrypting an encrypted JSON walletwallet_encrypt: Encrypt a wallet with a password
Wallet Properties
wallet_get_address: Get the wallet addresswallet_get_public_key: Get the wallet public keywallet_get_private_key: Get the wallet private key (with appropriate security warnings)wallet_get_mnemonic: Get the wallet mnemonic phrase (if available)
Blockchain Methods
wallet_get_balance: Get the balance of the walletwallet_get_chain_id: Get the chain ID the wallet is connected towallet_get_gas_price: Get the current gas pricewallet_get_transaction_count: Get the number of transactions sent from this account (nonce)wallet_call: Call a contract method without sending a transaction
Transaction Methods
wallet_send_transaction: Send a transactionwallet_sign_transaction: Sign a transaction without sending itwallet_populate_transaction: Populate a transaction with missing fields
Signing Methods
wallet_sign_message: Sign a messagewallet_sign_typed_data: Sign typed data (EIP-712)wallet_verify_message: Verify a signed messagewallet_verify_typed_data: Verify signed typed data
Provider Methods
provider_get_block: Get a block by number or hashprovider_get_transaction: Get a transaction by hashprovider_get_transaction_receipt: Get a transaction receiptprovider_get_code: Get the code at an addressprovider_get_storage_at: Get the storage at a position for an addressprovider_estimate_gas: Estimate the gas required for a transactionprovider_get_logs: Get logs that match a filterprovider_get_ens_resolver: Get the ENS resolver for a nameprovider_lookup_address: Lookup the ENS name for an addressprovider_resolve_name: Resolve an ENS name to an address
Network Methods
network_get_network: Get the current network informationnetwork_get_block_number: Get the current block numbernetwork_get_fee_data: Get the current fee data (base fee, max priority fee, etc.)
Related MCP server: Base MCP Server
Prerequisites
Node.js (v16 or higher)
Claude Desktop application
Installation
Option 1: Using npx (Recommended)
You can run the MCP server directly without installation using npx:
npx @mcp-dockmaster/mcp-cryptowallet-evmThis will download and execute the server directly from npm.
Option 2: Manual Installation
Clone this repository:
git clone https://github.com/dcSpark/mcp-cryptowallet-evm.git cd mcp-cryptowallet-evmInstall dependencies:
npm ciBuild the project:
npm run build
Configuration
Environment Variables
The MCP server supports the following environment variables:
PRIVATE_KEY: Optional private key to use for wallet operations when no wallet is explicitly provided
Configure Claude Desktop
To configure Claude Desktop to use this MCP server:
Open Claude Desktop
Navigate to the Claude Desktop configuration file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Add the MCP server configuration:
{
"mcpServers": {
"mcp-cryptowallet-evm": {
"command": "npx",
"args": [
"@mcp-dockmaster/mcp-cryptowallet-evm"
]
}
}
}Alternatively, if you installed the package locally:
{
"mcpServers": {
"mcp-cryptowallet-evm": {
"command": "node",
"args": [
"/path/to/your/mcp-cryptowallet-evm/build/index.js"
]
}
}
}Running Locally
node build/index.jsUsage
Once configured, restart Claude Desktop. Claude will now have access to the Ethereum and EVM-compatible blockchain tools. You can ask Claude to:
Create a new wallet:
Can you create a new Ethereum wallet for me?Check a wallet balance:
What's the balance of the Ethereum wallet address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e?Send a transaction:
Can you help me send 0.1 ETH to 0x742d35Cc6634C0532925a3b844Bc454e4438f44e?
Claude will use the MCP server to interact with the Ethereum blockchain directly.
Development
Adding New Tools
To add new tools to the MCP server:
Define the tool in
src/tools.tsCreate a handler function in the appropriate handler file
Add the handler to the
handlersobject insrc/tools.ts
Building
npm run buildLicense
MIT
Available Tools
35 toolsnetwork_get_block_numberB
Get the current block number
Inputs: no named parameters.
network_get_fee_dataB
Get the current fee data (base fee, max priority fee, etc.)
Inputs: no named parameters.
network_get_networkC
Get the current network information
Inputs: no named parameters.
provider_estimate_gasC
Estimate the gas required for a transaction
Inputs: transaction (required).
provider_get_blockC
Get a block by number or hash
Inputs: blockHashOrBlockTag (required), includeTransactions.
provider_get_codeC
Get the code at an address
Inputs: address (required), blockTag.
provider_get_ens_resolverC
Get the ENS resolver for a name
Inputs: name (required).
provider_get_logsC
Get logs that match a filter
Inputs: filter (required).
provider_get_storage_atC
Get the storage at a position for an address
Inputs: address (required), position (required), blockTag.
provider_get_transactionC
Get a transaction by hash
Inputs: transactionHash (required).
provider_get_transaction_receiptC
Get a transaction receipt
Inputs: transactionHash (required).
provider_lookup_addressC
Lookup the ENS name for an address
Inputs: address (required).
provider_resolve_nameC
Resolve an ENS name to an address
Inputs: name (required).
wallet_callC
Call a contract method without sending a transaction
Inputs: transaction (required), blockTag, wallet.
wallet_create_mnemonic_phraseC
Create a mnemonic phrase
Inputs: length (required), locale.
wallet_create_randomC
Create a new wallet with a random private key
Inputs: locale, password, path.
wallet_encryptC
Encrypt a wallet with a password
Inputs: password (required), wallet (required), options.
wallet_from_encrypted_jsonC
Create a wallet by decrypting an encrypted JSON wallet
Inputs: json (required), password (required).
wallet_from_mnemonicC
Create a wallet from a mnemonic phrase
Inputs: mnemonic (required), locale, path.
wallet_from_private_keyC
Create a wallet from a private key
Inputs: privateKey (required).
wallet_get_addressC
Get the wallet address
Inputs: wallet.
wallet_get_balanceC
Get the balance of the wallet
Inputs: blockTag, wallet.
wallet_get_chain_idB
Get the chain ID the wallet is connected to
Inputs: wallet.
wallet_get_gas_priceC
Get the current gas price
Inputs: wallet.
wallet_get_private_keyC
Get the wallet private key (with appropriate security warnings)
Inputs: password, wallet.
wallet_get_public_keyC
Get the wallet public key
Inputs: wallet.
wallet_get_transaction_countC
Get the number of transactions sent from this account (nonce)
Inputs: blockTag, wallet.
wallet_populate_transactionC
Populate a transaction with missing fields
Inputs: transaction (required), wallet.
wallet_provider_setB
Set the provider URL. By default, the provider URL is set to the ETH mainnet or the URL set in the PROVIDER_URL environment variable.
Inputs: providerURL (required).
wallet_send_transactionC
Send a transaction
Inputs: transaction (required), wallet.
wallet_sign_messageC
Sign a message
Inputs: message (required), wallet.
wallet_sign_transactionB
Sign a transaction without sending it
Inputs: transaction (required), wallet.
wallet_sign_typed_dataC
Sign typed data (EIP-712)
Inputs: domain (required), types (required), value (required), wallet.
wallet_verify_messageC
Verify a signed message
Inputs: address (required), message (required), signature (required).
wallet_verify_typed_dataC
Verify signed typed data
Inputs: address (required), domain (required), signature (required), types (required), +1 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 35 tools
Most tools have distinct purposes with clear resource-action pairs (e.g., network_get_block_number vs. wallet_get_balance), but some overlap exists in provider and wallet operations that could cause confusion, such as provider_get_transaction and wallet_get_transaction_count both dealing with transaction data. Descriptions help clarify, but the boundaries between network, provider, and wallet categories are not always sharp.
Tool names follow a highly consistent verb_noun pattern with clear prefixes (network_, provider_, wallet_) that group related functions. All names use snake_case uniformly, making them predictable and easy to parse. This consistency aids in understanding the tool set's structure and purpose.
With 35 tools, the count is borderline high for a crypto wallet server, potentially overwhelming for agents. While the domain (EVM wallet operations) is broad, covering network, provider, and wallet functions, the number feels heavy and could be streamlined. It's not extreme, but it approaches the upper limit of reasonable scope.
The tool set provides comprehensive coverage for EVM wallet operations, including network interactions, provider queries, wallet creation/management, transaction handling, and signing/verification. All essential CRUD and lifecycle actions are present, with no obvious gaps that would hinder agent workflows in this domain.
Maintenance
Related MCP Connectors
Provide AI agents and automation tools with contextual access to blockchain data including balance…
Read-only on-chain intelligence for AI agents on Base: balances, tokens, gas, tx status.
Read-only on-chain intelligence for AI agents on Base: balances, tokens, gas, tx status.
EVM wallet reads, simulation, and transaction execution under user-defined authorization policies.
Related MCP Servers
- AlicenseBqualityDmaintenanceEnables Claude to interact with Ethereum nodes, allowing users to check ENS token balances, view smart contract code, and decode transactions through natural language.51MIT

Base MCP Serverofficial
AlicenseNot gradedqualityFmaintenanceProvides onchain tools for Claude AI to interact with the Base blockchain and Coinbase API, enabling wallet management, fund transfers, and smart contract deployment.26 npm351MIT- FlicenseBqualityDmaintenanceEnables secure interaction with blockchain smart contracts across multiple chains, including ABI analysis, contract method invocation (view/nonpayable/payable), and local wallet management for Ethereum and Base networks.31-
- AlicenseBqualityDmaintenanceEnables Claude AI to interact with the Rootstock blockchain, including calling contracts, checking ERC20 token balances, transferring tokens, and querying gas prices.8MIT