Skip to main content
Glama

Servidor MCP de Lido

El servidor MCP de referencia para Lido: staking de stETH, gestión de posiciones, gobernanza y monitoreo de bóvedas de ganancias (earn vaults), todo invocable de forma nativa por cualquier agente de IA.

Conecta Claude, Cursor o cualquier agente compatible con MCP a este servidor y haz staking de ETH desde una conversación. No se necesita código de integración personalizado.

Por qué existe esto

Los agentes de IA necesitan interactuar con protocolos DeFi, pero tender un puente entre el lenguaje natural y las transacciones en cadena es difícil: claves privadas, estimación de gas, peculiaridades del protocolo (rebasing de stETH), seguridad de las transacciones. Este servidor MCP ofrece a los agentes una interfaz estructurada y segura para Lido:

  • Cada operación de escritura admite simulación (dry-run): los agentes previsualizan los costos de gas y verifican las transacciones antes de ejecutarlas.

  • Un documento de modelo mental (lido.skill.md) enseña a los agentes conceptos de Lido antes de actuar: mecanismos de rebasing, compensaciones entre wstETH y stETH, patrones de staking seguros.

  • Monitoreo de bóvedas en vivo con alertas inteligentes: observa las bóvedas de Lido Earn para detectar cambios en el rendimiento, variaciones en el TVL, anomalías en el precio de las acciones y cambios en la asignación del protocolo (Aave, Morpho, Pendle, Gearbox, Maple), con alertas en lenguaje sencillo vía Telegram o correo electrónico.

  • Motor de reglas flexible: define condiciones de alerta como expresiones legibles como apr < 3.0 o spread_vs_steth < -0.5, con comparación automática de referencia con stETH.

  • Explicaciones impulsadas por IA: utiliza opcionalmente Claude para traducir eventos brutos de la bóveda en mensajes en lenguaje sencillo que explican qué cambió, por qué y si necesitas actuar.

  • Barreras de seguridad: modos read-only, dry-run-only y full, listas de permitidos de receptores, límites de ETH por transacción.

Servidor MCP

Más de 70 herramientas en staking, gobernanza, monitoreo de bóvedas y L2; cada operación de escritura tiene como valor predeterminado dry_run: true.

Categoría

Herramientas

Consulta

lido_get_balances, lido_get_staking_apr, lido_get_rewards, lido_get_protocol_status, lido_convert_amounts, lido_get_withdrawal_requests, lido_get_claimable_eth, lido_get_chain_info

Inteligencia

lido_analyze_position, lido_estimate_withdrawal_time, lido_check_steth_rate, lido_check_gas_conditions, lido_get_swap_quote

Stake / Wrap / Retiro

lido_stake_eth, lido_wrap_steth_to_wsteth, lido_wrap_eth_to_wsteth, lido_unwrap_wsteth_to_steth, lido_request_withdrawal, lido_claim_withdrawal, lido_swap_eth_for_ldo

Gobernanza

Estado de gobernanza dual + bloqueo/desbloqueo de stETH en fideicomiso de veto, votación/análisis/decodificación de Aragon DAO, propuestas + votación en Snapshot, mociones + objeciones de Easy Track, poder de voto + umbrales de veto + cronograma

Monitor de Bóvedas Earn

lido_list_earn_vaults, lido_watch_vault, lido_unwatch_vault, lido_add_rule, lido_remove_rule, lido_check_vault, lido_list_watches, lido_get_vault_alerts, lido_test_notifications

stVaults V3

Listar, inspeccionar, financiar, retirar, pausar/reanudar depósitos de beacon, acuñar/quemar acciones, reequilibrar, crear bóveda, solicitar salida de validador

Info del Protocolo

TVL, estructura de comisiones, módulos de staking, operadores de nodos, direcciones de contratos

Gestión de Tokens

Información de tokens, asignaciones (allowances), aprobar, transferir, revocar para stETH/wstETH/LDO

NFTs de Retiro

Búsqueda de propietario, transferir, aprobar

L2 wstETH

Saldo, transferencia, información en Base/Optimism/Arbitrum + saldos entre cadenas en 11 L2s

L2 stETH

Saldo de stETH con rebasing + transferencia en Optimism

6 prompts guiados: flujos de trabajo de varios pasos para staking (stake-eth-safely), análisis de posición (manage-position), retiros (withdraw-steth), revisión de gobernanza (review-governance), gestión de bóvedas (manage-vault) y participación en gobernanza (participate-governance).

4 recursos en vivo: lido://position/{address}, lido://protocol/status, lido://governance/state, lido://governance/votes.

Modelo mental del agente (lido.skill.md): ver "Por qué existe esto" arriba.

Decisiones clave de diseño

  • SDK real, sin simulaciones: todas las operaciones pasan por @lidofinance/lido-ethereum-sdk y viem hacia contratos reales de Ethereum.

  • Dry-run por defecto: cada herramienta que cambia el estado tiene como valor predeterminado dry_run: true. Los agentes deben establecer explícitamente dry_run: false para ejecutar.

  • Errores conscientes del protocolo: los errores brutos de blockchain (fondos insuficientes, reversiones, conflictos de nonce, límites de stake, pausado) se traducen a mensajes legibles por humanos.

  • Anotaciones MCP: cada herramienta declara readOnlyHint, destructiveHint, idempotentHint y openWorldHint para que los agentes sepan qué herramientas son seguras de llamar sin confirmación.

  • Consciente de L2: establece LIDO_CHAIN_ID en Base, Optimism o Arbitrum y el servidor expone solo herramientas específicas de wstETH; las herramientas solo de L1 se excluyen automáticamente.

Monitor de Bóvedas Earn

Observa las bóvedas de Lido Earn (EarnETH, EarnUSD) y avisa a los depositantes cuando algo que vale la pena saber ha cambiado, en lenguaje sencillo, no en datos brutos.

Cómo funciona

  1. Observa una bóveda: llama a lido_watch_vault con una dirección de bóveda (usa lido_list_earn_vaults para descubrirlas).

  2. Define reglas de alerta: escribe condiciones como expresiones legibles evaluadas contra datos de la bóveda en vivo.

  3. Recibe alertas: recibe notificaciones vía Telegram o correo electrónico cuando se activen las reglas, con explicaciones generadas por IA.

El monitor se ejecuta continuamente:

  • Se suscribe a eventos Deposit/Withdraw en cadena en cada bóveda y TokenRebased en stETH para una reacción casi en tiempo real.

  • Ejecuta una verificación de salud mediante sondeo de 30 segundos como respaldo.

  • Compara el APR de la bóveda contra el APR SMA de stETH de la API de Lido en cada verificación.

  • Detecta cambios en la asignación del protocolo en los protocolos subyacentes (Aave, Morpho, Pendle, Gearbox, Maple) leyendo los saldos de las subbóvedas en cadena para las bóvedas de Lido Earn conocidas.

  • Persiste todo el estado (observaciones, instantáneas, alertas, deduplicación) en SQLite: sobrevive a reinicios.

  • Ventana de deduplicación de 6 horas por regla por bóveda para evitar la fatiga por alertas.

Entrega de alertas

  • Telegram: alertas formateadas con indicadores de gravedad, contexto de la bóveda, comparación de referencia y orientación accionable.

  • Correo electrónico: alertas formateadas en HTML con el mismo contexto.

  • Explicaciones de IA (opcional): cuando se establece ANTHROPIC_API_KEY, cada alerta se pasa a Claude, que genera una explicación en lenguaje sencillo que cubre:

    1. Qué cambió: la métrica específica que activó la alerta.

    2. Por qué sucedió probablemente: explicaciones plausibles basadas en los datos.

    3. Qué considerar: si el depositante debe actuar, esperar o investigar.

Motor de reglas

Las reglas no son un conjunto fijo de alertas predefinidas, son expresiones abiertas que defines en lenguaje natural a través del agente. Dile a Claude "avísame si el rendimiento cae por debajo del 3%" y escribirá la regla apr < 3.0. Di "notifícame si la bóveda comienza a tener un rendimiento inferior al de stETH en más de medio punto porcentual mientras el TVL también está cayendo" y compondrá spread_vs_steth < -0.5 and tvl_change_pct < 0. El agente traduce tu intención en una expresión mathjs evaluada contra las métricas de la bóveda en vivo:

Variable

Qué es

apr / apy

APR actual de la bóveda (%)

apr_prev / apy_prev

APR de la instantánea anterior

apr_delta / apy_delta

Cambio de APR entre instantáneas (puntos porcentuales)

tvl

Valor total bloqueado

tvl_prev

TVL de la instantánea anterior

tvl_change_pct

Cambio de TVL como porcentaje

share_price

Precio actual de la acción (activo/acción)

share_price_prev

Precio de la acción de la instantánea anterior

share_price_change_pct

Cambio del precio de la acción como porcentaje

steth_apr

Referencia de APR SMA de stETH (de la API de Lido)

spread_vs_steth

APR de la bóveda menos APR de stETH (positivo = superando el rendimiento)

max_alloc_shift

Mayor cambio de asignación de protocolo entre instantáneas (pp)

num_protocols

Número de protocolos con asignaciones activas

top_alloc_pct

Mayor asignación de un solo protocolo (%)

Reglas de ejemplo:

Expresión

Se activa cuando

apr < 3.0

El rendimiento cae por debajo del 3% — un suelo de rendimiento simple

spread_vs_steth < 0

La bóveda tiene un rendimiento inferior al staking de stETH bruto

spread_vs_steth < -0.5

La bóveda tiene un rendimiento inferior a stETH en más de 0.5pp

tvl_change_pct < -10

El TVL cae >10% entre verificaciones — fuga de capital

share_price_change_pct < -0.1

Caída del precio de la acción — posible exploit o desvinculación

apr < 3.0 and tvl_change_pct < -5

El rendimiento cayó Y el capital se está yendo

abs(apr_delta) > 2.0

Gran oscilación de APR en cualquier dirección

apr < steth_apr - 1.0

Cae más de 1pp detrás de la referencia de stETH

apr > apr_prev * 1.5

El APR aumentó a 1.5 veces su valor anterior

max_alloc_shift > 10

La asignación del protocolo cambió en más de 10pp

top_alloc_pct > 80

Un solo protocolo tiene >80% del capital de la bóveda

Admite lógica booleana and/or/not, operadores de comparación (<, >, <=, >=, ==, !=), aritmética (+, -, *, /) y funciones matemáticas seguras (abs, min, max, round, floor, ceil, sqrt).

Cada regla incluye una plantilla de mensaje con interpolación {{variable}}:

APR dropped to {{apr}}%, below your 3% floor. stETH is at {{steth_apr}}%.

Si no se proporciona un mensaje, se genera automáticamente a partir del patrón de expresión.

El motor de reglas está aislado (sandboxed): las expresiones se analizan en un AST y se validan contra una lista de permitidos de variables, funciones y tipos de nodos. No hay ejecución de código arbitrario.

Detección de asignación de protocolo

Para las bóvedas de Lido Earn conocidas (strETH/EarnETH), el monitor lee los saldos en cadena en cada subbóveda para determinar cómo se distribuye el capital entre los protocolos subyacentes: Aave, Morpho, Pendle, Gearbox, Maple y otros. Cada verificación de salud compara la asignación actual con la instantánea anterior y detecta cambios.

Los datos de asignación aparecen en:

  • Informes de salud (lido_check_vault): muestra el desglose porcentual por protocolo.

  • Contexto de alerta: cuando se activa cualquier regla, la alerta incluye detalles del cambio de asignación (nombre del protocolo, porcentajes desde/hacia, delta).

  • Explicaciones de IA: el LLM recibe datos de cambio de asignación y puede explicar eventos de reequilibrio en lenguaje sencillo.

  • Variables de regla: max_alloc_shift, num_protocols y top_alloc_pct te permiten escribir reglas como max_alloc_shift > 10 (alerta cuando la participación de cualquier protocolo cambia en más de 10pp).

Salud de la bóveda invocable por MCP

Otros agentes pueden consultar la salud de la bóveda mediante programación: el monitor no es solo un servicio de notificación, es un bloque de construcción:

  • lido_check_vault: verificación de salud bajo demanda para cualquier bóveda ERC-4626 (no se requiere observación). Devuelve APR, TVL, precio de la acción y diferencial de referencia de stETH.

  • lido_list_earn_vaults: descubre bóvedas de ganancias Mellow disponibles desde la API en vivo.

  • lido_get_vault_alerts: consulta el historial de alertas mediante programación.

Casos de uso objetivo

1. El desarrollador hace staking de ETH a través de Claude: código de integración cero

User: "Stake 1 ETH with Lido"

Claude: Let me walk you through this safely.
  → Checks protocol status (not paused, limits ok)
  → Checks your balance (1.5 ETH available)
  → Shows current APR (3.4%, 7-day SMA 3.3%)
  → Dry-runs the transaction (gas: 0.002 ETH)
  → "Ready to stake 1 ETH. Gas cost ~0.002 ETH. Confirm?"

User: "Yes"

Claude: → Executes stake
  → "Done. TX: 0xabc... You received 1.0 stETH."

2. El depositante recibe un mensaje de Telegram explicando por qué el rendimiento de EarnETH cayó durante la noche

User: "Watch the EarnETH vault. Alert me if yield drops below 4%
       or it falls behind raw stETH staking."

Claude: → Discovers vault via lido_list_earn_vaults
  → Calls lido_watch_vault with rules:
    - apr < 4.0 [warning]
    - spread_vs_steth < 0 [critical]
  → "Watching EarnETH (0x...). APR: 5.2%, TVL: 12,450 ETH.
     You'll get a Telegram alert if APR drops below 4%
     or the vault underperforms stETH."

[Overnight, APR drops to 3.6%]

Telegram: 🚨 EarnETH — Warning

  APR dropped to *3.60%*, down from 5.20%.

  The vault's yield fell 1.6pp since the last check. This likely
  reflects a rotation in the underlying strategy or temporary
  market conditions. The vault is still outperforming direct stETH
  staking (3.40%) by 0.20pp, so no immediate action is needed —
  but worth monitoring if the trend continues.

  • Current APR: 3.60%
  • Previous APR: 5.20%
  • stETH benchmark: 3.40%
  • Spread vs stETH: 0.20pp above

  View on Etherscan

3. El agente consulta la salud de la bóveda antes de decidir depositar

Agent: → Calls lido_check_vault(address="0x...")

Response:
  === Vault Health: EarnETH ===
  TVL: 12,450.00 ETH
  Share Price: 1.034521 ETH/share
  APR: 5.20%

  --- Benchmark ---
  stETH APR (SMA): 3.40%
  Spread: 1.80pp above stETH benchmark

  --- Protocol Allocations ---
  Aave: 32.1%
  Morpho: 28.4%
  Pendle: 18.7%
  Gearbox: 12.3%
  Maple: 8.5%

  Last checked: 2025-03-23T14:30:00.000Z

Agent: → Diversified allocation, positive spread — decides to deposit

4. Configuración de reglas en lenguaje natural

User: "I want to know if the vault starts doing worse than just
       holding stETH, especially if people are also pulling money out.
       And give me a heads up if the share price ever drops suddenly —
       that could mean something bad happened."

Claude: I'll set up three rules for you.
  → Calls lido_add_rule: "spread_vs_steth < 0 and tvl_change_pct < -5" [warning]
    Message: "Vault underperforming stETH (spread {{spread_vs_steth}}pp)
              while TVL dropped {{tvl_change_pct}}%"
  → Calls lido_add_rule: "share_price_change_pct < -0.1" [critical]
    Message: "Share price dropped {{share_price_change_pct}}% — investigate immediately"
  → Calls lido_add_rule: "spread_vs_steth < -1.0" [critical]
    Message: "Vault is {{spread_vs_steth}}pp behind stETH — significant underperformance"

  "Done. Three rules active:
   1. Warning if the vault trails stETH while TVL is declining
   2. Critical alert on any sudden share price drop (>0.1%)
   3. Critical if the vault falls more than 1pp behind stETH

   Dry-ran all three against current data — none would fire right now
   (APR 5.2% vs stETH 3.4%, TVL stable). You'll get alerts the
   moment any condition is met."

5. El colaborador de la DAO consulta y vota sobre propuestas de gobernanza

User: "Show me the latest Lido DAO votes"

Claude: → Calls lido_get_aragon_vote
  → "Vote #185: Open — Yea 15.2M LDO (92%), Nay 1.3M LDO (8%)
     Vote #184: Executed — passed with 98% support ..."

User: "Vote yes on #185"

Claude: → Calls lido_vote_on_proposal (dry_run=true)
  → "Dry run: Vote Yea on #185. You have 5,000 LDO. Gas: ~0.001 ETH. Confirm?"

User: "Yes"

Claude: → Executes vote
  → "Done. Voted Yea on #185. TX: 0xabc..."

6. El staker señala oposición a través de la Gobernanza Dual

User: "I want to signal opposition to the latest proposal."

Claude: → Calls lido_get_governance_state
  → "Governance is in Normal state. Veto signalling is at 0.12%,
     well below the first seal threshold of 1%."
  → Dry-runs lock of 10 stETH in escrow
  → "Ready to lock 10 stETH for governance. Gas: ~0.003 ETH. Confirm?"

User: "Yes"

Claude: → Approves stETH for escrow + locks
  → "Done. 10 stETH locked in veto signalling escrow. TX: 0xdef..."

Configuración

git clone <repo-url>
cd lido-mcp-server
cp .env.example .env  # edit with your RPC URL, private key, chain ID
npm install && npm run build && npm start

Consulta .env.example para todas las opciones de configuración (ID de cadena, modo de seguridad, Telegram, SMTP, Anthropic).

Conectar a Claude / Cursor

{
  "mcpServers": {
    "lido": {
      "command": "bash",
      "args": ["/path/to/lido-mcp-server/start.sh"],
      "env": {
        "LIDO_RPC_URL": "https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY",
        "LIDO_PRIVATE_KEY": "0xYOUR_PRIVATE_KEY",
        "LIDO_CHAIN_ID": "1"
      }
    }
  }
}

Licencia

MIT

-
security - not tested
F
license - not found
-
quality - not tested

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/the-wunmi/lido-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server