Token导航 LogoToken导航TokenDH.com
Tools Ethereum logo
金融服务未说明官方级别未说明来源级核验

Tools Ethereum

MCP Server

一个全面的以太坊工具包,提供CLI界面和MCP服务器,用于区块链交互。

工具数

20

提示词数

0

GitHub Stars

0

资源数

0
命令行工具TypeScript智能合约

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

wighawag

提供方

wighawag

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

工具以太坊

一个全面的以太坊工具包,为区块链交互提供CLI界面和MCP(模型上下文协议)服务器。

特性

  • 双接口:用作命令行工具(ecli)或作为人工智能助手的MCP服务器
  • 20+以太坊工具:全面覆盖读取区块链数据、发送交易和与智能合约交互
  • 类型安全:用TypeScript编写,带有Zod模式验证
  • 现代堆栈:基于Viem构建,用于可靠的以太坊交互

安装

npm install tools-ethereum
# or
pnpm add tools-ethereum
# or
yarn add tools-ethereum

CLI使用情况

该套餐提供 ecli 命令行界面:

# Start the MCP server with prefixed env vars
export ECLI_RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
export ECLI_PRIVATE_KEY=0x...
ecli mcp

# Or use generic env var names (fallback)
export RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
export PRIVATE_KEY=0x...
ecli mcp

# Or use --rpc-url option
ecli --rpc-url https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY mcp

# Get ETH balance (uses env var)
ecli get_balance 0x...

# Or specify --rpc-url explicitly
ecli --rpc-url https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY get_balance 0x...

# Get latest block number
ecli get_block_number

全局选项

  • --rpc-url -以太坊网络的RPC URL(如果设置了env var,则可选)

环境变量

CLI按以下优先级顺序检查环境变量:

  1. ECLI_RPC_URL -以太坊网络的RPC URL(前缀避免冲突)
  2. RPC_URL -回退RPC URL(为方便起见的通用名称)
  3. ECLI_PRIVATE_KEY -用于签署交易的私钥(前缀可避免冲突)
  4. PRIVATE_KEY -回退私钥(为方便起见,通用名称)

注: 私钥必须以开头 0x

MCP服务器

MCP服务器通过模型上下文协议公开所有以太坊工具,使AI助手能够与区块链交互:

import { createServer } from 'tools-ethereum';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
import { mainnet } from 'viem/chains';

const server = createServer({
  chain: mainnet,
  privateKey: process.env.PRIVATE_KEY as `0x${string}`,
});

const transport = new StdioServerTransport();
await server.connect(transport);

可用工具

只读操作

工具说明
get_balance获取地址的ETH余额
get_block_number获取最新的区块编号
get_block按数字或哈希获取块详细信息
get_latest_block获取最新的区块详细信息
get_transaction通过哈希获取交易详细信息
get_transaction_count获取地址的随机数/交易计数
get_gas_price获取当前天然气价格
get_fee_history获取天然气估算的费用历史记录
get_chain_id获取网络链ID
get_code在某个地址获取字节码
get_storage_at获取特定插槽的存储值

合同互动

工具说明
call_contract调用只读合约函数(视图/纯)
encode_calldata编码用于合约交互的函数调用
decode_calldata解码交易输入数据
estimate_gas估算交易天然气

交易操作(需要PRIVATE_KEY)

工具说明
send_transaction发送ETH或调用合约函数
sign_message对任意消息进行签名
wait_for_transaction_confirmation等待交易收据

日志查询

工具说明
get_contract_logs从合同中查询事件日志
get_transaction_logs从特定事务中获取日志

发展

# Install dependencies
pnpm install

# Build the project
pnpm build

# Run tests
pnpm test

# Watch mode for development
pnpm dev

# Format code
pnpm format

测试

# Run all tests
pnpm test

# Run with deprecation tracing
pnpm test:trace

# Watch mode
pnpm test:watch

项目结构

src/
├── index.ts           # Main MCP server creation
├── cli.ts             # CLI entry point
├── cli-tool-generator.ts  # Dynamic CLI command generation
├── helpers.ts         # Client creation and tool registration utilities
├── types.ts           # TypeScript type definitions
└── tools/             # Individual tool implementations
    ├── index.ts       # Tool exports
    ├── get_balance.ts
    ├── send_transaction.ts
    └── ... (20 tools total)

建筑

该项目遵循基于模块化工具的架构:

  1. 工具 (src/tools/*.ts):具有模式、描述和执行功能的自包含单元
  2. MCP服务器 (src/index.ts):将所有工具聚合到兼容MCP的服务器中
  3. 命令行界面 (src/cli.ts):将工具显示为命令行命令
  4. 帮手 (src/helpers.ts):用于客户端创建和工具注册的共享实用程序

许可证

麻省理工学院 ©罗南·桑福德

贡献

欢迎投稿!请确保您的更改:

  1. 遵循现有的代码样式(运行 pnpm format)
  2. 包括适当的测试
  3. 维护TypeScript类型安全
  4. 遵循Zod模式的工具模式

资源

目录标签

目录标签

命令行工具TypeScript智能合约区块链工具本地部署以太坊开发CLI工具MCP服务器

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

20

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP