
Ethereum Wallet Generator
io.github.nirholasPublished by GitHub account nirholasv1.0.0Updated Oct 24, 2026
Generate Ethereum wallets with BIP39 mnemonics, HD paths, vanity addresses, private key backup
Overview
Local MCP server that lets an assistant generate, restore and derive Ethereum wallets, including BIP39 mnemonics, HD accounts and vanity addresses.
- What you can do
- Generate new Ethereum wallets, with or without a BIP39 mnemonic and passphrase, and choose word count, language and derivation path. Restore wallets from an existing mnemonic or a hex private key. Derive up to 100 HD accounts from one seed phrase with a chosen base path and start index. Search for vanity addresses matching a prefix or suffix within a time limit. Read bundled documentation resources on BIP39, derivation paths and wordlists, and use guided prompts for secure creation, backup and recovery.
- When to use it
- Useful when you want an assistant to create test or development Ethereum wallets, derive several accounts from one seed phrase, or produce a vanity address, without leaving the chat. Not intended for safeguarding real funds, which the README says should use hardware wallets.
- Requirements
- Runs locally as a stdio process, installed from the PyPI package ethereum-wallet-mcp and started with uvx or the ethereum-wallet-mcp command; a Python environment is needed. No accounts, API keys, environment variables or headers are declared, and no network access is required for generation.
Installation
In SourceWeft
- Open Ethereum Wallet Generator in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Ethereum Wallet MCP Server
A Model Context Protocol (MCP) server providing Ethereum wallet generation and HD wallet functionality. This server enables AI assistants like Claude to securely generate Ethereum wallets, work with BIP39 mnemonics, and derive multiple accounts from a single seed phrase.
Features
Tools
generate_wallet- Generate a new random Ethereum walletgenerate_wallet_with_mnemonic- Generate a wallet with BIP39 seed phraserestore_wallet_from_mnemonic- Restore wallet from existing mnemonicrestore_wallet_from_private_key- Restore wallet from private keyderive_multiple_accounts- Derive multiple HD wallet accountsgenerate_vanity_address- Generate address matching a pattern
Prompts
create_secure_wallet- Guided secure wallet creationbackup_wallet_guide- Wallet backup instructionsrecover_wallet_help- Wallet recovery assistance
Resources
wallet://documentation/bip39- BIP39 standard documentationwallet://documentation/derivation-paths- HD derivation path docswallet://wordlist/{language}- BIP39 wordlists by language
Installation
Usage
Running the Server
Claude Desktop Configuration
Add to your Claude Desktop config (claude_desktop_config.json):
Example Interactions
Security Considerations
⚠️ IMPORTANT SECURITY WARNINGS:
- Never share private keys or mnemonic phrases - These give full access to funds
- This server does not persist sensitive data - Keys exist only in memory during operation
- Use hardware wallets for real funds - Software wallets are inherently less secure
- Vanity addresses carry risks - Never use for high-value storage
- Verify addresses independently - Always double-check derived addresses
Development
Running Tests
Code Formatting
Type Checking
API Reference
Tool: generate_wallet
Generate a new random Ethereum wallet with no mnemonic.
Parameters: None
Returns:
address(str): Checksummed Ethereum addressprivate_key(str): Hex-encoded private key (0x prefixed)public_key(str): Hex-encoded public key
Tool: generate_wallet_with_mnemonic
Generate a new wallet with BIP39 mnemonic seed phrase.
Parameters:
word_count(int, optional): 12, 15, 18, 21, or 24. Default: 12language(str, optional): Mnemonic language. Default: "english"passphrase(str, optional): BIP39 passphrase. Default: ""derivation_path(str, optional): HD path. Default: "m/44'/60'/0'/0/0"
Returns:
address,private_key,public_keymnemonic(str): Space-separated seed wordsderivation_path(str): Path usedpassphrase_used(bool): Whether passphrase was applied
Tool: restore_wallet_from_mnemonic
Restore a wallet from an existing BIP39 mnemonic.
Parameters:
mnemonic(str, required): Space-separated mnemonic phrasepassphrase(str, optional): BIP39 passphrase. Default: ""derivation_path(str, optional): HD path. Default: "m/44'/60'/0'/0/0"
Returns: Same as generate_wallet_with_mnemonic (without mnemonic field)
Tool: restore_wallet_from_private_key
Restore a wallet from a private key.
Parameters:
private_key(str, required): Hex private key (with or without 0x prefix)
Returns:
address,private_key(normalized),public_key
Tool: derive_multiple_accounts
Derive multiple accounts from a single mnemonic.
Parameters:
mnemonic(str, required): BIP39 mnemoniccount(int, optional): Number of accounts (1-100). Default: 5start_index(int, optional): Starting index. Default: 0passphrase(str, optional): BIP39 passphrase. Default: ""base_path(str, optional): Base HD path. Default: "m/44'/60'/0'/0"
Returns:
accounts(list): List of {index, derivation_path, address, private_key, public_key}total_derived(int): Number of accounts derivedbase_path(str): Base path used
Tool: generate_vanity_address
Generate an address matching a vanity pattern.
Parameters:
prefix(str, optional): Desired prefix after 0x (hex chars)suffix(str, optional): Desired suffix (hex chars)case_sensitive(bool, optional): Match case exactly. Default: falsetimeout_seconds(int, optional): Max search time. Default: 60
Returns:
address,private_key,public_keypattern_matched(str): Matched patternattempts(int): Addresses triedtime_seconds(float): Time takendifficulty(int): Estimated 1-in-N difficulty
License
MIT License
Contributing
Contributions welcome! Please read the contributing guidelines and submit pull requests.
Source: ethereum-wallet-mcp/README.md at commit dabb599
Tools
0Version history
1- v1.0.0LatestSep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.