mcpField
D
debank

debank

github.com/starchild-ai-agent数据与数据库30126 次安装6 天前更新
代码仓库

关于 debank

这是一个以脚本方式调用 DeBank 区块链数据的技能,适用于投资组合与 DeFi 分析。它可查询跨链钱包资产,以及代币、协议和交易信息。

主要功能

  1. 01跨链钱包余额与持仓
  2. 02代币、NFT 和 DeFi 仓位数据
  3. 03交易历史与净值曲线
  4. 04代币价格、持有人与链信息
  5. 05交易模拟与解释
  6. 06代币和 NFT 授权查询

适用场景

  1. 01查看跨链钱包投资组合
  2. 02检查钱包的 DeFi 仓位和 NFT
  3. 03查询代币价格与交易历史
  4. 04提交交易前模拟并查看说明

安装

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

$npx skills add https://github.com/starchild-ai-agent/official-skills --skill debank

安装后在 Claude Code 中输入/debank确认已加载。

包含的文件

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

__init__.py
debank.py
exports.py
tools/
__init__.py
chain.py
protocol.py
token.py
user.py
utils.py
wallet.py

详细介绍

脚本用法

脚本模式技能——阅读此文件,然后从 bash 代码块中调用:

python3 - <<'EOF'
import sys, json
sys.path.insert(0, "/data/workspace/skills/debank")
from exports import db_chain_list, db_user_total_balance, db_user_all_token_list

print(db_chain_list()[:3])
print(db_user_total_balance(user_addr="0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"))
EOF

阅读 exports.py,查看完整的 db_* 函数列表及其确切签名。常用函数:db_chain_list、db_chain、db_token、db_user_total_balance、db_user_all_token_list、db_user_all_simple_protocol_list、db_user_all_complex_protocol_list、db_user_history_list、db_protocol、db_pre_exec_tx、db_explain_tx。

DeBank

DeBank 提供全面的区块链数据,包括钱包资产组合、代币余额、交易历史、DeFi 协议仓位、NFT 和交易模拟。

函数参考(签名)

所有函数都位于 exports.py 中。chain_id 使用 DeBank 的小写代码:eth、bsc、arb、op、base、matic、avax、sol、era、scrl、linea、mnt、blast 等。使用 db_chain_list() 枚举。 user_addr 是钱包地址(小写)。protocol_id 来自 db_protocol_list()。

链和代币参考
函数描述
db_chain_list()列出所有支持的链。
db_chain(chain_id)单条链的元数据。
db_gas_market(chain_id)某条链的 Gas 价格。
db_token(chain_id, token_id)代币详情。token_id = 合约地址(原生代币则为 eth、bnb)。
db_token_list_by_ids(chain_id, token_ids)批量查询代币。
db_token_history_price(chain_id, token_id, start_time, end_time=None)历史价格(Unix 时间戳)。
db_token_top_holders(chain_id, token_id, start=0)持有量最多的地址。
用户资产组合(单链)
函数描述
db_user_chain_balance(user_addr, chain_id)某条链上的美元价值。
db_user_token_list(user_addr, chain_id, is_all=None)某条链上的代币。
db_user_token(user_addr, chain_id, token_id)单个代币余额。
db_user_simple_protocol_list(user_addr, chain_id)某条链上的 DeFi 仓位(简要)。
db_user_complex_protocol_list(user_addr, chain_id)某条链上的 DeFi 仓位(详细)。
db_user_nft_list(user_addr, chain_id, is_all=None)某条链上的 NFT。
db_user_history_list(user_addr, chain_id, start_time=None, page_count=None)某条链上的交易历史。
db_user_chain_net_curve(user_addr, chain_id)某条链上的净资产曲线。
db_user_token_authorized_list(user_addr, chain_id)代币授权(安全审计)。
db_user_nft_authorized_list(user_addr, chain_id)NFT 授权。
用户资产组合(全链——调用开销较大)
函数描述
db_user_total_balance(user_addr)所有链上的美元总额及细分数据。
db_user_total_net_curve(user_addr)所有链上的净资产曲线。
db_user_used_chain_list(user_addr)该地址使用过的链。
db_user_all_token_list(user_addr, is_all=None)所有链上的代币。
db_user_all_simple_protocol_list(user_addr)所有 DeFi 仓位(简要)。
db_user_all_complex_protocol_list(user_addr)所有 DeFi 仓位(详细)。
db_user_all_nft_list(user_addr, is_all=None)所有 NFT。
db_user_all_history_list(user_addr, start_time=None, page_count=None)所有交易历史。
db_user_complex_app_list(user_addr)所有应用级仓位(粒度更细)。
协议参考
函数描述
db_protocol(protocol_id)协议详情。
db_protocol_list(chain_id)某条链上的协议。
db_protocol_all_list()所有链上的协议。
db_app_protocol_list()应用级协议(分组)。
db_user_protocol(user_addr, protocol_id)用户在某个协议中的仓位。
db_pool(protocol_id, chain_id, pool_id)单个池的详情。
交易模拟
函数说明
db_pre_exec_tx(user_addr, chain_id, tx)在发送前模拟交易。tx = 标准交易字典。
db_explain_tx(user_addr, chain_id, tx)以易于理解的方式说明交易。

DeBank 使用 snake_case(total_usd_value、chain_id、usd_value)。 美元金额为浮点数。代币数量也是浮点数(已根据精度调整,无需除以 10**decimals)。

何时使用 DeBank

使用 DeBank 进行:

  • 用户投资组合 - 查看所有链上的总余额、代币持仓和 NFT
  • 交易历史 - 查看单条或所有链上的历史交易
  • DeFi 头寸 - 查看协议余额和复杂的投资组合头寸
  • 代币数据 - 查看代币详情、价格和大户信息
  • 交易模拟 - 在提交前预执行并说明交易
  • 授权追踪 - 查看代币和 NFT 授权
  • 分析 - 查看 24 小时净值曲线并追踪投资组合

常见工作流

获取用户投资组合
db_user_total_balance(user_addr="0x...")  # Total balance across all chains
db_user_all_token_list(user_addr="0x...")  # All token holdings
db_user_all_nft_list(user_addr="0x...")  # All NFT collections
查看特定链上的代币余额
db_user_token_list(user_addr="0x...", chain_id="eth")  # Ethereum tokens
db_user_token_list(user_addr="0x...", chain_id="bsc")  # BSC tokens
获取交易历史
db_user_history_list(user_addr="0x...", chain_id="eth")  # Eth transactions
db_user_all_history_list(user_addr="0x...")  # All chain transactions
查看 DeFi 协议头寸
db_user_simple_protocol_list(user_addr="0x...", chain_id="eth")  # Simple balances
db_user_complex_protocol_list(user_addr="0x...", chain_id="eth")  # Detailed positions
db_user_all_complex_protocol_list(user_addr="0x...")  # All chains
代币信息
db_token(chain_id="eth", token_id="0x...")  # Token details
db_token_history_price(chain_id="eth", token_id="0x...", start_time=1234567890, end_time=1234567990)
db_token_top_holders(chain_id="eth", token_id="0x...")  # Top 100 holders
交易模拟
db_pre_exec_tx(user_addr="0x...", chain_id="eth", tx={...})  # Enhanced pre-execution
db_explain_tx(user_addr="0x...", chain_id="eth", tx={...})  # Explain transaction
协议数据
db_protocol(protocol_id="uniswap")  # Protocol details
db_protocol_list(chain_id="eth")  # All protocols on chain
db_protocol_all_list()  # All protocols across chains
链信息
db_chain_list()  # All supported chains
db_chain(chain_id="eth")  # Specific chain details
db_gas_market(chain_id="eth")  # Gas prices

重要说明

  • API 密钥:需要设置 DEBANK_API_KEY 环境变量(DeBank Cloud API)
  • 用户地址:大多数端点都需要有效的区块链地址(0x... 格式)
  • 链 ID:使用 DeBank 链标识符(eth、bsc、polygon、arbitrum、optimism 等)
  • 速率限制:请留意 API 速率限制和单位成本
  • 单位成本:不同端点的单位成本不同(参阅 API 文档)

链 ID 参考

常见链标识符:

  • eth → Ethereum 主网
  • bsc → BNB Smart Chain
  • polygon → Polygon
  • arbitrum → Arbitrum One
  • optimism → Optimism
  • avax → Avalanche C-Chain
  • ftm → Fantom
  • op → Optimism
  • base → Base

**重要:**使用 db_chain_list() 获取受支持链及其标识符的完整列表。

地址格式

所有用户地址都应采用 Ethereum 格式(0x 后跟 40 个十六进制字符):

  • 有效:0x1234567890abcdef1234567890abcdef12345678
  • 无效:1234567890abcdef1234567890abcdef12345678(缺少 0x 前缀)

评论

支持 Markdown