MCP Crypto Wallet EVM
Realize operações de carteira cripto EVM usando ethers.js v5. Suporta uma variável de ambiente de chave privada para operações de carteira.
Documentação
MCP Crypto Wallet EVM
Este repositório contém um servidor Model Context Protocol (MCP) que fornece ao Claude acesso a operações de blockchain Ethereum e compatíveis com EVM via ethers.js v5. O servidor permite que o Claude execute operações como criar carteiras, verificar saldos, enviar transações e interagir com contratos inteligentes em blockchains compatíveis com EVM.
Visão Geral
O servidor MCP expõe as seguintes ferramentas ao Claude:
Criação e Gerenciamento de Carteiras
wallet_create_random: Criar uma nova carteira com uma chave privada aleatóriawallet_from_private_key: Criar uma carteira a partir de uma chave privadawallet_from_mnemonic: Criar uma carteira a partir de uma frase mnemônicawallet_from_encrypted_json: Criar uma carteira descriptografando uma carteira JSON criptografadawallet_encrypt: Criptografar uma carteira com uma senha
Propriedades da Carteira
wallet_get_address: Obter o endereço da carteirawallet_get_public_key: Obter a chave pública da carteirawallet_get_private_key: Obter a chave privada da carteira (com avisos de segurança apropriados)wallet_get_mnemonic: Obter a frase mnemônica da carteira (se disponível)
Métodos de Blockchain
wallet_get_balance: Obter o saldo da carteirawallet_get_chain_id: Obter o ID da cadeia à qual a carteira está conectadawallet_get_gas_price: Obter o preço atual do gáswallet_get_transaction_count: Obter o número de transações enviadas a partir desta conta (nonce)wallet_call: Chamar um método de contrato sem enviar uma transação
Métodos de Transação
wallet_send_transaction: Enviar uma transaçãowallet_sign_transaction: Assinar uma transação sem enviá-lawallet_populate_transaction: Preencher uma transação com campos ausentes
Métodos de Assinatura
wallet_sign_message: Assinar uma mensagemwallet_sign_typed_data: Assinar dados tipados (EIP-712)wallet_verify_message: Verificar uma mensagem assinadawallet_verify_typed_data: Verificar dados tipados assinados
Métodos do Provedor
provider_get_block: Obter um bloco por número ou hashprovider_get_transaction: Obter uma transação por hashprovider_get_transaction_receipt: Obter um recibo de transaçãoprovider_get_code: Obter o código em um endereçoprovider_get_storage_at: Obter o armazenamento em uma posição para um endereçoprovider_estimate_gas: Estimar o gás necessário para uma transaçãoprovider_get_logs: Obter logs que correspondem a um filtroprovider_get_ens_resolver: Obter o resolvedor ENS para um nomeprovider_lookup_address: Consultar o nome ENS para um endereçoprovider_resolve_name: Resolver um nome ENS para um endereço
Métodos de Rede
network_get_network: Obter as informações atuais da redenetwork_get_block_number: Obter o número atual do bloconetwork_get_fee_data: Obter os dados atuais de taxa (taxa base, taxa máxima de prioridade, etc.)
Pré-requisitos
- Node.js (v16 ou superior)
- Aplicativo Claude Desktop
Instalação
Opção 1: Usando npx (Recomendado)
Você pode executar o servidor MCP diretamente sem instalação usando npx:
npx @mcp-dockmaster/mcp-cryptowallet-evm
Isso baixará e executará o servidor diretamente do npm.
Opção 2: Instalação Manual
-
Clone este repositório:
git clone https://github.com/dcSpark/mcp-cryptowallet-evm.git cd mcp-cryptowallet-evm -
Instale as dependências:
npm ci -
Compile o projeto:
npm run build
Configuração
Variáveis de Ambiente
O servidor MCP suporta as seguintes variáveis de ambiente:
PRIVATE_KEY: Chave privada opcional para usar em operações de carteira quando nenhuma carteira é fornecida explicitamente
Configurar o Claude Desktop
Para configurar o Claude Desktop para usar este servidor MCP:
-
Abra o Claude Desktop
-
Navegue até o arquivo de configuração do Claude Desktop:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
- macOS:
-
Adicione a configuração do servidor MCP:
{
"mcpServers": {
"mcp-cryptowallet-evm": {
"command": "npx",
"args": [
"@mcp-dockmaster/mcp-cryptowallet-evm"
]
}
}
}
Alternativamente, se você instalou o pacote localmente:
{
"mcpServers": {
"mcp-cryptowallet-evm": {
"command": "node",
"args": [
"/path/to/your/mcp-cryptowallet-evm/build/index.js"
]
}
}
}
Executando Localmente
node build/index.js
Uso
Após a configuração, reinicie o Claude Desktop. O Claude agora terá acesso às ferramentas de blockchain compatíveis com Ethereum e EVM. Você pode pedir ao Claude para:
-
Criar uma nova carteira:
Can you create a new Ethereum wallet for me? -
Verificar o saldo de uma carteira:
What's the balance of the Ethereum wallet address 0x742d35Cc6634C0532925a3b844Bc454e4438f44e? -
Enviar uma transação:
Can you help me send 0.1 ETH to 0x742d35Cc6634C0532925a3b844Bc454e4438f44e?
O Claude usará o servidor MCP para interagir diretamente com a blockchain Ethereum.
Desenvolvimento
Adicionando Novas Ferramentas
Para adicionar novas ferramentas ao servidor MCP:
- Defina a ferramenta em
src/tools.ts - Crie uma função de manipulador no arquivo de manipulador apropriado
- Adicione o manipulador ao objeto
handlersemsrc/tools.ts
Compilação
npm run build
Licença
MIT