Skip to main content

Provider matrix

ProviderCapabilitiesKey required
defillamachains/protocols + bridge analytics (bridge list, bridge details)Route-specific
aavelend (read + execution), yield (read + execution), rewards (execution)No
morpholend (read + execution), yield (read + execution)No
kaminolend, yield (Solana mainnet, read only)No
moonwelllend (read + execution), yield (read + execution)No
acrossbridge quote + executionNo
lifibridge quote + executionNo
bungeebridge quote, swap quoteNo (default mode)
1inchswap quoteYes
uniswapswap quoteYes
temposwap quote + executionNo
taikoswapswap quote + executionNo
jupiterswap quote (Solana)Optional
fibrousswap quoteNo
API keys in defi-cli are provider constraints, not CLI monetization/auth. If a provider endpoint requires credentials, the corresponding command requires that provider key.

Execution auth

See Execution & Signing for the full signing backend reference. In brief: plan with --wallet (OWS, recommended) or --from-address (local signer). Tempo swap planning always uses --from-address with --signer tempo for submit.

Key requirements by route

  • swap quote --provider 1inch -> DEFI_1INCH_API_KEY
  • swap quote --provider uniswap -> DEFI_UNISWAP_API_KEY
  • swap quote --provider jupiter -> DEFI_JUPITER_API_KEY (optional for higher limits)
  • chains assets, bridge list, bridge details -> DEFI_DEFILLAMA_API_KEY
Optional Bungee dedicated backend mode requires:
  • DEFI_BUNGEE_API_KEY
  • DEFI_BUNGEE_AFFILIATE
If either is missing, bungee quotes use public backend.

Routing and fallback

  • Lending routes by --provider (aave, morpho, kamino, moonwell) using direct adapters only.
  • lend positions currently supports --provider aave|morpho|moonwell.
  • yield positions currently supports --providers aave,morpho,moonwell.
  • yield opportunities aggregates direct providers and accepts --providers aave,morpho,kamino,moonwell.
  • yield history uses the same direct providers and accepts --providers aave,morpho,kamino.
  • bridge quote and swap quote require explicit --provider; there are no implicit provider defaults.
  • Execution commands (plan, run, submit, status) require --provider for multi-provider surfaces.
  • swap quote --type exact-output is currently supported by uniswap and tempo; swap plan --type exact-output is currently supported by tempo.
  • Provider/chain-family mismatches fail fast with unsupported errors (for example --provider jupiter on EVM chains).

Data caveats

  • Morpho can surface very high APY in tiny markets. Use --min-tvl-usd.
  • Kamino currently supports Solana mainnet only.
  • Solana devnet/testnet and custom Solana CAIP-2 references are unsupported.
  • Bungee quote support is chain + token dependent.
  • Fibrous currently supports base, hyperevm, and citrea (monad temporarily disabled).
  • Bungee quote requests use deterministic placeholder sender/receiver addresses for quote-only resolution (0x000...001).
  • Across may omit native USD fee fields for some routes; when missing, estimated_fee_usd can fall back to a stable-asset approximation while token-unit fees remain in fee_breakdown.
  • Tempo Stablecoin DEX currently supports USD-denominated TIP-20 assets only; supported pairs are auto-routed on-chain through quote-token relationships.
  • Tempo DEX swap execution settles to the caller; --recipient must match --from-address (or be omitted).
  • actions estimate returns fee-token-denominated estimates for Tempo actions (includes fee_unit and fee_token fields).
  • --signer tempo enables agent wallet support via the Tempo CLI (tempo wallet -j whoami), with delegated access keys and expiry checks. Requires the Tempo CLI installed.
  • Local signing is available for actions planned with --from-address. See Execution & Signing.
  • Moonwell uses on-chain RPC reads (no API key); supported on Base and Optimism. Execution targets mToken contracts (Compound v2 style); use --pool-address to specify the mToken directly or let auto-resolution match by underlying asset. Moonwell does not support --on-behalf-of.
  • Moonwell’s mWETH market auto-unwraps to native ETH on borrow/withdraw and may expect native ETH for supply/repay. The CLI planner uses the standard ERC-20 path (approve + call with value=0), so callers must handle ETH/WETH wrapping externally.