返回市场
mcp加密钱包-evm

mcp加密钱包-evm

作者:dcSpark7 星标更新:2025-03-26

项目介绍

MCP Crypto Wallet EVM

此仓库包含一个模型上下文协议(MCP)服务器,该服务器通过ethers.js v5为Claude提供了访问以太坊和兼容EVM区块链操作的能力。该服务器使Claude能够执行创建钱包、检查余额、发送交易以及与兼容EVM区块链上的智能合约进行交互等操作。

<a href="https://glama.ai/mcp/servers/@dcSpark/mcp-cryptowallet-evm"> <img width="380" height="200" src="https://gips1.baidu.com/it/u=4218960478,2257183186&fm=3081&app=3081&f=PNG?w=760&h=400" alt="Crypto Wallet EVM MCP服务器" /> </a>

概览

MCP服务器向Claude暴露了以下工具:

钱包创建与管理

  • wallet_create_random: 使用随机私钥创建新钱包
  • wallet_from_private_key: 从私钥创建钱包
  • wallet_from_mnemonic: 从助记词短语创建钱包
  • wallet_from_encrypted_json: 解密加密的JSON钱包并创建钱包
  • wallet_encrypt: 使用密码加密钱包

钱包属性

  • wallet_get_address: 获取钱包地址
  • wallet_get_public_key: 获取钱包公钥
  • wallet_get_private_key: 获取钱包私钥(附带适当的安全警告)
  • wallet_get_mnemonic: 获取钱包助记词短语(如果可用)

区块链方法

  • wallet_get_balance: 获取钱包余额
  • wallet_get_chain_id: 获取钱包连接的链ID
  • wallet_get_gas_price: 获取当前的Gas价格
  • wallet_get_transaction_count: 获取从此账户发送的交易数量(nonce)
  • wallet_call: 调用合约方法而不发送交易

交易方法

  • wallet_send_transaction: 发送交易
  • wallet_sign_transaction: 签署交易但不发送
  • wallet_populate_transaction: 填充缺少字段的交易

签名方法

  • wallet_sign_message: 签署消息
  • wallet_sign_typed_data: 签署类型化数据(EIP-712)
  • wallet_verify_message: 验证已签署的消息
  • wallet_verify_typed_data: 验证已签署的类型化数据

提供者方法

  • provider_get_block: 根据编号或哈希获取区块
  • provider_get_transaction: 根据哈希获取交易
  • provider_get_transaction_receipt: 获取交易收据
  • provider_get_code: 获取地址处的代码
  • provider_get_storage_at: 获取地址处的位置存储
  • provider_estimate_gas: 估算交易所需的Gas
  • provider_get_logs: 获取匹配过滤器的日志
  • provider_get_ens_resolver: 获取名称的ENS解析器
  • provider_lookup_address: 查找地址的ENS名称
  • provider_resolve_name: 解析ENS名称到地址

网络方法

  • network_get_network: 获取当前网络信息
  • network_get_block_number: 获取当前区块号
  • network_get_fee_data: 获取当前费用数据(基础费用、最大优先费用等)

先决条件

  • Node.js(v16或更高版本)
  • Claude桌面应用程序

安装

方案1:使用npx(推荐)

您可以直接运行MCP服务器而无需安装:

npx @mcp-dockmaster/mcp-cryptowallet-evm

这将直接从npm下载并执行服务器。

方案2:手动安装

  1. 克隆此仓库:

    git clone https://github.com/dcSpark/mcp-cryptowallet-evm.git
    cd mcp-cryptowallet-evm
    
  2. 安装依赖项:

    npm ci
    
  3. 构建项目:

    npm run build
    

配置

环境变量

MCP服务器支持以下环境变量:

  • PRIVATE_KEY: 可选的私钥,用于在未明确提供钱包时的钱包操作

配置Claude桌面

要配置Claude桌面以使用此MCP服务器:

  1. 打开Claude桌面

  2. 导航到Claude桌面配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Windows: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  3. 添加MCP服务器配置:

{
  "mcpServers": {
    "mcp-cryptowallet-evm": {
      "command": "npx",
      "args": [
        "@mcp-dockmaster/mcp-cryptowallet-evm"
      ]
    }
  }
}

或者,如果您本地安装了该包:

{
  "mcpServers": {
    "mcp-cryptowallet-evm": {
      "command": "node",
      "args": [
        "/path/to/your/mcp-cryptowallet-evm/build/index.js"
      ]
    }
  }
}

本地运行

node build/index.js

使用

配置完成后,请重启Claude桌面。Claude现在可以访问以太坊和兼容EVM区块链的工具。您可以要求Claude:

  1. 创建新钱包:

    你能为我创建一个新的以太坊钱包吗?
    
  2. 检查钱包余额:

    以太坊钱包地址0x742d35Cc6634C0532925a3b844Bc454e4438f44e的余额是多少?
    
  3. 发送交易:

    你能帮我向0x742d35Cc6634C0532925a3b844Bc454e4438f44e发送0.1 ETH吗?
    

Claude将使用MCP服务器直接与以太坊区块链进行交互。

开发

添加新工具

要向MCP服务器添加新工具:

  1. src/tools.ts中定义工具
  2. 在适当的处理器文件中创建处理函数
  3. 将处理器添加到src/tools.ts中的handlers对象

构建

npm run build

许可证

MIT