Lido MCP
Model Context Protocol server for AI-native Lido ETH staking - The Synthesis Hackathon 2026 - aox.llc
Ask AI about Lido MCP
Powered by Claude Β· Grounded in docs
I know everything about Lido MCP. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
Lido MCP Server
Model Context Protocol (MCP) server for Lido Finance operations
Built by AOX (@AOXexchange, aox.llc) for The Synthesis Ethereum Agent Hackathon 2026.
Overview
This MCP server gives AI agents native access to Lido staking operations. Point Claude (or any MCP-compatible client) at this server and stake ETH from a conversation β zero custom code.
Transport: stdio (MCP standard β not an HTTP server)
Wallet: 0x7e7f825248Ae530610F34a5deB9Bc423f6d63373
Available Tools
| Tool | Description | Network |
|---|---|---|
lido_stake | Stake ETH for stETH | Ethereum Mainnet |
lido_unstake | Request unstake (withdrawal queue) | Ethereum Mainnet |
lido_wrap | Wrap stETH to wstETH | Base |
lido_unwrap | Unwrap wstETH to stETH | Base |
lido_balance | Check stETH/wstETH balances + live APY | Mainnet + Base |
lido_rewards | Get staking rewards data + projections | Mainnet + Base |
All write operations support dry_run: true for safe testing.
Installation
git clone https://github.com/GeObts/lido-mcp.git
cd lido-mcp
npm install
Environment Setup
cp .env.example .env
# Edit .env and set AOX_BANKER_PRIVATE_KEY (never commit real keys)
The server loads the private key from (first match wins):
AOX_BANKER_PRIVATE_KEYenvironment variable (set by MCP client config).envfile in the project root~/.openclaw/.env(legacy AOX agent path)
Usage with MCP Clients
Claude Desktop
Add to your Claude Desktop config (claude_desktop_config.json):
{
"mcpServers": {
"lido": {
"command": "node",
"args": ["/path/to/lido-mcp/index.js"],
"env": {
"AOX_BANKER_PRIVATE_KEY": "0xYourPrivateKeyHere"
}
}
}
}
Restart Claude Desktop. The Lido tools appear automatically.
Claude Code
claude mcp add lido node /path/to/lido-mcp/index.js
Example Conversation
User: "Stake 0.01 ETH via Lido"
Claude: Calls lido_stake with dry_run: true first
Simulation successful:
- Stake: 0.01 ETH β ~0.01 stETH
- Gas: ~0.015 ETH
- Current APY: 3.2% (live from Lido API)
Proceed with the real transaction?
User: "Yes"
Claude: Calls lido_stake with dry_run: false
Transaction confirmed:
- Hash:
0x...- stETH received: 0.00998
- Now earning staking rewards
Live Proof β Dry Run Results
Real simulations executed on mainnet:
lido_stake (dry_run)
{
"success": true,
"dry_run": true,
"operation": "stake",
"amount": "0.01",
"contract": "0xae7ab96520DE3A18E5e111B5EaAb095312D7fE84",
"network": "ethereum-mainnet",
"estimated_stETH": "0.01",
"current_apy_percent": 3.2,
"gas_estimate": "~0.015 ETH"
}
lido_balance (live query)
{
"success": true,
"address": "0x7e7f825248Ae530610F34a5deB9Bc423f6d63373",
"total_stETH_equivalent": "0.0",
"current_apy_percent": 3.2,
"apy_source": "Lido API (live)"
}
Security
This server handles real funds.
- Private keys stored in
.env(gitignored) β never committed - Rate limiting: 10 calls/minute per tool
- Input validation: 0.001β10 ETH per stake transaction
- Dynamic gas pricing with 20% buffer
dry_runmode on all write operations- Live APY from Lido API (cached 5 min, falls back gracefully)
AOX Integration
This MCP server powers the Banker Agent in the AOX autonomous pipeline:
- Marketplace Agent sells leads β receives USDC
- Banker Agent swaps 20% of USDC β ETH
- This MCP server stakes ETH β stETH via
lido_stake - Treasury earns 3-4% APY on idle funds
Fully autonomous. Zero human intervention.
Hackathon
Event: The Synthesis β Ethereum Agent Hackathon 2026 Team: AOX (Agent Opportunity Exchange) Prize Track: Lido MCP ($5,000) ERC-8004: Both Marketplace and Banker agents registered on-chain Repo: https://github.com/GeObts/lido-mcp
License
MIT β See LICENSE
Built by AOX Β· aox.llc Β· @AOXexchange
