mcpField
T
TRC20 Token Toolkit

TRC20 Token Toolkit

github.com/bofai其他163120 次安装6 天前更新
代码仓库

关于 TRC20 Token Toolkit

面向 TRON 上 AI Agent 的 TRC20 代币操作工具包,可查询余额与代币信息、转账及管理授权。支持常见代币符号和任意代币合约地址,并提供 dry-run 与地址校验。

主要功能

  1. 01查询代币元数据
  2. 02查询单个或批量余额
  3. 03转账前 dry-run 校验
  4. 04设置及查询代币授权
  5. 05支持符号或合约地址

适用场景

  1. 01查看钱包中的多种代币余额
  2. 02发送代币前验证地址与金额
  3. 03为指定合约设置所需额度
  4. 04查询代币名称、符号和供应量

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bofai/skills --skill trc20-token-toolkit

安装后在 Claude Code 中输入/trc20-token-toolkit确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.gitignore
README.md
package.json
package-lock.json
resources/
well_known_tokens.json
scripts/
approve.js
balance.js
transfer.js
info.js
utils.js

详细介绍

TRC20 代币工具包

为 TRON 上的 AI Agent 提供通用的 TRC20 代币操作。查询余额、转账代币、管理授权,并获取任意 TRC20 代币的元数据。支持通过符号查找常见代币(USDT、USDD、SUN 等),也支持使用任意代币的合约地址。


快速开始

**需要钱包:**先运行 agent-wallet list。
如果不存在钱包,请先调用 bankofai-guide(C 节 — Wallet Guard),再继续操作。

  1. 安装依赖:
    cd trc20-toolkit-skill && npm install
    
  2. 设置环境变量:
    export TRON_PRIVATE_KEY="<your-private-key>"
    export TRON_NETWORK="mainnet"
    export TRONGRID_API_KEY="<optional>"
    

注意

切勿显示或记录私钥。


可用脚本

1. info.js — 代币元数据
node scripts/info.js <tokenAddressOrSymbol>
node scripts/info.js USDT
node scripts/info.js TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t

输出:name、symbol、decimals、total_supply

2. balance.js — 代币余额
# Single token balance
node scripts/balance.js USDT
node scripts/balance.js USDT TWalletAddress123

# Batch balance check
node scripts/balance.js --batch USDT,USDD,SUN
node scripts/balance.js --batch USDT,USDD TWalletAddress123

输出:trx_balance、tokens[](每项包含 symbol、balance、decimals)

**行为说明:**在 --batch 模式下,无效的代币输入会作为单项错误返回,而不会导致整个批次中止。

3. transfer.js — 转账代币
参数必填描述
token是代币地址或符号
toAddress是收款方 TRON 地址
amount是易读格式的金额
--dry-run否仅验证,不发起交易
node scripts/transfer.js USDT TRecipientAddress 10.5 --dry-run
node scripts/transfer.js USDT TRecipientAddress 10.5

输出:status、tx_id、amount、symbol

**验证规则:**收款地址必须是有效的 TRON 地址;不允许向自身转账;即使在 --dry-run 模式下,amount 也必须大于 0。

4. approve.js — 管理授权额度
# Set allowance (use the exact amount needed, never unlimited)
node scripts/approve.js USDT TSpenderAddress 1000 --dry-run
node scripts/approve.js USDT TSpenderAddress 1000

# Check current allowance
node scripts/approve.js USDT TSpenderAddress --check
node scripts/approve.js USDT TSpenderAddress --check TWalletAddress

输出:allowance、is_max、status、tx_id

**验证规则:**支出方地址和可选的所有者地址必须是有效的 TRON 地址;amount 必须大于 0;无限额授权仍处于禁用状态。


使用模式

模式 1:转账前检查(推荐)
node scripts/balance.js USDT
node scripts/transfer.js USDT TRecipient 100 --dry-run
# Confirm with user
node scripts/transfer.js USDT TRecipient 100
模式 2:查看资产组合概览
node scripts/balance.js --batch USDT,USDD,SUN,JST,BTT

安全规则

注意

  1. 切勿在输出或日志中显示私钥。
  2. **未经用户确认,切勿转账。**始终先使用 --dry-run。
  3. **防止向自身转账。**脚本会拒绝向发送方自己的地址转账。
  4. **验证地址。**确保所有地址都以 T 开头,且是有效的 TRON Base58 地址。
  5. **转账前检查余额。**脚本会自动验证余额是否充足。
  6. **切勿使用无限额授权。**始终只授权预期兑换或转账所需的确切金额。脚本会拒绝无限额(MAX_UINT256)授权。这可以防止已遭入侵或恶意的支出方合约转走全部代币余额。
  7. **谨慎处理多权限钱包。**这些脚本假设签名密钥可直接使用;需要显式选择 permissionId 的钱包可能需要采用不同的交易流程。

支持的代币

可通过符号查找的常见代币:USDT、USDD、USDC、WTRX、SUN、JST、BTT、WIN。 任何 TRC20 代币都可以通过其合约地址使用。

完整列表请参见 resources/well_known_tokens.json。


常见问题

问题解决方案
Unknown token symbol改用完整的合约地址
Insufficient balance先使用 balance.js 检查余额
TRON_PRIVATE_KEY required设置该环境变量
Cannot find module 'tronweb'运行 npm install

版本 1.0.0 — 由 M2M Agent Registry 为 Bank of AI 创建

评论

支持 Markdown