@blockchain-forever/aelf-node-skill
v0.1.3
Published
AElf Node Skill for AI agents: REST for reads, SDK for contract execution, and selective fallback for fee estimate.
Readme
AElf Node Skill
AElf Node Skill 提供 MCP、CLI、SDK 三种接口,采用“读走 REST、合约执行走 SDK、手续费估算选择性 fallback”的架构访问 AElf 公共节点。
功能
- 链路读取:链状态、区块高度、区块详情、交易结果
- 合约元数据:View Methods 和 System Contract Address(REST adapter)
- 合约执行:View 调用与交易发送(SDK)
- 手续费估算:REST 优先,SDK 兜底
- 节点管理:导入与列出自定义节点
默认节点
AELF:https://aelf-public-node.aelf.iotDVV:https://tdvv-public-node.aelf.io
安装
bun install使用方式
MCP
bun run mcpCLI
bun run cli get-chain-status --chain-id AELFOpenClaw
bun run build:openclaw
bun run build:openclaw:check快速开始
# 启动 MCP server
bun run mcp
# 使用 CLI
bun run cli get-chain-status --chain-id AELF
# 运行单测
bun run test:unitSetup CLI
仓库内置一键 setup,支持 Claude、Cursor、OpenClaw。
bun run setup claude
bun run setup cursor
bun run setup cursor --global
bun run setup openclaw
bun run setup openclaw --config-path /path/to/openclaw-config.json
bun run setup list
bun run setup uninstall claude
bun run setup uninstall cursor --global
bun run setup uninstall openclaw --config-path /path/to/openclaw-config.json安装后的包也可直接执行:
aelf-node-setup claudeMCP 配置示例
{
"mcpServers": {
"aelf-node-skill": {
"command": "bun",
"args": ["run", "/ABSOLUTE/PATH/TO/src/mcp/server.ts"],
"env": {
"AELF_PRIVATE_KEY": "可选_env_回退私钥",
"PORTKEY_WALLET_PASSWORD": "可选钱包密码",
"PORTKEY_CA_KEYSTORE_PASSWORD": "可选keystore密码"
}
}
}
}环境变量
复制并编辑:
cp .env.example .envAELF_PRIVATE_KEY:写操作的 env 回退私钥(可选,env 优先级最高)PORTKEY_PRIVATE_KEY:共享 skill 兼容的次级 env 回退私钥(可选)- 写操作工具(
aelf_send_contract_transaction、aelf_estimate_transaction_fee)按explicit -> context -> env解析 signer PORTKEY_WALLET_PASSWORD:EOA wallet context 的密码缓存(可选)PORTKEY_CA_KEYSTORE_PASSWORD:CA keystore context 的密码缓存(可选)PORTKEY_SKILL_WALLET_CONTEXT_PATH:active context 路径覆盖(默认~/.portkey/skill-wallet/context.v1.json)signerMode=daemon仅预埋接口,本轮返回SIGNER_DAEMON_NOT_IMPLEMENTEDAELF_NODE_AELF_RPC_URL:可选,覆盖 AELF 节点AELF_NODE_TDVV_RPC_URL:可选,覆盖 tDVV 节点AELF_NODE_REGISTRY_PATH:可选,自定义节点注册表路径AELF_SDK_INSTANCE_CACHE_MAX:可选,SDK 实例缓存上限(默认32)AELF_SDK_CONTRACT_CACHE_MAX:可选,SDK 合约缓存上限(默认256)AELF_REST_CLIENT_CACHE_MAX:可选,REST 客户端缓存上限(默认64)
Tool 列表
MCP tool 名称:
aelf_get_chain_statusaelf_get_block_heightaelf_get_blockaelf_get_transaction_resultaelf_get_contract_view_methodsaelf_get_system_contract_addressaelf_call_contract_viewaelf_send_contract_transactionaelf_estimate_transaction_feeaelf_import_nodeaelf_list_nodes
架构
src/core/:业务编排lib/sdk-client.ts:aelf-sdk封装lib/rest-client.ts:REST adapter + 错误归一lib/node-router.ts:链与节点路由/fallbacksrc/mcp/server.ts:MCP 入口aelf_node_skill.ts:CLI 入口index.ts:SDK 导出
测试
bun run test
bun run test:coverage:ci安全
- 不要在对话输出中暴露
AELF_PRIVATE_KEY。 - Active wallet context 不存明文私钥。
- 所有密钥均通过环境变量管理。
License
MIT
