链上分析服务器

为Enzyme金库提供只读链上分析服务的MCP服务器,支持多工具组合分析,适用于DeFi投资监控和审计场景。

  • by Finanzgoblin
  • TypeScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 Finanzgoblin/vault-finanzgoblin

使用说明

酶库MCP服务器——FNZGB

MCP服务器为 Finanzgobin酵素库 (FNZGB)在以太坊主网上。与 模型上下文协议 SDK,如下 公开紧急情况 建筑。

所有数据都直接从链上(原始RPC调用)和公共API(DefiLama、The Graph)获取。不需要API密钥。

金库

字段 值
VaultProxy 的 0xf8939c149de1f55472bf43db9233bb82c55477a5
审计员代理 0xb74D973BBb5b13332Af387734Db19aE9877C03e6
面额资产 美元(6位小数)
创建 2022年11月6日
所有者 0xa1bfe20d842991c57fad3f03d591ce0f97d6e48f

设置

先决条件

  • Node.js>=18
  • Claude Desktop(或任何兼容MCP的客户端)

安装和构建

npm install
npm run build

Claude桌面配置

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "enzyme-vault": {
      "command": "node",
      "args": ["C:/Users/User/Desktop/vault_finanzgoblin/build/index.js"]
    }
  }
}

保存后重新启动Claude Desktop。

可选:自定义RPC

集 ETH_RPC_URL 使用您自己的以太坊RPC端点。默认为 ethereum-rpc.publicnode.com 有向ankr、1rpc和llamarpc的回退。

工具

跨4个Open Emergence层的9个工具:

第1层——协议上下文

工具 说明
get_protocol_context 酶库机制(库架构、共享生命周期、费用模型、面额资产、存款人分析、工作流路由)。如果不熟悉Enzyme,请先致电。

第2层——数据工具

工具 说明
get_vault_details 实时金库状态——GAV、股价、总股份、资产面额、所有者
get_vault_portfolio 通过DefiLama追踪当前ERC-20持有量,每项资产的美元价值
get_external_positions 外部DeFi头寸——vlCVX(凸投票)、Aave、Uniswap V3 LP。倒像 getActiveExternalPositions() + getManagedAssets() 每个职位
get_vault_depositors 所有持有当前股份余额和所有权百分比的存款人
get_vault_activities 存款/赎回/转账历史记录(可配置回溯,默认30天)
get_vault_performance 历史股价、自成立以来的回报、最大跌幅

第3层——分析

工具 说明
analyze_depositor_profit 每个存款人的损益表有三个相互竞争的框架(简单、股价、综合)和成本基础分类

第4层——成分

工具 说明
get_youtube_dashboard 结合保险库状态、投资组合、存款人健康状况、最近活动和人工智能谈话要点的演示摘要

建筑

数据源

  • 以太坊RPC --生的 eth_call 和 eth_getLogs (没有web3库)
  • DefiLlama --跟踪资产的美元价格
  • 酶子图 --历史股价数据点

事件扫描

  • 股票本 ComptrollerProxy上的事件——每个存款人的实际投资金额
  • 转移 VaultProxy上的事件——共享造币、销毁和点对点转移(主要存款人发现机制)

成本基础分类

并非所有股东都有直接存款事件。服务器对每个存款人的成本基础进行分类:

方法 置信度 描述
direct 高 链上股票买入事件——实际投资金额
inherited 中/低 通过转账链(BFS)追溯到直接存款人。多跳链的信心下降。
transfer_price 低 无可追溯来源;基于块数的初始价格和当前价格之间的线性插值估计
unknown 低 无法确定——通常是在没有相应存款的情况下铸造的费用份额

每种分类都有一个明确的溶解条件,解释了何时以及如何出错。

缓存

数据 TTL
保险库状态 30s
代币价格 5分钟
事件扫描 10分钟

设计原则

自 硬定理 /开放式紧急情况:

  • 教力学,而不是结论 --协议上下文提供了可调用的知识,因此LLM了解它所看到的内容
  • 生成摩擦 --三个相互竞争的损益框架,每个都有效,每个都不完整。他们之间的分歧揭示了一些东西。
  • 每个结构都有其溶解条件 --成本基础分类说明了其自身的局限性
  • 没有一个工具能告诉全部情况 --工具组合。投资组合展示 什么,活动展示 如何,存款人展示 谁,表演节目 当.

项目结构

src/
  index.ts          — MCP server entry point, tool registration
  config.ts         — Vault addresses, RPC config, selectors, event topics
  types.ts          — TypeScript interfaces for all domain objects
  api.ts            — Raw RPC calls, event fetching, DefiLlama/subgraph clients
  formatters.ts     — Human-readable output formatting
  tools/
    context.ts      — get_protocol_context (Layer 1)
    vault.ts        — get_vault_details
    portfolio.ts    — get_vault_portfolio
    depositors.ts   — get_vault_depositors, analyze_depositor_profit, buildCostBasisMap
    activity.ts     — get_vault_activities
    performance.ts  — get_vault_performance
    dashboard.ts    — get_youtube_dashboard
    external-positions.ts — get_external_positions

许可证

麻省理工学院