DeFi Garden
Server Details
Predictively underwritten DeFi yield discovery, goal planning, and risk verification with strict APY sanity rails.
- Status
- Healthy
- Uptime
- 88.1% over 24 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-06-18
- URL
TDQS
Scored across 5 tools
Each tool has a clearly distinct role: rule explanation, multi-criteria pool search, single-pool raw lookup, DeFi Score lookup, and a forever-number calculator. get_pool and get_pool_score both retrieve pool-related data, but their outputs and purposes are explicitly separated.
Most names follow a predictable snake_case verb_noun pattern: explain_rails, find_pools, get_pool, get_pool_score. forever_number is descriptive but lacks a verb and breaks the pattern slightly.
Five tools is well-scoped for a read-only DeFi pool discovery, scoring, and calculation server. Each tool maps to a distinct step an agent would need without redundant surface area.
The surface covers the core workflow: understand filters, search pools, inspect a pool, retrieve its score, and calculate lump-sum requirements. Minor gaps exist, such as no explicit symbol-based raw pool lookup and no stated pagination or supported-chain listing, but agents can work around these via find_pools.
Available Tools
5 toolsexplain_railsAInspect
Returns DeFi Garden's active filtering rules (1000% APY sanity cap, $100K TVL floor, anomaly flagging) and the data source, for autonomous agent safety.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does well for a zero-parameter read tool: it discloses the exact rule values (1000% APY, $100K TVL), the anomaly-flagging behavior, and that a data source is included. It stops short of describing the return shape, but the disclosed content is substantive and self-consistent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence with the resource front-loaded and the concrete rule values immediately following. No filler, no redundancy, and it ends on the reason the tool exists.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a no-param, read-only explainer with no output schema, the description gives enough for correct invocation and sets expectations about returned content. It could better note that output is static policy text rather than pool data, but nothing critical is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has zero parameters, so the baseline of 4 applies; there are no parameter semantics left to explain. The description correctly implies a no-argument, informational call.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb 'Returns' plus a precisely scoped resource: 'DeFi Garden's active filtering rules', enumerated as the 1000% APY cap, $100K TVL floor, anomaly flagging, and the data source. This is clearly distinct from the sibling tools (find_pools, get_pool, get_pool_score, forever_number), which all fetch pool data rather than explain platform policy.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'for autonomous agent safety' hints at the intended use case, but there is no explicit when-to-use or when-not-to guidance and no alternative named. An agent can infer this is a policy/context lookup, but nothing states it should be called before interpreting pool results.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_poolsAInspect
Search DeFi Garden's railed pool list by token symbol, chain, project, and minimum TVL floor. Excludes anomalous rates (>1000% APY) and pools below $100K TVL. Data is a daily snapshot of DefiLlama's pool feed.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | No | Case-insensitive match against pool blockchain, e.g. 'Base', 'Ethereum' | |
| limit | No | Maximum pools to return (default: 20, max: 100) | |
| token | No | Case-insensitive substring match against pool token symbol, e.g. 'USDC' | |
| min_tvl | No | Minimum TVL floor in USD (clamps up to $100,000 minimum) | |
| project | No | Case-insensitive match against protocol name, e.g. 'morpho-blue', 'aave-v3' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does meaningful work: it discloses that anomalous rates (>1000% APY) and sub-$100K pools are filtered out, and that data is a daily DefiLlama snapshot rather than live. It doesn't state the read-only nature explicitly or any pagination behavior, but the filtering and freshness disclosures are substantive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, zero padding, front-loaded with the search scope before the exclusion rules and data provenance. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a five-parameter, no-required-arg search tool with no annotations and no output schema, the description covers scope, filters, exclusions, and data freshness. The remaining gap is what a result record contains, which matters somewhat given the absent output schema.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the schema already documents all five parameters including case-insensitive matching, defaults, max, and TVL clamping. The description restates token/chain/project/min-TVL but adds no syntax or format beyond the schema, so the baseline of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Search') and resource ('DeFi Garden's railed pool list') with the filterable dimensions enumerated, so the agent knows exactly what the tool returns. It stops short of explicitly contrasting with the singular-pool siblings (get_pool, get_pool_score), which is the only reason it isn't a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage by enumerating the filter dimensions and stating the two exclusion rules, so it's clear this is the discovery/search entry point. But it never says when to reach for it versus get_pool or get_pool_score, leaving the agent to infer the search-vs-fetch split.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
forever_numberAInspect
Computes the lump-sum capital whose yield alone covers a recurring monthly bill forever, using a TVL-weighted blended rate of railed pools (or a caller-supplied APY between 0 and 1000 percent).
| Name | Required | Description | Default |
|---|---|---|---|
| apy | No | Optional annual rate percent, greater than 0 and at most 1000. When omitted, uses the TVL-weighted blended rate of railed pools. | |
| monthly | Yes | Positive USD/month the capital must cover |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full behavioral burden. It usefully discloses the fallback behavior (caller APY omitted -> TVL-weighted blended rate of railed pools) and the valid APY range, but says nothing about the return type, rounding, or error conditions for invalid inputs.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence with the purpose front-loaded and zero filler. It is packed but every clause (rate basis, APY bound) earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter computation tool with full schema coverage, the definition is nearly complete. The only gap is that no output schema exists and the description does not state what the return value looks like (presumably a dollar amount), though this is a small omission for an arithmetic tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% and both parameters are fully documented in the schema, including the APY bounds and the omitted-parameter fallback. The description largely restates that same information, adding no syntax or semantic detail beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('computes') and resource ('the lump-sum capital whose yield alone covers a recurring monthly bill forever'), plus the rate basis used. An agent can immediately distinguish this calculation tool from the sibling lookup tools (find_pools, get_pool, get_pool_score).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied through the computation's nature; there is no explicit when-to-use, when-not-to-use, or alternative named. Since no sibling performs a comparable calculation, the omission is minor, but no routing guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_poolAInspect
Look up a single pool by its DefiLlama pool UUID, returning APY (base/reward breakdown), TVL, and anomaly / below-floor flags. Data is a daily snapshot of DefiLlama's pool feed.
| Name | Required | Description | Default |
|---|---|---|---|
| pool_id | Yes | DefiLlama pool UUID (e.g. 'ba68527f-8ec2-4c55-827a-8f4673ae047c') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden. It usefully discloses that data is a daily snapshot of DefiLlama's feed and enumerates the returned fields including derived flags, but says nothing about not-found/error behavior, auth, or rate limits. 'Look up' implies a safe read, but that is left to inference.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences: the lookup action and return payload are front-loaded, and the snapshot-provenance note is a single qualifying clause. Nothing is redundant or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter read tool with no output schema, the description covers the action, the identifier, and the returned fields, including the freshness caveat that matters for interpreting APY/TVL. Only the not-found/error path is unaddressed, a minor gap for a simple getter.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the pool_id property already documents the UUID format with a concrete example. The description restates 'DefiLlama pool UUID' without adding format, validation, or fallback detail beyond the schema, so it matches the baseline for fully documented parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description gives a specific verb ('look up'), a scoped resource ('a single pool'), the identifier type (DefiLlama pool UUID), and even the return contents (APY breakdown, TVL, anomaly/below-floor flags). It implicitly contrasts with the plural find_pools, but never names a sibling explicitly, so differentiation is inferred rather than stated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: an agent can infer this is for retrieving one known pool when it already has a UUID, as opposed to searching. There is no explicit when-to-use / when-not-to-use, no mention of prerequisites, and no pointer to alternatives like find_pools or get_pool_score.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_pool_scoreAInspect
Retrieve the DeFi Score (0-100) with its band name (AAA to HIGH RISK; DeFi Garden's own model output, not a credit rating), each pillar shown as a High / Medium / Low tier, never a number (yield stability, sustainability, capital stickiness, exit liquidity), the experimental 14-day forward yield forecast range (low / central / high), and retail access restrictions. Look up by pool_id, or by exact asset symbol (highest-TVL railed match, with candidates listed). The forecast is experimental.
| Name | Required | Description | Default |
|---|---|---|---|
| asset | No | Optional exact, case-insensitive pool symbol to query if pool_id is unknown (e.g. 'USDC', 'STETH'). Not a substring match. | |
| chain | No | Optional blockchain filter used with asset (e.g. 'Base', 'Ethereum') | |
| pool_id | No | DefiLlama pool UUID |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description does substantial work: it implies read-only retrieval, clarifies that pillars are tiers rather than numbers, flags the forecast as experimental, and explains exact-symbol matching with highest-TVL railed match and candidate listing. It still omits details such as no-match behavior, permissions, or rate limits.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the main purpose and is not bloated, but the first sentence is long and dense. The final sentence repeats that the forecast is experimental, which was already stated earlier.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a three-parameter retrieval tool with no output schema and no annotations, the description is fairly complete: it explains the return contents, lookup modes, and the experimental forecast caveat. Edge cases such as missing assets or chain filtering could be clearer, but the core context is present.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so the baseline is 3, but the description adds meaningful semantics beyond the schema by describing exact asset matching, highest-TVL railed selection, and candidate listing. It does not add much for the chain parameter beyond what the schema already says.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource, 'Retrieve the DeFi Score,' and enumerates the score, band, pillar tiers, forecast range, and retail restrictions. It is clear what the tool returns, though it does not explicitly contrast itself with sibling tools such as get_pool or find_pools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explains lookup options ('by pool_id, or by exact asset symbol') but does not state when to use this tool versus alternatives like get_pool or find_pools. There are no explicit exclusions, prerequisites, or when-not conditions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- Changed
forever_number1 field changed- changed
Input schema / properties / apy / descriptionPrevious value: -"Optional annual rate percent. When omitted, uses live TVL-weighted blended rate."New value: +"Optional annual rate percent, greater than 0 and at most 1000. When omitted, uses the TVL-weighted blended rate of railed pools."
- Changed
get_pool_score2 fields changed- changed
Input schema / properties / asset / descriptionPrevious value: -"Optional asset symbol to query if pool_id is unknown (e.g. 'USDC', 'ETH')"New value: +"Optional exact, case-insensitive pool symbol to query if pool_id is unknown (e.g. 'USDC', 'STETH'). Not a substring match." - changed
Input schema / properties / chain / descriptionPrevious value: -"Optional blockchain filter (e.g. 'Base', 'Ethereum')"New value: +"Optional blockchain filter used with asset (e.g. 'Base', 'Ethereum')"
5 tool updates
- First observed
explain_rails - First observed
find_pools - First observed
forever_number - First observed
get_pool - First observed
get_pool_score
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceRemote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.MIT
- AlicenseCqualityBmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs115 npm55 PyPIMIT
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.1618 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.