Skip to main content
Glama

Server Details

Crypto yield data for AI agents: lending, savings, staking, borrowing & stablecoin rates. 18 tools.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.1/5 across 21 of 21 tools scored. Lowest: 3.2/5.

Server CoherenceA
Disambiguation5/5

Each tool targets a distinct aspect of cryptocurrency data: coin metadata, prices, rates (current, historical, changes), earn products, market summaries, stablecoin analysis, and symbol resolution. The detailed descriptions clearly differentiate even similar tools like get_price and get_price_by_symbol, or get_rates and list_earn_products.

Naming Consistency3/5

All names use snake_case, but conventions vary: some are verb_noun (get_coin, list_coins, resolve_symbol), some are noun_noun (coin_history, fear_greed_index, market_summary), and some include 'by' for parameters. This mix is readable but could be more consistent.

Tool Count5/5

With 21 tools, the server covers a broad domain of cryptocurrency data without being overwhelming. Each tool serves a clear purpose, and the count is appropriate for a comprehensive data API.

Completeness5/5

The tool set covers nearly all expected operations for a crypto data server: coin listing, metadata, prices, historical data, rates, yield products, market stats, top coins, stablecoin analysis, and symbol resolution. No obvious gaps are present for the stated focus on price, rate, and yield data.

Available Tools

21 tools
coin_historyHistorical coin price chartB
Read-onlyIdempotent
Inspect

Historical price timeseries for a coin. (Current plan: up to 1825 days of history.)

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoDays of history
coinIdYesCanonical coin id (e.g. "bitcoin")

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior4/5

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

Annotations already indicate readOnly, idempotent, non-destructive. Description adds the limitation of up to 1825 days and hints at plan-dependency ('Current plan'), which is useful context beyond annotations.

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

Conciseness4/5

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

Two concise sentences, front-loaded with the primary purpose. The parenthetical adds useful context without bloating.

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

Completeness3/5

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

Given output schema exists (not shown), the description is minimally sufficient but lacks details on granularity (daily? hourly?) and data source, leaving gaps for an agent.

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 covers 100% of parameters with descriptions. The description adds no extra meaning beyond what the schema provides, meeting baseline but not exceeding.

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

Purpose4/5

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

The description clearly states it provides historical price timeseries for a coin, which is specific. It distinguishes sibling tools like get_price (current) and get_rate_history (rates) but doesn't explicitly contrast them.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like get_price or get_rate_history. The agent must infer from the description alone, with no explicit when or when-not advice.

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

fear_greed_indexFear & Greed indexA
Read-onlyIdempotent
Inspect

Current Fear & Greed index value and historical trend.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
valueYesCurrent index, 0 (extreme fear) to 100 (extreme greed)
historyNoRecent trend of the index
updatedAtNo
classificationYesLabel, e.g. `Greed`, `Neutral`, `Extreme Fear`
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the description's mention of 'current' and 'historical' adds limited value. It does not detail behaviors like data source or update frequency, which would be helpful beyond annotations.

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

Conciseness4/5

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

The description is a single concise sentence, appropriately sized for a simple tool. It front-loads the key information, though it could benefit from a minor structural improvement (e.g., separating current and historical aspects). Still, it is efficient.

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?

Given the tool is parameterless, has comprehensive annotations, and an output schema exists to detail the return value, the description is nearly complete. It covers the essential purpose. A slight gap is the lack of mention of data resolution or period, but this is minor.

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

Parameters4/5

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

The tool has zero parameters and schema description coverage is 100% (trivially). Per guidelines, baseline is 4 for 0 params. The description adds no parameter information, but none is needed.

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 the tool provides the 'current value and historical trend' of the Fear & Greed index, which is a specific verb+resource combination. It distinguishes itself from siblings like 'market_summary' and 'get_price' by focusing on a distinct market sentiment metric.

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 the tool is for general market sentiment, and siblings suggest alternatives for specific coin data, but no explicit when-to-use or when-not-to-use guidance is provided. The agent must infer context from sibling names.

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

get_coinGet coin metadataA
Read-onlyIdempotent
Inspect

Full metadata for a coin: description, links, categories, market data, developer stats.

ParametersJSON Schema
NameRequiredDescriptionDefault
coinIdYesCanonical coin id or slug (e.g. "bitcoin")

Output Schema

ParametersJSON Schema
NameRequiredDescription
idYesCanonical coin ID (e.g. `bitcoin`)
nameYesHuman-readable name (e.g. `Bitcoin`)
rankNoMarket cap rank (1 = largest)
priceNoCurrent spot price in USD
symbolYesTrading symbol (e.g. `btc`)
marketCapNoMarket cap in USD
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, indicating a safe read operation. The description adds value by detailing the exact attributes returned, which goes beyond annotations without contradiction.

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?

The description is two sentences long, front-loaded with the purpose, and contains no redundant information. Every phrase adds value.

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

Completeness5/5

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

Given the output schema exists (not shown but referenced), the description covers the key return fields. For a metadata retrieval tool with one parameter, the description is 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 coverage is 100% for the single parameter coinId, with a clear description. The tool description does not add additional semantics beyond what the schema provides, so baseline 3 applies.

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 the tool returns 'Full metadata for a coin' and specifies contents: description, links, categories, market data, developer stats. This distinguishes it from siblings like get_price (price only) or list_coins (list only).

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 usage for comprehensive metadata but does not explicitly state when to use this tool versus alternatives such as get_price for price-only queries. No exclusions or context are provided.

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

get_priceAggregated exchange priceA
Read-onlyIdempotent
Inspect

Current aggregated price for one or more symbols, computed from multiple exchange feeds.

ParametersJSON Schema
NameRequiredDescriptionDefault
vsNoQuote currency, default "usd"
symbolsYesSingle symbol or array of symbols (e.g. "btc" or ["btc","eth"])

Output Schema

ParametersJSON Schema
NameRequiredDescription
countYes
pricesYes
timestampYes
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive nature, covering basic safety and idempotency. The description adds 'computed from multiple exchange feeds' but does not disclose behavioral details like caching, staleness, or the fact that additionalProperties are allowed in the input schema, which could affect tool invocation.

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?

Single sentence, directly states purpose and key differentiator (aggregated from multiple feeds). No wasted words, front-loaded with the most important information.

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

Completeness5/5

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

Given the tool's simplicity, full schema coverage, and presence of output schema, the description is complete. Annotations provide safety context, and the description adds the aggregation nuance. No missing information needed for safe and correct invocation.

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 schema already documents both parameters thoroughly. The description adds no new information about parameter values or usage beyond restating the tool's purpose. 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 the tool provides current aggregated price for one or more symbols from multiple exchange feeds. It distinguishes from siblings like get_price_by_symbol (single symbol) and get_coin (more data) by emphasizing aggregation and multiple exchange sources.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool vs siblings (e.g., when to prefer get_price_by_symbol or get_rates). The description only states what it does, leaving the agent to infer usage context from the tool name and sibling list.

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

get_price_by_symbolAggregated price for a single symbolA
Read-onlyIdempotent
Inspect

Aggregated exchange price for one symbol, plus the raw per-provider prices that fed the aggregate. Use get_price for multiple symbols in one call.

ParametersJSON Schema
NameRequiredDescriptionDefault
vsNoQuote currency, default "usd"
regionNoOptional region filter for provider selection
symbolYesSingle coin symbol, e.g. "btc"

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint; description adds that it returns raw per-provider prices, which is useful beyond annotations.

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, front-loaded with purpose and returned data, then sibling distinction. Every sentence adds value with no waste.

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

Completeness5/5

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

With output schema present and description explaining aggregate + raw prices, the tool definition is complete for a single-symbol price lookup.

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 has 100% coverage with descriptions for all 3 parameters; description adds no extra parameter detail beyond implying the return structure, so 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?

Description clearly states it provides aggregated exchange price for one symbol plus raw per-provider prices, and distinguishes from sibling get_price for multiple symbols.

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

Usage Guidelines5/5

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

Explicitly says 'Use get_price for multiple symbols in one call', providing clear guidance when to use this tool vs. a sibling.

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

get_rate_by_symbolGet rates for a single symbolA
Read-onlyIdempotent
Inspect

Fetch all provider rates for a specific coin symbol. Optionally filter by category — pass category="lending"/"borrowing"/"staking" for yield questions, since unfiltered results mix in spot prices (category="price").

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesCoin symbol, case-insensitive (e.g. "btc" or "eth")
categoryNoFilter to a single product category. Without it, results mix spot prices (category="price") in with yields — pass "lending"/"borrowing"/"staking" for yield-only results.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior4/5

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

Annotations already indicate read-only, idempotent, non-destructive; description adds value by warning that unfiltered results mix spot prices, a key behavioral trait beyond annotations.

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 fluff, front-loaded purpose, efficient use of words.

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

Completeness5/5

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

Given output schema exists and only 2 parameters, description covers essential behavior and filtering guidance completely.

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

Parameters4/5

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

Schema coverage is 100%, but description adds practical guidance for the category parameter, explaining its use for yield vs price scenarios, enhancing the schema's enum descriptions.

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?

Description clearly states 'Fetch all provider rates for a specific coin symbol', specifying the verb and resource, and distinguishes from siblings like get_price by mentioning multiple provider rates and category filtering.

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

Usage Guidelines4/5

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

Provides explicit guidance on when to filter by category ('for yield questions') and explains consequence of unfiltered results, but does not directly compare to sibling tools like get_price_by_symbol.

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

get_rate_changesRate change feed (observations)A
Read-onlyIdempotent
Inspect

The immutable rate-change log: every material yield move with full provenance (previous rate, raw value, multiplier, collection method, confidence, base/bonus split). Time-ascending pages via cursor. Unfiltered windows are capped at 31 days — filter by provider or symbol to walk deep history. Use for "what changed since X?" and audit trails.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoPage size, default 100
sinceYesISO date/datetime lower bound (required), e.g. "2026-08-01"
untilNoISO upper bound, default now
cursorNoOpaque cursor from a previous page
symbolNoFilter to one symbol, e.g. "USDC"
categoryNo
providerNoFilter to one provider (enables deep ranges)

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
paginationYes
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior. The description adds valuable context beyond those annotations: immutable log, time-ascending ordering via cursor, and the 31-day cap on unfiltered queries. It doesn't contradict annotations, and it enriches the agent's understanding of pagination and data scope.

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?

Three sentences with no filler. The first sentence states the core purpose and data content, the second covers pagination, and the third addresses limitations and use cases. Every sentence earns its place, and critical information is front-loaded.

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

Completeness5/5

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

Given the complexity (7 params, output schema present), the description holistically covers what the tool returns, how pagination works, constraints on time windows, and real-world use cases. The output schema handles return-value details, so the description doesn't need to. The combination of annotations, schema, and description fully equips an agent to select and invoke correctly.

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

Parameters4/5

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

Schema coverage is high (86%), so parameters are mostly self-documenting. The description adds semantic context that isn't in the schema, such as using provider or symbol to bypass the 31-day window and cursor-based time-ascending pagination. This bridges the gap between raw parameters and real-world usage patterns.

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 opens with 'The immutable rate-change log,' clearly identifying the resource and operation scope. It distinguishes itself from siblings like get_rates (current prices) and get_rate_history (historical snapshots) by emphasizing 'what changed since X?' and audit trails, with full provenance details.

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

Usage Guidelines4/5

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

It gives explicit use cases ('Use for "what changed since X?" and audit trails') and notes a key limitation (unfiltered windows capped at 31 days) with guidance to filter by provider or symbol for deep history. However, it doesn't explicitly name alternative sibling tools or state when not to use this tool, so it stops short of a 5.

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

get_rate_historyHistorical ratesA
Read-onlyIdempotent
Inspect

Historical rate timeseries for a symbol. Recent history (~30 days) is per-tick; older history is daily granularity. Depth is clamped to your plan (up to 365 days on Pro) and bounded by how far back data has been recorded. (Current plan: up to 1825 days of history.)

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNoDays of history. Clamped server-side to your plan (Free 7, Starter 30, Growth 90, Pro 365, Enterprise 1825) and bounded by available data. Points within ~30 days are per-tick; older points are daily.
symbolYesCoin symbol, case-insensitive
providerNoProvider slug to scope to, case-insensitive

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior5/5

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

Annotations declare readOnly, openWorld, idempotent. Description adds that point density changes after ~30 days, depth clamped to plan, and bounded by data recording. No contradictions.

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, front-loaded with core purpose, then key details about granularity and plan limits. Every sentence is valuable.

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

Completeness5/5

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

Output schema exists (not shown). Description covers timeseries data, granularity, plan limits, and boundaries. Complete for a read-only historical data tool.

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

Parameters4/5

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

Schema coverage is 100% with descriptions for all 3 parameters. The description adds meaningful context about days parameter behavior (granularity change, clamping) beyond the schema.

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 it provides historical rate timeseries for a symbol. It distinguishes granularity: recent ~30 days per-tick, older daily. It differentiates from siblings like get_price (current price) and get_rates by specifying timeseries with plan limits.

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

Usage Guidelines4/5

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

The description implies use for historical data and mentions plan clamping. It lacks explicit when-to-use vs alternatives, but given sibling names (e.g., get_price), the purpose is clear.

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

get_ratesGet current ratesA
Read-onlyIdempotent
Inspect

List current rates across providers, optionally filtered by symbol, category, or provider. For "what is the best yield on BTC right now?" style questions, ALWAYS pass category="lending"/"borrowing"/"staking" — an unfiltered call mostly returns spot prices (category="price"), not yields.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results, default 100
symbolNoFilter by coin symbol, case-insensitive (e.g. "btc" or "BTC")
categoryNoFilter by product category. IMPORTANT for yield questions: without this filter, most returned rows are category="price" (spot prices), not yields. Pass category="lending", "borrowing", or "staking" to get APY/interest-rate data.
providerNoFilter by provider slug, case-insensitive

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the safety profile is clear. The description adds behavioral context about the category filter affecting result types (yields vs. prices), which is not covered by annotations. No contradictions.

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?

The description is just two sentences, both highly informative and front-loaded. Every sentence earns its place; there is no fluff.

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

Completeness5/5

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

Given the tool's complexity (4 optional parameters, rich annotations, output schema exists), the description is complete. It covers primary use cases, filtering options, and critical caveats regarding category usage. No missing context for an agent to select or invoke the tool correctly.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3. The description adds value by reiterating the category filter's importance and explaining the unfiltered call's default behavior (returns mostly spot prices). This nuance goes beyond the schema's parameter descriptions.

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 the tool's function: 'List current rates across providers, optionally filtered by symbol, category, or provider.' It also distinguishes from siblings by emphasizing the yield vs. price distinction, which is a key differentiator among similar tools.

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

Usage Guidelines5/5

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

The description explicitly provides guidance: 'For "what is the best yield on BTC right now?" style questions, ALWAYS pass category="lending"/"borrowing"/"staking" — an unfiltered call mostly returns spot prices (category="price"), not yields.' This gives clear when-to-use and when-not-to-use information.

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

list_coinsList coinsA
Read-onlyIdempotent
Inspect

Paginated list of coins with optional name/symbol search.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage, default 1
limitNoPage size, default 20
searchNoSearch by name or symbol

Output Schema

ParametersJSON Schema
NameRequiredDescription
coinsYes
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint(false). The description adds 'paginated' behavior, which is useful but does not elaborate on pagination mechanics (e.g., totals, cursor). The burden is shared with annotations, so this is adequate but not exceptional.

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?

One concise sentence (10 words) that covers the essential functionality. No wasted words, and the most critical information ('paginated list', 'optional search') is front-loaded.

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?

Complexity is low (simple list with search and pagination). Output schema exists, so return format is covered. The description covers purpose and key features but omits sorting behavior or filtering details. Still, it is largely complete for an agent.

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 coverage is 100%, so baseline is 3. The description mentions pagination and optional search, which adds context beyond the schema's field descriptions but does not detail parameter interaction (e.g., search overrides other filters). The schema already describes default values and constraints.

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 the tool returns a 'paginated list of coins' and includes 'optional name/symbol search'. This specific verb+resource combination differentiates it from siblings like 'get_coin' (single coin) or 'top_coins' (filtered list).

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?

No explicit guidance on when to use this tool versus alternatives like 'get_coin' or 'top_coins'. The context is implied (general listing vs. specific queries), but the description does not provide when-not-to-use or compare with other tools.

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

list_earn_productsCanonical earn products & variantsA
Read-onlyIdempotent
Inspect

The canonical earn product graph: products (provider × asset × category) with their term variants — lockups, tiers, minimum deposits, payout schedules, withdrawal notice, TVL, promo flags — each carrying collection method, confidence (0-100 with bands), verification timestamps, and geo eligibility resolved from variant overrides or provider defaults. Use for "what are the actual terms behind this rate?"

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoPage size, default 50
offsetNo
symbolNoFilter to one symbol, e.g. "BTC"
categoryNo
providerNoFilter to one provider, e.g. "nexo"
min_confidenceNoOnly products with at least one variant at/above this confidence

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior4/5

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

Annotations already indicate readOnlyHint, openWorldHint, idempotentHint, destructiveHint=false. The description adds context beyond these: it confirms the graph includes confidence with bands, verification timestamps, and geo eligibility resolved from variant overrides or provider defaults. This is useful behavioral detail. However, it doesn't specify pagination behavior or what happens if the result set is very large.

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

Conciseness4/5

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

The description is two sentences: the first concisely enumerates the rich output structure, and the second gives a clear usage case. It is dense with information but not excessively long. Slightly more structure (e.g., bullet points for variant fields) could improve readability, but it remains effective.

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?

Given the tool has 6 optional parameters and a moderate schema coverage of 67%, the description sufficiently covers the key data fields and usage intent. The output schema exists but is not shown here; if it documents the return structure well, the description is adequate. It could be more complete by mentioning the default page size or the behavior of min_confidence filtering on variant-level data, but these are minor gaps.

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

Parameters4/5

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

Schema description coverage is 67% (4 of 6 params have descriptions). The description goes beyond the schema by explaining the overall data model and the meaning of the returned fields (e.g., confidence bands, geo eligibility), which helps the agent understand how filters like symbol, provider, or min_confidence relate to the output. This adds value but doesn't describe each parameter's syntax in detail.

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 that the tool returns 'the canonical earn product graph' with detailed term variants. It moves beyond the generic title by specifying the data structure (provider x asset x category) and listing key fields (lockups, tiers, minimum deposits, etc.). This effectively distinguishes it from sibling tools that focus on prices, rates, or coin details.

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

Usage Guidelines5/5

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

The description closes with a direct usage cue: 'Use for "what are the actual terms behind this rate?"' This tells the agent exactly when to select this tool over alternatives like get_rates or get_price. It implicitly advises against using it for simple price lookups, which are handled by siblings.

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

list_providersList rate providersA
Read-onlyIdempotent
Inspect

All rate providers, optionally filtered by product category.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results, default 100
categoryNoFilter to providers that offer this category

Output Schema

ParametersJSON Schema
NameRequiredDescription
providersYes
Behavior2/5

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

The description does not add behavioral context beyond what the annotations already provide (readOnly, openWorld, idempotent, non-destructive). There is no mention of additional traits like pagination or result set limits beyond the schema.

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?

The description is a single, front-loaded sentence with no wasted words. Every word serves a purpose, stating the main function and the optional filter.

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?

For a simple list tool with only two optional parameters, full schema coverage, and existing output schema, the description is sufficient. It could be improved by noting the default limit, but the schema already provides that.

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 coverage is 100% and both parameters have descriptions in the schema. The description adds no extra meaning beyond restating the filter capability, so it meets the baseline without improvement.

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 the action 'list' and the resource 'rate providers', and mentions optional filtering by product category. This distinguishes it from sibling tools which focus on rates or coins rather than providers.

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

Usage Guidelines4/5

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

The description implies when to use: to list rate providers with an optional category filter. While it does not explicitly mention when not to use it or provide alternatives among siblings, the context of sibling names makes the usage clear.

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

market_summaryGlobal market summaryA
Read-onlyIdempotent
Inspect

One-call summary of total market cap, 24h volume, BTC/ETH dominance, and recent trend.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Output Schema

ParametersJSON Schema
NameRequiredDescription
trend24hNo24h trend as a decimal (0.02 = +2%)
btcDominanceYesBTC share of total market cap, 0-100
ethDominanceYesETH share of total market cap, 0-100
volume24hUsdYesCombined 24h trading volume
totalMarketCapUsdYesCombined market cap of all tracked coins
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so the description adds marginal value by specifying the exact data returned (market cap, volume, dominance, trend). It does not disclose any additional behavioral traits beyond the annotations.

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?

Single sentence that is front-loaded and concise, containing no superfluous words. Every word contributes to the description.

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

Completeness5/5

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

Given zero parameters, presence of an output schema, and rich annotations, the description fully covers what the tool does and returns. It is complete for the tool's complexity.

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

Parameters4/5

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

No parameters exist, so schema coverage is 100%. Description adds no parameter info but is not needed; baseline of 4 is appropriate for 0-parameter tools.

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 it provides a one-call summary of total market cap, 24h volume, BTC/ETH dominance, and recent trend, using specific verbs and resources. It distinguishes well from sibling tools like get_price or top_coins which are more specific.

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 usage for a quick global overview but does not explicitly state when to use versus alternatives like get_price or top_movers. It lacks when-not-to-use guidance.

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

resolve_symbolResolve symbol to canonical coinA
Read-onlyIdempotent
Inspect

Map an exchange-specific or ambiguous symbol to bitcompare's canonical coin id. Useful when an exchange uses a non-standard ticker.

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesExchange-specific or ambiguous symbol
contextNoSource exchange or quote currency to disambiguate (e.g. "kraken", "binance")

Output Schema

ParametersJSON Schema
NameRequiredDescription
nameYesCoin display name
inputYesThe raw symbol that was queried
coinIdYesCanonical Bitcompare coin ID
symbolYesCanonical symbol
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and openWorldHint. Description adds the core mapping behavior but no further traits like error handling 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.

Conciseness5/5

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

Single sentence with no filler, front-loads the purpose. Every word earns its place.

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?

Has output schema (mentioned). Description covers the main use case and disambiguation. Minor gap: doesn't explain what happens if symbol can't be resolved, but annotations hint at open world.

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 covers all parameters at 100%. Description restates their purpose but adds minimal new meaning beyond the schema.

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?

Clearly states it maps symbols to canonical coin IDs, with specific verb and resource. Distinguishes from sibling resolve_symbols_batch by implying individual resolution.

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

Usage Guidelines4/5

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

Explicitly says 'useful when an exchange uses a non-standard ticker', providing clear usage context. Does not exclude other uses but gives strong guidance.

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

resolve_symbols_batchBatch resolve symbolsA
Read-onlyIdempotent
Inspect

Resolve up to 100 symbols in a single request. Requires a plan with bulk endpoints enabled.

ParametersJSON Schema
NameRequiredDescriptionDefault
contextNoSource exchange or quote currency applied to every input symbol
symbolsYesUp to 100 symbols to resolve in a single request

Output Schema

ParametersJSON Schema
NameRequiredDescription
resolvedYes
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive nature, so the description adds value by specifying the batch limit (100 symbols) and plan requirement, without contradicting annotations.

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 concise sentences with no redundancy, front-loading the key purpose and limitations.

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?

Given the rich annotations and presence of an output schema, the description adequately covers the tool's behavior (batch limit, plan requirement). It could mention partial failure handling but is otherwise sufficient.

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% and the description does not add new parameter information beyond what the schema already provides (e.g., context and symbols descriptions), so baseline score of 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 title 'Batch resolve symbols' and description 'Resolve up to 100 symbols in a single request' clearly specify the verb (resolve) and resource (symbols), distinguishing it from the sibling tool 'resolve_symbol' which handles single symbols.

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

Usage Guidelines4/5

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

The description mentions the prerequisite 'Requires a plan with bulk endpoints enabled' and implies batch usage via 'up to 100 symbols', but does not explicitly contrast with the single resolve tool or state when to prefer this tool.

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

similar_coinsSimilar coinsA
Read-onlyIdempotent
Inspect

Coins related to the given coin by category/sector similarity.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax related coins to return, default 10
coinIdYesCanonical coin id to find related coins for (e.g. "bitcoin")

Output Schema

ParametersJSON Schema
NameRequiredDescription
coinsYes
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive; description adds that similarity is based on category/sector, which provides extra behavioral context but no details on auth, rate limits, or side effects.

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?

Single sentence, no filler, front-loaded with key purpose. Every word earns its place.

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?

Given the tool's simplicity (2 params, output schema exists), the description sufficiently explains the similarity criterion. Minor gap: no mention of default limit (10) beyond schema.

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 coverage is 100% with descriptions for both parameters; description does not add meaning beyond what schema already provides, so baseline score 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?

Description uses specific verb 'find related coins' and resource 'coins by similarity', clearly distinguishing from siblings like 'get_coin' (single coin) or 'list_coins' (all coins).

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?

Description implies use for finding similar coins but does not specify when to use this tool versus alternatives like 'top_coins' or 'coin_history', nor provides exclusions.

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

stablecoin_earn_benchmarkBitcompare Earn Index (BEI-Stable)A
Read-onlyIdempotent
Inspect

The Bitcompare Earn Index for stablecoins: median USDC/USDT lending APY across servable providers, with CeFi/DeFi splits, TVL-weighted variant, deltas, and an immutable daily history. Use for "what does stablecoin yield pay right now / how has it trended?" — this is the citable market reference, not a single provider quote.

ParametersJSON Schema
NameRequiredDescriptionDefault
segmentNoRestrict to one segment. Omit for the headline across overall + CeFi + DeFi.
history_daysNoRequest the daily series for the last N days instead of the headline. Anonymous/free access is clamped to the most recent 90 days.

Output Schema

ParametersJSON Schema
NameRequiredDescription
dataYes
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, making the tool's safety profile clear. The description adds valuable context about 'immutable daily history' and the existence of CeFi/DeFi splits and TVL weighting, which go beyond annotations without contradicting them.

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 filler. The first sentence defines the tool's output precisely; the second gives targeted usage guidance. Every word earns its place. Front-loaded structure makes it easy to scan.

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?

For a read-only index tool with decent annotations and an output schema, the description covers the core behavior: segments, TVL-weighted variant, deltas, history immutability, and access clamping. Minor omission: 'deltas' are mentioned but not defined, though likely detailed in the output schema. Overall sufficient for selection and invocation.

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

Parameters4/5

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

Schema coverage is 100%, providing baseline meaning. The description adds extra semantic value by explaining the effect of omitting the segment parameter ('headline across overall + CeFi + DeFi') and the access clamp on history_days ('anonymous/free access is clamped to the most recent 90 days'), which are not evident from the schema alone.

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 the tool returns the median USDC/USDT lending APY across servable providers, with splits and history. It uses specific verbs ('median', 'TVL-weighted', 'immutable daily history') and distinguishes itself from a single provider quote, making it unambiguous among siblings like stablecoin_index or list_earn_products.

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

Usage Guidelines4/5

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

The description provides explicit use cases ('what does stablecoin yield pay right now / how has it trended?') and clarifies it is a citable market reference rather than a single provider quote. However, it does not directly name sibling alternatives like stablecoin_index or list_earn_products to exclude them, leaving some differentiation implicit.

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

stablecoin_indexStablecoin stability leaderboardA
Read-onlyIdempotent
Inspect

Ranked stablecoin leaderboard with stability scores, peg deviation, and market cap.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoDefault 50

Output Schema

ParametersJSON Schema
NameRequiredDescription
stablecoinsYesRanked stablecoin leaderboard
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds context on returned data (stability scores, peg deviation, market cap) but does not go beyond those annotations to disclose behaviors like pagination or update frequency.

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?

Single sentence with no extraneous information. Every word serves a clear purpose.

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

Completeness5/5

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

For a simple tool with one optional parameter and an output schema, the description sufficiently explains the purpose and key output fields. No additional context needed.

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 coverage is 100% with a single limit parameter described as 'Default 50'. The description does not add additional meaning beyond that, so baseline score of 3 applies.

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?

Title and description clearly state it provides a ranked leaderboard of stablecoins with stability scores, peg deviation, and market cap. This distinguishes it from sibling tools like stablecoin_peg_stability which may focus on individual peg analysis.

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 usage for obtaining a ranked overview of stablecoins but does not explicitly state when to use it over alternatives (e.g., stablecoin_peg_stability) or when not to use it.

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

stablecoin_peg_stabilityStablecoin peg stabilityB
Read-onlyIdempotent
Inspect

Peg deviation history and stability stats for a stablecoin.

ParametersJSON Schema
NameRequiredDescriptionDefault
periodNoStability window, default "30d"
symbolYesStablecoin symbol (e.g. "usdt", "usdc")

Output Schema

ParametersJSON Schema
NameRequiredDescription
symbolYes
historyYesRecent peg deviation samples
deviationYesCurrent peg deviation in basis points
pegTargetYesTarget peg in USD (typically 1.0)
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, providing a clear safety profile. The description adds no behavioral context beyond stating 'history and stats', which is consistent but redundant.

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?

The description is a single, concise sentence of 8 words, front-loaded with the core function. No extraneous information.

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?

Given the tool's simplicity, good annotations, and presence of an output schema, the description is sufficient to inform the agent of the tool's purpose and data type. It omits return format details, but those are covered by the output schema.

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?

The input schema has 100% description coverage for both parameters ('symbol' and 'period'), so the description does not need to add parameter details. The description mentions 'stability stats' and 'history', which loosely aligns with the parameters but adds no new meaning.

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

Purpose4/5

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

The description clearly states the tool provides 'peg deviation history and stability stats' for a stablecoin, specifying the resource and action. However, it does not differentiate from sibling tools like 'stablecoin_index', which may serve a similar purpose.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives like 'stablecoin_index' or 'coin_history'. There are no explicit usage contexts or exclusions.

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

top_coinsTop coins by market capB
Read-onlyIdempotent
Inspect

Top N coins ordered by market capitalisation.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of coins, default 100

Output Schema

ParametersJSON Schema
NameRequiredDescription
coinsYes
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint. The description adds that results are ordered by market capitalisation, but does not elaborate on dynamic nature or pagination. Provides some additional behavioral context beyond annotations.

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

Conciseness4/5

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

The description is concise with one sentence. It is efficient but could benefit from slight elaboration without being verbose.

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?

For a simple tool with one parameter and an output schema, the description covers the key aspects: ordering by market cap and limiting. It lacks mention of return format or real-time nature, but output schema likely covers that.

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 coverage is 100% and describes the limit parameter. The description does not add any extra semantics about the parameter beyond what is in the schema.

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

Purpose4/5

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

The description clearly states it returns top coins ordered by market capitalisation. It uses a specific verb-resource combination. However, it does not explicitly differentiate from siblings like list_coins or top_movers.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. The description provides no context about when this tool is appropriate compared to other coin-listing tools.

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

top_moversTop gainers/losersA
Read-onlyIdempotent
Inspect

Biggest 24h gainers and losers within a rank segment.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of gainers and losers to return on each side, default 10
segmentNoRank segment, default "top100"

Output Schema

ParametersJSON Schema
NameRequiredDescription
losersYesTop 24h losers in the requested segment
gainersYesTop 24h gainers in the requested segment
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive nature, so the description's addition of the 24h time window and rank segment filter is valuable behavioral context. No contradiction with annotations.

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?

The description is a single clear sentence with no extraneous information. It perfectly front-loads the core purpose.

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

Completeness5/5

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

Given the simplicity of the tool (2 optional params, full schema coverage, rich annotations, and an output schema), the description is complete enough to guide an agent in correct invocation.

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

Parameters4/5

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

The schema covers both parameters, but the description adds the 24h time window and clarifies that the rank segment is 'within' a segment, enhancing the semantic understanding beyond the schema alone.

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 the tool returns the biggest 24h gainers and losers within a rank segment, aligning with the name and title. It distinguishes from siblings like 'top_coins' by focusing on movers rather than static ranking.

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 usage for querying top performers based on 24h price change, but lacks explicit guidance on when to use it versus similar tools like 'get_price' or 'market_summary'. No alternatives or exclusions are mentioned.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    B
    quality
    F
    maintenance
    Provides AI assistants with access to real-time DeFi lending rates and yield data across 14+ protocols and multiple blockchains. Enables querying borrow/supply rates, comparing platforms, calculating leverage strategies, and finding best earn opportunities.
    6
    21
    4
    MIT
  • A
    license
    B
    quality
    C
    maintenance
    Provides 13 Solana DeFi intelligence tools for AI agents, paid per-call via micropayments (USDC). Enables pulling live DeFi data and automatic payment settlement.
    13
    63
    1
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources