MCP server for Lagoon DeFi vault analytics - Natural language access to vault data, portfolios, and performance metrics
This MCP server has 23 tools across DeFi analytics covering vault data, portfolio analysis, and transaction history. Most tools have descriptions and parameters documented, but quality is inconsistent. Many parameter descriptions are minimal (under 50 chars), lacking guidance on expected formats, ranges, or constraints. Output schemas are not explicitly documented in the code, descriptions say 'returns' but do not detail response structure. Error handling guidance is absent; tools do not indicate how LLMs should recover from failures. Parameter descriptions often state WHAT is returned but not HOW to use it or what format is expected. Several tools (get_global_tvl, list_chains, list_curators) have no input parameters, which is correct, but the descriptions could better explain when to call them relative to other tools. The smoke test file reveals that tools are factory-injected, but the actual tool definitions (JSON Schema, output docs) are not visible in the provided source excerpts. Several tool names are clear (get_vault_data, search_vaults), but others are generic (analyze_risk vs analyze_risks, unclear distinction without detailed descriptions). The disclaimer pattern in responses suggests financial sensitivity, but disclaimers are not mentioned in tool descriptions, and agents may not anticipate them. Overall, the server demonstrates solid baseline competence but falls short of production-grade quality due to incomplete schema documentation and missing error guidance.
Analyzes risk metrics for a single vault including concentration risk, volatility, and protocol risk.
Analyzes risk metrics for multiple vaults in a batch operation.
Compares multiple vaults across key metrics (performance, composition, risk, etc.).
Meta-tool for progressive tool discovery. Enables models to search and explore available tools by category or keyword.
Exports vault data, transactions, or portfolio data in CSV or JSON format.
Retrieves information about a specific asset (token) on a given blockchain.
Retrieves detailed information about a specific curator, including their vaults and performance metrics.
Output schemas not documented. Tool descriptions state 'returns X' but do not detail response structure, field types, or pagination. LLMs cannot plan downstream calls or extract specific fields without seeing the schema.
Parameter descriptions lack actionable constraints. 'filters' object in search_vaults has no detail on allowed keys, structure, or format. 'scenario' parameter in simulate_vault offers no guidance. Agents cannot construct valid requests without examples or formal constraints.
No error recovery guidance. Tools do not indicate what to do if a vault is not found, if a chain is unsupported, or if indexing is stale. Agents cannot self-correct on failure, they have no actionable error messages.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 61 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 40 | - | v1 |
Returns the total value locked across all Lagoon vaults in USD. Provides protocol-wide TVL metric.
Retrieves the historical state of a vault at a specific timestamp, including price per share.
Returns the last indexed block per chain. Lets a downstream analysis detect stale data before reporting wrong APR/TVL.
Retrieves historical price data for a vault's shares over a specified time period.
Retrieves transaction history for a vault with filtering and pagination options.
Retrieves a user's portfolio of vault positions and holdings.
Returns the protocol composition of a vault's underlying assets with diversification analysis.
Retrieves comprehensive data about a specific vault including performance, composition, and metadata.
Analyzes and returns performance metrics for a vault over specified time periods.
Lists all supported blockchain chains available in the Lagoon protocol.
Lists all vault curators in the Lagoon protocol.
Recommends optimal vault portfolio allocation based on Modern Portfolio Theory and risk-return analysis.
Predicts future yield for a vault based on historical performance and protocol metrics.
Executes a custom GraphQL query against the Lagoon API. Advanced tool for custom data access.
Searches for vaults matching specified criteria (name, curator, chain, performance, etc.).
Simulates vault performance under different scenarios (fee changes, asset rebalancing, etc.).
Unclear tool distinction. 'analyze_risk' and 'analyze_risks' (singular vs plural) suggest one accepts a single vault, the other multiple, but descriptions do not explicitly state this. 'get_vault_data' vs 'search_vaults' overlap is not clarified, when should each be used?
Financial disclaimer pattern is not surfaced in tool descriptions. Smoke test shows disclaimers are appended to responses, but agents are not told that all tools return financial disclaimers. Agents may fail to surface these to users or strip them incorrectly.
Pagination and result limits not documented. Tools like search_vaults, compare_vaults, and list_curators do not state how many results they return or whether pagination is supported. LLMs cannot handle large result sets or request more data.
Missing parameter type hints in descriptions. 'vaultAddress' accepts strings but the description does not say 'Ethereum-style hex address (0x...)' or validate format. 'timestamp' lacks clarification: Unix seconds or milliseconds? What timezone? Agents will guess and fail.
Ambiguous 'filters' parameter design. Multiple tools (search_vaults, get_transactions) accept an untyped 'filters' object. Without documentation of what keys/values are valid, agents cannot construct proper requests and will iterate on failures.