mcpField
G
grimoire-aave

grimoire-aave

github.com/franalgabaOther61.1k installsUpdated 25w ago
Repository

About grimoire-aave

grimoire-aave is a CLI skill for querying Aave V3 metadata and reserve data used in strategy inputs. It provides chain, market, and reserve lookups, plus snapshots formatted for spells.

Key features

  1. 01Check Aave protocol health
  2. 02List supported chains and markets
  3. 03Inspect market and reserve details
  4. 04Filter reserves by market or asset
  5. 05Generate reserve snapshots for spells

Use cases

  1. 01Check Aave protocol health before a query
  2. 02Review markets and user positions on a chain
  3. 03Inspect a specific asset reserve
  4. 04Prepare reserve parameters for a spell

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/franalgaba/grimoire --skill grimoire-aave

After installing, type/grimoire-aavein Claude Code to confirm it loaded.

Details

From the project README

Grimoire Aave Skill

Use this skill to query Aave V3 metadata and reserve snapshots for strategy inputs.

Preferred invocations:

  • grimoire venue aave ...
  • npx -y @grimoirelabs/cli venue aave ... (no-install)
  • bun run packages/cli/src/index.ts venue aave ... (repo-local)
  • grimoire-aave ... (direct binary from @grimoirelabs/venues)

Recommended preflight:

  • grimoire venue doctor --adapter aave --chain 1 --rpc-url <rpc> --json

Commands

  • grimoire venue aave health — check Aave protocol health
  • grimoire venue aave chains — list supported chains
  • grimoire venue aave markets --chain <id> [--user <address>] — list markets on a chain (optionally with user positions)
  • grimoire venue aave market --chain <id> --address <market> [--user <address>] — single market details
  • grimoire venue aave reserve --chain <id> --market <address> --token <address> — single reserve details
  • grimoire venue aave reserves --chain <id> [--market <address>] [--asset <symbol|address>] — list reserves with optional filters
  • grimoire venue aave reserves-snapshot --chain <id> [--market <address>] [--asset <symbol|address>] — generate spell params: block for reserves (agent-only)

Examples

grimoire venue aave health
grimoire venue aave health --format table
grimoire venue aave chains
grimoire venue aave markets --chain 1 --format table
grimoire venue aave market --chain 1 --address 0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2
grimoire venue aave reserve --chain 1 --market 0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2 --token 0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48
grimoire venue aave reserves --chain 1 --asset USDC --format table
grimoire venue aave reserves --chain 1 --asset USDC --format spell
grimoire venue aave reserves-snapshot --chain 1 --asset USDC

Use reserves-snapshot to emit a params: block for spell inputs. This is an agent-only command (output suppressed in interactive mode).

Supported Chains

ChainMarket Address
Ethereum (1)0x87870Bca3F3fD6335C3F4ce8392D69350B4fA4E2
Base (8453)0xA238Dd80C259a72e81d7e4664a9801593F98d1c5

Spell Constraints

Aave V3 actions do not currently support runtime constraints (max_slippage, min_output, etc.). The adapter handles approvals and amount conversion automatically.

aave_v3.lend(USDC, params.amount)
aave_v3.withdraw(USDC, params.amount)
aave_v3.borrow(USDC, params.amount)
aave_v3.repay(USDC, params.amount)

Metric Surface (Spell Comparisons)

Aave exposes the apy metric surface for comparisons:

aave_apy = apy(aave, USDC)
aave_apy_generic = metric("apy", aave, USDC)

Use this in conditional logic (for example, compare against Morpho APY before reallocating).

Amount Format

The @aave/client SDK uses different amount formats per action:

ActionFormatExample (0.1 USDC)
supplyvalue: "0.1"Human-readable BigDecimal
borrowvalue: "0.1"Human-readable BigDecimal
withdrawvalue: { exact: "100000" }Raw amount in exact wrapper
repayvalue: { exact: "100000" }Raw amount in exact wrapper

The adapter handles this conversion automatically.

Notes

  • Read-only metadata endpoints only.
  • Outputs JSON/table; reserves also supports --format spell.
  • Prefer --format json in automation; use table for quick interactive checks.

Comments

Markdown supported