使用说明
丽都MCP服务器
您的人工智能代理可以下注、取消下注、投票和监控收益率,而无需您编写一个合同调用。
MCP(模型上下文协议)服务器,使Lido质押操作可由任何AI代理本地调用。说 "Stake 1 ETH with Lido (dry run first)" 剩下的由你的代理处理——针对真实的以太坊主网合约,而不是模拟。
https://github.com/user-attachments/assets/7dfd2244-6576-4c14-900a-705175a355f3
特性
- 标桩:抵押ETH→ stETH,请求提款,打包/解包stETH↔ wstETH
- 平衡与奖励:查询持有量、估计质押奖励、协议统计数据
- 治理:列出Lido DAO提案,通过Aragon投票
- 保险库监控:跟踪Lido Earn保险库健康、收益基准、警报
- 干运行模式:每个写操作都支持执行前的模拟
- 没有嘲笑:所有数据均来自实时以太坊主网合约
快速开始
安装和构建
git clone https://github.com/ghost-clio/lido-mcp.git
cd lido-mcp
npm install
npm run build
连接到克劳德桌面
添加到您的 claude_desktop_config.json:
{
"mcpServers": {
"lido": {
"command": "node",
"args": ["/path/to/lido-mcp/dist/index.js"],
"env": {
"ETH_RPC_URL": "https://eth.llamarpc.com",
"ETH_PRIVATE_KEY": "0x..."
}
}
}
}
连接到光标
在光标设置中→ MCP服务器,添加:
{
"lido": {
"command": "node",
"args": ["/path/to/lido-mcp/dist/index.js"]
}
}
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
ETH_RPC_URL |
否 | 以太坊RPC端点(默认值: https://eth.llamarpc.com) |
ETH_PRIVATE_KEY |
用于写入 | 用于质押/投票交易的十六进制编码私钥 |
只读操作(余额、统计数据、提案)在没有私钥的情况下工作。
试试看
You: "How much stETH does vitalik.eth hold?"
Agent: [calls lido_balance] → 0.0 stETH, 0.0 wstETH, 4,291.7 ETH
You: "Stake 1 ETH with Lido, dry run first"
Agent: [calls lido_stake with dry_run=true] → Simulation passed. Gas: 82,341. Ready to execute.
可用工具
标桩
| 工具 | 描述 | 参数 |
|---|---|---|
lido_stake |
质押ETH→ stETH | amount, dry_run |
lido_unstake |
请求提取stETH→ ETH | amount, dry_run |
lido_wrap |
包装stETH→ wstETH | amount, dry_run |
lido_unwrap |
解开wstETH→ stETH | amount, dry_run |
查询
| 工具 | 描述 | 参数 |
|---|---|---|
lido_balance |
ETH/stETH/wstETH余额 | address |
lido_rewards |
预计质押奖励 | address, days |
lido_stats |
全协议统计 | -- |
治理
| 工具 | 描述 | 参数 |
|---|---|---|
lido_proposals |
列出DAO提案 | status, limit |
lido_vote |
对提案进行投票 | proposal_id, support, dry_run |
保险库监视器
| 工具 | 描述 | 参数 |
|---|---|---|
vault_health |
保险库状态和分配 | vault |
vault_alerts |
保险库警报和更改 | vault, since |
vault_benchmark |
收益率与stETH/Aave基准 | vault |
建筑
lido-mcp/
├── src/
│ ├── index.ts # MCP server entry point (stdio transport)
│ ├── tools/
│ │ ├── staking.ts # lido_stake, lido_unstake, lido_wrap, lido_unwrap
│ │ ├── balance.ts # lido_balance, lido_rewards, lido_stats
│ │ ├── governance.ts # lido_proposals, lido_vote
│ │ └── vault.ts # vault_health, vault_alerts, vault_benchmark
│ ├── lib/
│ │ ├── lido.ts # Lido contract interactions via viem
│ │ ├── vault-monitor.ts # Earn vault monitoring + benchmarking
│ │ └── constants.ts # Contract addresses, ABIs
│ └── types.ts # TypeScript interfaces
├── lido.skill.md # Agent skill file (teaches Lido mental model)
├── package.json
├── tsconfig.json
└── README.md
运作原理
- MCP服务器启动于 标准 并注册了12个工具
- 读取操作 通过使用公共RPC(不需要API密钥)
viemspublicClient - 写入操作 需要
ETH_PRIVATE_KEY和使用viemswalletClient - 演习 通过以下方式模拟交易
eth_call/estimateGas--无状态更改 - 所有金额都是人类可读的格式(ETH,而不是wei)——转换是在内部处理的
合约地址(以太坊主网)
| 合同 | 地址 |
|---|---|
| stETH | 0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84 |
| wstETH | 0x7f39C581F595B53c5cb19bD0b3f8dA6c935E2Ca0 |
| 提款队列 | 0x889edC2eDab5f40e902b864aD4d7AdE8E412F9B1 |
| 阿拉贡投票 | 0x2e59A20f205bB85a89C53f1936454680651E618e |
例子
检查余额
> Use lido_balance for address 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
模拟质押
> Stake 1 ETH with Lido (dry run first)
监控保险库
> How is the Earn ETH vault doing? Compare it to stETH and Aave.
检查治理
> Show me the latest Lido DAO proposals
测试
npm run build
node --test test/tools.test.cjs # 23 tests
| 套件 | 测试 | 它检查什么 |
|---|---|---|
| 项目结构 | 12 | 所有源文件都存在 |
| 刀具登记 | 5 | 每个模块正确的刀具计数(4+3+2+3=12) |
| 工具名称 | 1 | 源中存在的所有12个工具名称 |
| 干运行支持 | 1 | 写入工具接受Dry_run参数 |
| 合约地址 | 2 | stETH+wstETH地址与Lido文档匹配 |
| 编译后存在构建输出 | 1 | dist/index.js |
| 技能文件 | 1 | lido.Skill.md包含lido心智模型 |
常见问题解答
为什么选择MCP而不是REST API? MCP是一种标准协议,允许AI代理在本地调用工具——没有HTTP客户端,没有身份验证令牌,没有解析。代理说“stake 1 ETH”,MCP服务器处理序列化、RPC调用和响应格式化。它适用于Claude Desktop、Cursor和任何开箱即用的MCP兼容客户端。
这可以与其他DeFi MCP组合吗? 对。使用此MCP进行质押,然后将得到的wstETH地址传递给Aave MCP进行借贷。MCP工具是独立的——代理自然地在它们之间进行协调。
目标用户是谁?
任何构建与Lido交互的AI代理的人——DeFi自动化、投资组合管理机器人、治理参与代理或质押聊天机器人。技能档案(lido.skill.md)即使没有经过DeFi培训的代理也可以访问它。
已知限制
- 天然气估算:模拟试运行,但在响应中不报告天然气成本。代理人还不能做出具有成本意识的质押决策。
- 测试网:只配置了主网合约。集
ETH_RPC_URL到Holesky RPC并更新中的合约地址constants.ts用于测试网。 - 无缓存:每次调用时,读取操作都会撞击RPC。对于高频代理,添加应用程序级缓存。
- 保险库范围:仅监控Lido Earn保险库,不监控SimpleDVT或CSM模块。
代理技能档案
这 lido.skill.md 该文件向人工智能代理传授了Lido心理模型——重基机制、stETH与wstETH的权衡、安全质押模式、常见陷阱和工作流示例。请将您的代理指向此文件以获得最佳结果。
链接
代理堆栈的一部分
许可证
麻省理工学院