Tools Reference
All 28 Lido tools available in Moly
Moly exposes 28 tools across the CLI and MCP server. The dashboard exposes 17 of these (13 Lido core + 4 bridge). The CLI adds settings, bounds, ledger, position, and alert tools on top.
Read Tools (7)
| Tool | Parameters | Returns |
|---|---|---|
| get_balance | address? | ETH, stETH, wstETH balances |
| get_rewards | address?, days? | Reward history with APR |
| get_conversion_rate | (none) | stETH ↔ wstETH rate |
| get_withdrawal_requests | address? | Pending request IDs |
| get_withdrawal_status | request_ids | Status per request |
| get_proposals | count? | Recent DAO proposals |
| get_proposal | proposal_id | Full proposal details |
Write Tools (6)
| Tool | Parameters | Returns |
|---|---|---|
| stake_eth | amount_eth, dry_run? | stETH received, gas estimate |
| request_withdrawal | amount_steth, dry_run? | Request ID, queue position |
| claim_withdrawals | request_ids, dry_run? | ETH claimed |
| wrap_steth | amount_steth, dry_run? | wstETH received |
| unwrap_wsteth | amount_wsteth, dry_run? | stETH received |
| cast_vote | proposal_id, support, dry_run? | Vote confirmation |
In simulation mode, all write tools automatically run as dry-run. Pass
dry_run: false to override (MCP server only).Bridge Tools (4, mainnet only)
Bridge ETH or wstETH from Base/Arbitrum to Ethereum L1 via the LI.FI protocol. These tools only work on mainnet.
| Tool | Parameters | Returns |
|---|---|---|
| get_l2_balance | source_chain, address? | ETH and wstETH balances on the L2 |
| get_bridge_quote | source_chain, token, amount, to_token? | Quote with estimated output, duration, fees |
| bridge_to_ethereum | source_chain, token, amount, to_token?, dry_run? | Bridge tx hash (or simulation result) |
| get_bridge_status | tx_hash, source_chain | Bridge progress: pending, in-progress, complete |
Typical bridge flow: check balance with
get_l2_balance, get a quote with get_bridge_quote, execute with bridge_to_ethereum, then track with get_bridge_status. Bridges take 1-20 minutes.Settings Tools (2)
| Tool | Parameters | Returns |
|---|---|---|
| get_settings | (none) | Current mode, network, RPC (keys redacted) |
| update_settings | network?, mode?, rpc?, model? | Updated config |
Bounds Tools (2)
Policy bounds gate all write operations. The agent cannot exceed these limits.
| Tool | Parameters | Returns |
|---|---|---|
| get_bounds | (none) | Current limits: max stake per tx, daily cap, gas reserve, governance auto-vote |
| set_bounds | maxStakePerTx?, maxDailyStake?, minEthReserve?, autoRestakeThreshold?, governanceAutoVote? | Updated bounds |
Position Tool (1)
| Tool | Parameters | Returns |
|---|---|---|
| get_total_position | address? | Cross-chain aggregated position: ETH + stETH + wstETH across Ethereum, Base, Arbitrum |
Ledger Tools (2)
Every tool execution is logged to a SQLite ledger for auditability.
| Tool | Parameters | Returns |
|---|---|---|
| get_trade_history | tool?, since?, limit? | Filtered activity log entries |
| get_staking_summary | since? | Aggregate stats: total ops, staked ETH, errors |
Alert Tools (4)
Configure alerts that trigger via Telegram or webhook when conditions are met. Requires the monitor daemon running (moly monitor start).
| Tool | Parameters | Returns |
|---|---|---|
| set_alert | condition, threshold?, channel? | Created alert with ID |
| list_alerts | (none) | All configured alerts |
| remove_alert | id | Removal confirmation |
| configure_alert_channels | telegram_token?, telegram_chat_id?, webhook_url? | Updated channel config |