MCP server for Ethereum address/key validation and cryptographic utilities
Project description
Validation MCP Server
A Model Context Protocol (MCP) server providing comprehensive Ethereum address validation, private key validation, checksum conversion, and cryptographic utilities.
Features
Tools (15 total)
- validate_address - Comprehensive Ethereum address validation with EIP-55 checksum verification
- validate_private_key - Private key validation with range checking
- to_checksum_address - Convert any address to EIP-55 checksummed format
- derive_address_from_private_key - Derive Ethereum address from private key
- derive_address_from_public_key - Derive address from public key (compressed/uncompressed)
- validate_signature - Validate ECDSA signature components (v, r, s)
- validate_hex_data - Validate arbitrary hex data for Ethereum use
- compare_addresses - Compare two addresses for equality
- batch_validate_addresses - Validate multiple addresses at once
- generate_vanity_check - Check if address matches vanity criteria
- keccak256_hash - Compute Keccak-256 hash
- encode_function_selector - Encode function signature to 4-byte selector
- decode_function_selector - Decode selector to function signature
- validate_ens_name - Validate ENS name format (offline)
- calculate_storage_slot - Calculate contract storage slot positions
Resources
validation://eip55-specification- EIP-55 checksum specificationvalidation://secp256k1-constants- Curve parametersvalidation://function-selectors-db- Common function selectors (500+)validation://address-patterns- Known address patternsvalidation://known-weak-keys- Weak key information
Prompts
- Address validation workflow
- Key security audit
- Data encoding helper
- Contract interaction preparation
Installation
pip install -e .
Usage
As MCP Server
Add to your Claude Desktop configuration:
{
"mcpServers": {
"validation-mcp-server": {
"command": "validation-mcp-server"
}
}
}
Example Tool Calls
# Validate an address
result = await validate_address("0x5aaeb6053f3e94c9b9a09f33669435e7ef1beaed")
# Derive address from private key
wallet = await derive_address_from_private_key(
"0x4c0883a69102937d6231471b5dbb6204fe5129617082792ae468d01a3f362318"
)
# Compute function selector
selector = await encode_function_selector("transfer(address,uint256)")
# Returns: 0xa9059cbb
Security Notes
- Private keys are never logged or persisted
- All sensitive operations clear memory after use
- Uses established cryptographic libraries
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
validation_mcp_server-1.0.0.tar.gz
(111.3 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file validation_mcp_server-1.0.0.tar.gz.
File metadata
- Download URL: validation_mcp_server-1.0.0.tar.gz
- Upload date:
- Size: 111.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a95f73957d7d68193c81083af208e462e35c8657508f8cfdc41bbda5e8d9295c
|
|
| MD5 |
b53faac90d4feff1ed411e836b5fc99b
|
|
| BLAKE2b-256 |
2a3629bd017ffa67e3bf1fe6c78082424fa1ff61032f41affef63a1bc7e0222c
|
File details
Details for the file validation_mcp_server-1.0.0-py3-none-any.whl.
File metadata
- Download URL: validation_mcp_server-1.0.0-py3-none-any.whl
- Upload date:
- Size: 37.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.1
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6be7d29dac59d3b1bb0a65e7c70e86df7eb8e4b9a75b4acb65fddf7e2a31a2e4
|
|
| MD5 |
7c7c129cd823ec838708f016f6d4be5b
|
|
| BLAKE2b-256 |
76a1a62056edd3cab036bacaf446ccc9651d3682f89fda37414b279ed96d2a04
|