Skip to main content
Glama

Get DeFi positions

get_defi_positions
Read-only

Retrieve DeFi positions for any Sui wallet across major protocols like Suilend, Cetus, NAVI, Scallop, and more, with summarized deposits, borrows, and fees.

Instructions

Find DeFi positions owned by a Sui wallet across major protocols: Suilend, Cetus LP, NAVI, Scallop, Bluefin, Bucket, and staked SUI. Returns extracted position summaries (deposits, borrows, liquidity, fees) instead of raw on-chain data.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
addressYesWallet address (0x...)
networkNoNetwork: 'mainnet' (default) | 'testnet' | 'devnet'

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv1.20.0
    • changedInput schema / properties / network / description
      Previous value: -"Which Sui network to run this call against: 'mainnet' (default), 'testnet', or 'devnet'. Set this per-call — different tool calls in the same session can target different networks (e.g. to compare a value on testnet against mainnet)."New value: +"Network: 'mainnet' (default) | 'testnet' | 'devnet'"
  2. First observedv1.5.0

TDQS

A4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already provide readOnlyHint=true and openWorldHint=true, so safety is covered. The description adds valuable behavioral context by stating it returns 'extracted position summaries (deposits, borrows, liquidity, fees) instead of raw on-chain data,' disclosing the output processing behavior. This goes beyond annotation data.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. The first sentence front-loads the core purpose and protocol list; the second explains the output format. Each sentence earns its place, and the structure is optimal for quick agent parsing.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With two simple parameters, full schema coverage, and helpful annotations, the description covers the essential information an agent needs: what the tool does, which protocols it scans, and what the response looks like. Minor gaps like pagination or empty-result behavior are not critical for this read-only tool, but slightly more detail on return limits would make it fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the input schema already fully documents both parameters (address and network). The description does not add extra parameter-specific meaning beyond what the schema provides, but it does hint at the wallet-scoped nature of the lookup. Baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states a specific action ('Find DeFi positions'), the resource ('owned by a Sui wallet'), and the scope ('across major protocols' with a concrete list). It also distinguishes itself by noting it returns 'extracted position summaries' rather than raw data, which helps separate it from related sibling tools like get_balance or get_wallet_overview.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool (when you need DeFi positions across the listed protocols) but doesn't explicitly mention when not to use it or point to alternatives. Given the large sibling list and overlapping tools like get_staking_summary, explicit exclusionary guidance would improve clarity.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.