Base chain DeFi yields -- Aerodrome LP, Moonwell lending, top farms ranked by APY with TVL and risk.
Single tool 'base_get_defi_opportunities' has a strong, detailed description (450+ chars) with clear use cases and anti-patterns documented. Naming is verb-noun compliant ('get_'). Input schema is present with enum constraint on 'protocol' parameter. However, the schema lacks descriptions for the 'protocol' parameter itself, violating the rule that every parameter needs a description. Output schema is documented in the description text but not in a formal JSON Schema structure returned by the tool. No error handling guidance is visible. The tool appears well-intentioned but falls short of production-grade definition quality due to missing parameter descriptions and lack of formal output schema.
Use this when you need DeFi yield opportunities specifically on Base chain. Returns Base-native protocol yields in JSON. 1. opportunities: array of yield farms ranked by APY 2. protocol: protocol name (Aerodrome, Moonwell) 3. pool: pool name and token pair 4. apy: current annual percentage yield 5. tvl: total value locked in USD 6. riskScore: risk rating (1-10, lower is safer) 7. type: yield type (LP, lending, staking) Example output: {"opportunities":[{"protocol":"Aerodrome","pool":"USDC/WETH","apy":18.5,"tvl":45000000,"riskScore":3,"type":"LP"},{"protocol":"Moonwell","pool":"USDC Lending","apy":5.2,"tvl":120000000,"riskScore":1,"type":"lending"}],"chain":"base","totalPools":12} Use this FOR deploying capital on Base chain specifically. Curated list of vetted Base-native protocols only. Do NOT use for multi-chain yields -- use defi_find_best_yields instead. Do NOT use for swap quotes on Base -- use dex_get_swap_quote instead. Do NOT use for liquidation risk -- use defi_get_liquidation_levels instead.
Parameter 'protocol' has no description in the input schema. The enum constraint is present but LLMs cannot infer what 'protocol' controls without explicit text.
Output schema is documented only in the tool description text (example JSON), not as a formal JSON Schema structure. LLMs cannot reliably parse unstructured examples to understand return types.
No error handling guidance. Tool description lacks recovery hints for failure cases (e.g., 'If protocol is unsupported, try protocol=all').
Tool description includes example output values in text form. LLMs may reuse literal values like 'Aerodrome' or 'USDC/WETH' in subsequent calls rather than adapting to context.
Inferred effective spec: 2025-06-18+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 65 | 2025-06-18+ | v2 |