ethereum-wallet-toolkit

MCP.Pizza Chef: nirholas

This Python-based toolkit provides a full suite of Ethereum wallet tools accessible inside Claude Desktop via MCP servers. You can generate new wallets, create or restore from mnemonic phrases, sign transactions and messages, encrypt keystore files, and validate keys and addresses. It runs locally without needing external accounts or API keys but requires developer-level setup with Python and configuration in Claude Desktop.

Other

Use This MCP server To

Generate a new Ethereum wallet with a secure keypair Create or restore a wallet from a BIP39 mnemonic phrase Generate a vanity Ethereum address with custom patterns Sign Ethereum transactions offline before sending Sign and verify personal messages and typed data Encrypt and decrypt keystore files securely Validate Ethereum addresses and private keys for correctness

README

Ethereum Wallet Toolkit

A collection of Ethereum wallet tools: Python CLI utilities (eth_toolkit.py, wallet.py, keystore.py, sign.py, transaction.py, typed_data.py, validate.py, vanity.py), five Model Context Protocol (MCP) servers exposing wallet functionality to AI assistants, a fully offline single-file HTML wallet (offline.html), and an x402 payment facilitator. See the sections below for each component.

Offline Build - Official Ethereumjs Libraries

This directory contains the build system to create offline1.html using official ethereumjs libraries.

Libraries Used

All libraries are from the official Ethereum ecosystem:

  • @ethereumjs/tx - Transaction signing (legacy + EIP-1559)
  • @ethereumjs/util - Utilities (address validation, checksums, etc.)
  • @ethereumjs/rlp - RLP encoding
  • @ethereumjs/wallet - Wallet utilities
  • ethereum-cryptography - Official cryptographic primitives (secp256k1, keccak256)
  • @scure/bip39 - BIP39 mnemonic (used by ethereumjs)
  • @scure/bip32 - BIP32 HD derivation (used by ethereumjs)

Build Instructions

# Navigate to this directory
cd offline-build

# Install dependencies
npm install

# Build offline1.html
npm run build

The output file offline1.html will be created in the parent directory.

What Gets Bundled

The build process uses esbuild to:

  1. Bundle all ethereumjs libraries and their dependencies
  2. Minify the code for smaller file size
  3. Inline everything into a single HTML file

Typical bundle size: ~400-600 KB (varies by version)

Features

All features match the CLI tool:

ethereum-wallet-toolkit FAQ

Can I use this to generate a new Ethereum wallet?
Yes — it provides tools to create random wallets, mnemonic-based wallets, and vanity addresses.
Can I sign Ethereum transactions and messages with this?
Yes — it supports signing legacy and EIP-1559 transactions, personal messages, and typed data (EIP-712).
Does this work inside Claude Desktop?
Yes — it is designed to integrate with Claude Desktop as MCP servers.
Do I need an API key or account to use this?
No — it runs locally and does not require any external accounts or API keys.
How hard is it to set up?
It requires developer-level setup, including installing Python packages and configuring Claude Desktop.
Can I use it to encrypt and decrypt Ethereum keystore files?
Yes — it supports Web3 Secret Storage V3 keystore encryption and decryption.
Can I validate Ethereum addresses and keys?
Yes — it includes validation tools for addresses, private keys, and signatures.