MCP EVM Signer
local-only server
The server can only run on the clientβs local machine because it depends on local resources.
Integrations
Supports configuration through environment variables, allowing users to set Infura API keys, network preferences, and key encryption settings.
Enables interaction with Ethereum and EVM-compatible blockchains, providing wallet management, balance checking, transaction sending, smart contract deployment, and contract interaction capabilities.
Provides access to the MCP EVM Signer repository for installation, with support for contribution through GitHub's pull request workflow.
MCP EVM Signer
A Model Context Protocol (MCP) server for managing Ethereum private keys and deploying smart contracts using Infura. This server enables Claude for Desktop and other MCP clients to interact with EVM-compatible blockchains.
Features
- π Securely store and manage Ethereum private keys locally
- π Connect to Infura for blockchain interactions
- π Deploy smart contracts from compiled ABIs and bytecode
- βοΈ Sign and send transactions
- π° View account balances and transaction history
- π Query blockchain data and interact with deployed contracts
Quick Start
Prerequisites
- Node.js v16 or higher
- An Infura account with API key
- Claude for Desktop app installed
Installation
- Clone this repository:Copy
- Install dependencies:Copy
- Build the project:Copy
- Configure environment variables:Edit theCopy
.env
file to add your Infura API key and configure other settings.
Integrating with Claude for Desktop
- Add the server to your Claude for Desktop configuration:
- Restart Claude for Desktop
- You can now ask Claude to deploy smart contracts, check balances, or interact with EVM blockchains
Available Tools
The MCP EVM Signer server exposes the following tools for use with Claude:
Wallet Management
create-wallet
: Create a new Ethereum walletimport-wallet
: Import an existing wallet from a private keylist-wallets
: List all saved wallets
Blockchain Operations
check-balance
: Check the ETH balance of an addressget-transactions
: Get recent transactions for an addresssend-transaction
: Send ETH to an address
Smart Contract Interactions
deploy-contract
: Deploy a smart contract from ABI and bytecodecall-contract
: Call a read-only contract methodexecute-contract
: Execute a contract method that modifies state
Example Usage
Below are some examples of how you can use these tools with Claude:
Creating a Wallet
You can ask Claude:
Checking a Balance
You can ask Claude:
Deploying an ERC-20 Token
See our ERC-20 token example for a complete walkthrough of deploying and interacting with an ERC-20 token contract.
Security Notes
- Private keys are stored locally on your machine
- Keys can be encrypted with a password
- The server only exposes functionality through the MCP protocol
- Always review transactions before approving them in Claude for Desktop
- Use test networks like Sepolia or Goerli when getting started
Documentation
For more detailed documentation, please refer to:
- Usage Guide: Detailed usage instructions and examples
- Examples: Sample workflows and contract deployments
Project Structure
Development
To contribute to this project:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature
) - Make your changes
- Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
License
This project is licensed under the MIT License - see the LICENSE file for details.
This server cannot be installed
A server that securely manages Ethereum private keys locally and enables Claude for Desktop to interact with EVM-compatible blockchains through Infura.
- Features
- Quick Start
- Available Tools
- Example Usage
- Security Notes
- Documentation
- Project Structure
- Development
- License