
Cryptowallet Evm
通过 ethers.js v5 启用与以太坊和 EVM 兼容区块链的直接交互,用于钱包创建、余额查询、交易发送和智能合约操作。
概述
MCP Crypto Wallet EVM
此仓库包含一个 Model Context Protocol (MCP) 服务器,通过 ethers.js v5 提供给 Claude 访问以太坊和与 EVM 兼容的区块链操作的能力。该服务器使 Claude 能够在与 EVM 兼容的区块链上执行诸如创建钱包、检查余额、发送交易和与智能合约交互等操作。
概述
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
: 获取钱包连接的链 IDwallet_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
: 估算交易所需的 gasprovider_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 Desktop 应用程序
安装
选项 1:使用 npx(推荐)
您可以使用 npx 直接运行 MCP 服务器而无需安装:
bash
npx @mcp-dockmaster/mcp-cryptowallet-evm
这将直接从 npm 下载并执行服务器。
选项 2:手动安装
-
克隆此仓库:
bashgit clone https://github.com/dcSpark/mcp-cryptowallet-evm.git cd mcp-cryptowallet-evm
-
安装依赖项:
bashnpm ci
-
构建项目:
bashnpm run build
配置
环境变量
MCP 服务器支持以下环境变量:
PRIVATE_KEY
: 可选私钥,用于在未明确提供钱包时进行钱包操作
配置 Claude Desktop
要配置 Claude Desktop 使用此 MCP 服务器:
-
打开 Claude Desktop
-
导航到 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:
-
添加 MCP 服务器配置:
json
{
"mcpServers": {
"mcp-cryptowallet-evm": {
"command": "npx",
"args": [
"@mcp-dockmaster/mcp-cryptowallet-evm"
]
}
}
}
或者,如果您本地安装了该包:
json
{
"mcpServers": {
"mcp-cryptowallet-evm": {
"command": "node",
"args": [
"/path/to/your/mcp-cryptowallet-evm/build/index.js"
]
}
}
}
本地运行
bash
node build/index.js
使用
配置完成后,重启 Claude Desktop。Claude 现在可以访问以太坊和与 EVM 兼容的区块链工具。您可以要求 Claude:
-
创建新钱包:
你能为我创建一个新的以太坊钱包吗?
-
检查钱包余额:
以太坊钱包地址 0x742d35Cc6634C0532925a3b844Bc454e4438f44e 的余额是多少?
-
发送交易:
你能帮我向 0x742d35Cc6634C0532925a3b844Bc454e4438f44e 发送 0.1 ETH 吗?
Claude 将使用 MCP 服务器直接与以太坊区块链进行交互。
开发
添加新工具
要向 MCP 服务器添加新工具:
- 在
src/tools.ts
中定义工具 - 在适当的处理程序文件中创建处理函数
- 将处理程序添加到
src/tools.ts
中的handlers
对象
构建
bash
npm run build
许可证
MIT