Ethereum Keystore Encryption — Claude Code MCP server
Encrypts and decrypts Ethereum private keys using Web3 Secret Storage V3 with scrypt and PBKDF2 directly within your coding agent.
claude mcp add keystore-mcp-server -- uvx keystore-mcp-serverWhat Ethereum Keystore Encryption does
This server exposes nine tools for managing Ethereum wallets under the Web3 Secret Storage V3 specification. It handles private key encryption into JSON files, validates payload structure, inspects metadata without entering a password, and updates KDF settings during password updates.
The cryptographic pipeline applies AES-128-CTR with Keccak-256 MAC authentication. You can choose either scrypt with N=262144 or PBKDF2 with HMAC-SHA256 for key derivation. Generated wallet files receive standard Ethereum naming conventions alongside restrictive 0600 permissions.
Handling raw secrets through an agent context carries exposure risks, so high-value keys should be processed on air-gapped offline machines.
What it helps with
- encrypt an Ethereum private key into Web3 V3 JSON
- extract keystore metadata without decrypting secrets
- change wallet passwords and upgrade KDF parameters
- batch encrypt multiple private keys for cold storage
Example prompts for the agent
- Encrypt this private key with scrypt and save the file to
./keystores - Inspect
UTC--2024-01-15.jsonand verify its structure without asking for the password - Update the password on my keystore file and migrate its KDF to scrypt
How to install Ethereum Keystore Encryption
Platform CLI
claude mcp add keystore-mcp-server -- uvx keystore-mcp-serveruvx runs the command named after the package; if the README names another one, use uvx --from keystore-mcp-server <command>
Platform CLI
codex mcp add keystore-mcp-server -- uvx keystore-mcp-serveruvx runs the command named after the package; if the README names another one, use uvx --from keystore-mcp-server <command>
Config file
{
"mcpServers": {
"keystore-mcp-server": {
"command": "uvx",
"args": [
"keystore-mcp-server"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from keystore-mcp-server <command>
Config file
{
"servers": {
"keystore-mcp-server": {
"type": "stdio",
"command": "uvx",
"args": [
"keystore-mcp-server"
]
}
}
}uvx runs the command named after the package; if the README names another one, use uvx --from keystore-mcp-server <command>
Platform CLI
gemini mcp add keystore-mcp-server uvx keystore-mcp-serveruvx runs the command named after the package; if the README names another one, use uvx --from keystore-mcp-server <command>
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about Ethereum Keystore Encryption
How do I install Ethereum Keystore Encryption in Claude Code?
Run claude mcp add keystore-mcp-server -- uvx keystore-mcp-server. This requires uvx available in your system path.
What cryptographic standards does this server implement?
It follows Web3 Secret Storage Definition V3 using AES-128-CTR for ciphers and Keccak-256 for integrity verification. For key derivation, it supports scrypt as well as PBKDF2.
How does the server protect exported files?
Saved keystore files are created with strict 0600 file permissions to block access from other system users. Operations involving valuable assets are best performed on an offline machine.