Skip to main content
Glama

EmblemAI AgentWallet

Ownership verified

Server Details

MCP server for the EmblemAI AgentWallet. Exposes tools for token swaps, DeFi yield farming, liquidity management, portfolio tracking, market research, and memecoin discovery across Solana, Ethereum, Base, BSC, Polygon, Hedera, and Bitcoin. Backed by Agent Hustle (agenthustle.ai) for routing and execution. OAuth 2.0 + PKCE for interactive agents; API key and x402 micropayments also supported.

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 DescriptionsB

Average 4/5 across 113 of 113 tools scored. Lowest: 2.4/5.

Server CoherenceD
Disambiguation2/5

With 113 tools spanning many chains and asset classes, there is substantial overlap. For example, listPositions and getAllPositions appear to serve the same function, and there are many balance, token discovery, and collection data tools that differ mostly by chain or protocol, making misselection likely.

Naming Consistency2/5

Naming conventions are inconsistent: most tools use camelCase with a verb (baseGetBalances, ethSwapQuote), but some use underscores (nansen_defi_portfolio), others are just bare nouns (wallet, rugcheck), and there are irregularities like solanaBalances instead of solanaGetBalances, plus hederaTokensSwapQuote vs. baseSwapQuote.

Tool Count1/5

The server exposes 113 tools, far beyond the typical well-scoped set. This is an extreme mismatch with the apparent purpose of a wallet/swap server, making discovery and selection difficult for agents.

Completeness2/5

While the server offers extensive read-only data (balances, market data, NFTs, positions), it lacks core write operations: there is no actual swap execution or token transfer tool, and the referenced emblemCreateVault tool is missing. These are significant gaps that will prevent agents from completing common wallet actions.

Available Tools

113 tools
baseFindClankerTokensbase: baseFindClankerTokensA
Read-onlyIdempotent
Inspect

Find meme tokens on Base via Clanker (clanker.world). Returns tokens with price, market cap, 24h volume, and price changes. Use 'q' param to search by name/symbol. Sort by market-cap or created-at. To buy/sell Clanker tokens, use baseSwap — they are regular ERC20s on Base.

ParametersJSON Schema
NameRequiredDescriptionDefault
qNo
sortNodesc
limitNo
offsetNo
sortByNomarket-cap
chainIdNo
includeUserNo
includeMarketNo
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds value beyond annotations by disclosing return fields, the ERC20 nature of the tokens, and pointing to baseSwap for trades. It doesn't mention pagination details but provides useful behavioral context.

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, front-loaded with the core purpose, then return values, then usage and alternative tool. Every sentence adds distinct information with no redundancy. Highly concise and effectively structured.

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 search tool with rich annotations, the description covers the main capabilities (find, search, sort, return metrics) and the alternative swap tool. It lacks explanation for some parameters (includeUser/includeMarket) and pagination, but overall it provides enough context for an agent to understand what the tool does and when to use it.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It explains the 'q' parameter (search by name/symbol) and 'sortBy' (market-cap or created-at), but doesn't clarify 'limit', 'offset', 'includeUser', 'includeMarket', or 'chainId'. While the enum for 'sortBy' is self-evident, several parameters remain unexplained, leaving a significant gap.

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 'Find meme tokens on Base via Clanker' and specifies the return fields (price, market cap, 24h volume, price changes). It distinguishes from siblings like hederaFindMemeCoins (different chain) and baseSwapQuote by explicitly noting that for buying/selling, one should use baseSwap.

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 to use baseSwap for buy/sell, naming the alternative tool. Also provides usage instructions: 'Use q param to search by name/symbol' and 'Sort by market-cap or created-at.' This gives clear context on when and how to use the tool versus alternatives.

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

baseGetBalancesbase: baseGetBalancesA
Read-onlyIdempotent
Inspect

Get wallet balances on Base. CRITICAL: Use 'balance' for trades (exact units), NOT 'humanReadableBalance' (rounded for display).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false. The description adds the key behavioral insight that 'balance' provides exact units while 'humanReadableBalance' is rounded for display, which is valuable guidance for interpreting tool output.

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, with the primary purpose front-loaded and the critical usage note provided immediately after. Every sentence adds value, with no redundant 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?

For a simple balance-checking tool with no parameters, strong safety annotations, and no output schema, the description is complete. It includes the essential guidance about which balance field to use for trades, making it fully actionable.

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, so the schema coverage is effectively 100%. The description does not need to explain parameters; the baseline for zero-parameter tools is 4, and the description meets this by focusing on output guidance.

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: 'Get wallet balances on Base.' This specifies the verb (get), the resource (wallet balances), and the scope (Base chain), distinguishing it from sibling tools like bscGetBalances and ethGetBalances.

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 the tool (for Base balances) and includes a critical note about using 'balance' for trades instead of 'humanReadableBalance'. It does not explicitly mention alternatives, but the chain-specific scope is clear from the description and sibling context.

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

baseSwapQuotebase: baseSwapQuoteA
Read-onlyIdempotent
Inspect

Quote an exact-input Base swap. The sellAmount may be sell-token units, a USD budget such as '$5', or 'max'. Returns a normalized conditionalOrderHandoff for explicit entry or exit orders.

ParametersJSON Schema
NameRequiredDescriptionDefault
sellAmountYesHow much of the SELL token to spend. Use a decimal string for sell-token units (e.g. '0.01' means 0.01 ETH), '$5' or '5 usd' for a USD budget, or 'max'. Never convert a user's USD budget yourself.
buyTokenAddressNoBase address of the token being received (BUY token)
sellTokenAddressNoBase address of the token being spent (SELL token)
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is covered. The description adds value beyond annotations by explaining the flexible sellAmount formats (token units, USD budget, 'max') and the return type (normalized conditionalOrderHandoff). This gives the agent useful behavioral details 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 sentences, front-loaded with the primary action, and every clause informs usage. No filler or repetition of schema fields. The description is efficiently structured.

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 moderate complexity, the description covers the core purpose, input flexibility, chain, and output type. No output schema exists, but the description explains what is returned. It does not mention slippage or exact-output alternatives, but for a quote tool with strong annotations and detailed schema, this is adequately 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?

The input schema has 100% coverage with detailed descriptions for sellAmount, including the 'Never convert a user's USD budget yourself' instruction. The tool description essentially repeats the sellAmount semantics and adds the return type context. It does not add meaning to buyTokenAddress or sellTokenAddress beyond what the schema already states. Baseline 3 is appropriate since the schema already does the heavy lifting.

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 uses a specific verb ('Quote'), states the resource ('Base swap'), and clarifies the scope ('exact-input'). It clearly distinguishes from sibling swap quote tools by naming 'Base' and the input type. The phrase 'for explicit entry or exit orders' adds further specificity.

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 gives clear context: it quotes exact-input Base swaps and mentions the output (conditionalOrderHandoff) suitable for entry/exit orders. It does not explicitly say 'use this for Base chain, not for other chains', but the 'Base' keyword and the existence of sibling tools like ethSwapQuote and bscSwapQuote make the intended context clear. No exclusions or alternatives are mentioned, which is acceptable for a quote tool.

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

birdeyeTradeDataStandard Tools: birdeyeTradeDataA
Read-onlyIdempotent
Inspect

Get detailed trade data for a specific token from Birdeye. Supported chains: solana, ethereum, arbitrum, avalanche, bsc, optimism, polygon, base, zksync, sui. NOT supported: Hedera (use hederaTokensSwapQuote instead).

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain to fetch token data from. NOT supported: hederasolana
addressYesToken address to fetch trade data for
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, signaling a safe read operation. The description adds useful scoping by specifying supported chains and the Hedera exclusion, but it doesn't disclose other behavioral aspects such as return format, rate limits, or whether trade data is real-time/historical. With annotations covering safety, the description provides a moderate layer of additional context.

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 concise and front-loaded with the core purpose in the first sentence. The chain list is compactly embedded, and the exclusion is one clear sentence with a direct alternative. Every sentence earns its place without redundancy or filler.

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 2-parameter tool with excellent schema coverage and annotations, the description is sufficient for correct invocation: it names the data (trade data), the target (token), supported chains, and the unsupported chain with an alternative. No output schema exists, but the phrase 'detailed trade data' gives enough context, though slightly vague on the exact fields or time range. Overall, the description is complete enough for its complexity level.

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% for both parameters (address and chain), so the schema already documents each parameter fully. The description repeats the chain list and notes Hedera exclusion, which aligns with the schema's chain enum and description, but adds no new parameter-level meaning beyond what the schema provides. 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's function: 'Get detailed trade data for a specific token from Birdeye.' The verb 'Get' is specific, the resource 'detailed trade data' is unambiguous, and the target 'specific token' is precise. It distinguishes from sibling tools like birdeyeTrendingTokens (trending, not trade data) and solanaGetTokenPrices (prices, not trade data) by focusing on trade data, and also clarifies the scope of supported chains.

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 lists supported chains and explicitly names an unsupported chain with an alternative: 'NOT supported: Hedera (use hederaTokensSwapQuote instead).' This provides a clear when-not-to-use and points to the correct alternative tool. The chain enum in the schema further reinforces the usage context, making it obvious when this tool is applicable.

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

birdeyeTrendingTokensStandard Tools: birdeyeTrendingTokensA
Read-onlyIdempotent
Inspect

Get trending tokens from Birdeye with real-time price and market data. Supports multiple chains and sorting options.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain to fetch trending tokens from (e.g., solana, ethereum)
limitNoNumber of trending tokens to fetch (MAX 5)
offsetNoNumber of items to skip
sortByNoField to sort by. Currently only supports "rank"
sortTypeNoSort direction: "asc" for ascending, "desc" for descending
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description contributes only 'real-time price and market data' as an output expectation, not behavior such as ordering, pagination, limits, or rate-limit implications; there is 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, front-loaded sentence with no redundant phrases; every clause communicates source, data type, and capability.

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 read-only list tool with strong annotations and full schema coverage, this description is mostly sufficient: it names the data source, output type, and configurable aspects. The minor gaps are the absence of a return-shape outline and no mention of behavior when optional parameters (especially chain) are omitted, but the schema compensates for most of this.

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 chain, limit, offset, sortBy, and sortType are already documented with types, enums, and bounds. The description's mention of chains and sorting options only restates the schema and adds no extra semantic detail such as default chain behavior.

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 uses a specific verb ('Get') with a clearly scoped resource ('trending tokens from Birdeye') and adds meaningful qualifiers ('real-time price and market data', 'multiple chains', 'sorting options'). It distinguishes itself from ambiguous siblings like getTrendingCoins by naming the Birdeye source.

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 use case is implied: when an agent needs Birdeye trending tokens with live market data. However, it does not explicitly state when to prefer this over related siblings such as getTrendingCoins or birdeyeTradeData, nor does it mention exclusions or prerequisites.

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

bscfindMemeCoinsViaFourMemeBinance Smart Chain: bscfindMemeCoinsViaFourMemeA
Read-onlyIdempotent
Inspect

Find meme coins on BSC via FourMeme. Market cap is in BNB, price in USD.

ParametersJSON Schema
NameRequiredDescriptionDefault
labelsNo
symbolNo
orderByNoHot
pageSizeNo
pageIndexNo
tokenNameNo
listedPancakeNo
Behavior4/5

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

Annotations already declare read-only, non-destructive, idempotent behavior. The description adds valuable context about result units (market cap in BNB, price in USD), which is not available elsewhere. This supplements the annotations well.

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 extremely concise—two short sentences—and every word adds value. No repetition or fluff.

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

Completeness2/5

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

Given 7 optional parameters, no output schema, and no parameter descriptions, the description is too minimal. It covers purpose and units but lacks details about filtering, pagination, defaults, or return structure, leaving the agent underinformed.

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

Parameters2/5

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

Schema description coverage is 0%, and the description provides no explanation of any of the 7 parameters (labels, symbol, orderBy, pageSize, pageIndex, tokenName, listedPancake). The agent must rely on parameter names and enums alone, which is insufficient for proper usage.

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 finds meme coins on BSC via FourMeme, which is a specific verb+resource and differentiates from siblings like hederaFindMemeCoins (different chain) and getPumpFunTokens (different platform). No ambiguity.

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 usage for BSC-based meme coins via FourMeme, providing clear context for when to use this tool. However, it lacks explicit exclusions or comparison to alternatives, so it doesn't fully meet the highest bar.

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

bscGetBalancesBinance Smart Chain: bscGetBalancesA
Read-onlyIdempotent
Inspect

Return the user's wallet holdings on BNB Smart Chain (chain ID 56): native BNB plus all detected BEP-20 token balances with contract address, symbol, decimals, and USD value where pricing is available.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the description adds value by explaining what is returned: native BNB plus all detected BEP-20 balances with fields like contract address and USD value where pricing is available. This is a useful behavioral disclosure 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?

The description is a single, well-structured sentence that front-loads the core purpose and packs details without redundancy. Every phrase contributes meaningful 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 there are no parameters, no output schema, and strong annotations, the description is fully adequate. It explains the return contents and limitations (USD value only where pricing available), making it complete for a simple balance lookup 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?

The input schema has no parameters, and the rule sets a baseline of 4 for zero-parameter tools. The description still contributes by clarifying that the tool uses the user's wallet context, which is helpful.

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 user's wallet holdings on BNB Smart Chain (chain ID 56), specifying native BNB and BEP-20 tokens with contract address, symbol, decimals, and USD value. This distinguishes it from sibling getBalances tools for other chains.

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 makes the context clear by naming BNB Smart Chain and chain ID 56, implying it should be used for BSC holdings rather than other chains. However, it does not explicitly mention alternatives or exclusions, so it stops short of full guideline quality.

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

bscSwapQuoteBinance Smart Chain: bscSwapQuoteA
Read-onlyIdempotent
Inspect

Quote an exact-input BSC swap. The sellAmount may be sell-token units, a USD budget such as '$5', or 'max'. Returns a normalized conditionalOrderHandoff for explicit entry or exit orders.

ParametersJSON Schema
NameRequiredDescriptionDefault
sellAmountYesHow much of the SELL token to spend. Use a decimal string for sell-token units (e.g. '0.01' means 0.01 ETH), '$5' or '5 usd' for a USD budget, or 'max'. Never convert a user's USD budget yourself.
buyTokenAddressNoBSC address of the token being received (BUY token)
sellTokenAddressNoBSC address of the token being spent (SELL token)
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, making the read-only nature clear. The description adds useful context about sellAmount flexibility ('$5', 'max') and the normalized return format ('conditionalOrderHandoff'), which goes beyond the schema. No contradictions found.

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, front-loaded with the primary action and immediately useful details about parameter formats and return type. No filler or redundancy.

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?

The description covers the purpose, key parameter flexibility, and return type, but leaves gaps: buyTokenAddress and sellTokenAddress are optional in the schema yet logically needed for a swap, and the meaning of 'conditionalOrderHandoff' is undefined (no output schema). For a moderate-complexity tool, more prerequisite or return context would help.

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 schema already details sellAmount's formats and units. The description restates the sellAmount flexibility but adds no new parameter-level information beyond what's in the schema. It does clarify exact-input semantics, which is consistent with the schema's 'spend' interpretation.

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 verb and resource: 'Quote an exact-input BSC swap.' It distinguishes from sibling chain-specific quote tools (e.g., ethSwapQuote, polygonSwapQuote) by naming BSC and specifying exact-input, and it adds precision by mentioning the return type.

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 clear context: it's for BSC swaps with exact input amounts, and it notes the output is for 'explicit entry or exit orders.' However, it does not explicitly contrast with alternatives like exact-output quotes or other chains, relying on the title/name for differentiation.

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

checkRuneUnlockOrdiscan: checkRuneUnlockA
Read-onlyIdempotent
Inspect

Check when a specific rune name becomes available to etch.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the rune (spacers like • are automatically removed)
Behavior3/5

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

Annotations already provide readOnlyHint, idempotentHint, and destructiveHint, covering the safety profile. The description adds minimal behavioral context (availability timing) but does not disclose return format, edge cases, or block-height semantics. 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 focused sentence, front-loads the action and resource, and contains no filler or redundant information.

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?

The tool is simple with one documented parameter and strong annotations, but there is no output schema and the description does not clarify what the return value looks like or how edge cases are handled. This leaves some ambiguity for the 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?

The input schema has 100% coverage for the single 'name' parameter, including spacer removal behavior. The description adds no extra parameter semantics beyond 'specific rune name,' so it neither compensates nor harms.

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 uses a specific verb 'Check' and clearly identifies the resource: 'when a specific rune name becomes available to etch.' This distinguishes it from sibling tools like getRuneInfo or getLatestRunes by focusing on availability timing.

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 gives no explicit guidance on when to use this tool versus alternatives. It does not mention related tools, exclusion cases, or prerequisites, so the agent must infer applicability solely from the one-line purpose.

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

discoverLaunchLabTokensSolana: discoverLaunchLabTokensA
Read-onlyIdempotent
Inspect

Get LaunchLab / bonk.fun tokens. Pass size=5, paginate with nextPageId.

ParametersJSON Schema
NameRequiredDescriptionDefault
sizeNo
sortYes
mintTypeNodefault
nextPageIdNo
platformIdNoPlatformWhiteList
includeNsfwNo
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe read operation. The description adds a hint about pagination via nextPageId, which is useful, but it does not disclose return format or other behavioral traits beyond what annotations already provide.

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 short sentences, front-loaded with the purpose and then a pagination hint. There is zero wasted text; every sentence contributes meaning.

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

Completeness2/5

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

For a tool with 6 parameters, no output schema, and many sibling token tools, the description is severely under-specified. It provides a basic pagination pattern but omits critical details like valid sort values, platformId semantics, and return structure, making it insufficient for reliable invocation.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate for all parameters. It explains 'size' (pass size=5) and 'nextPageId' (paginate), but leaves 'sort', 'mintType', 'platformId', and 'includeNsfw' completely unexplained, including the required 'sort' parameter.

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 'Get LaunchLab / bonk.fun tokens' uses a specific verb and resource, making the purpose immediately clear. It also distinguishes this tool from sibling token tools like getPumpFunTokens or findSolanaGems by naming the LaunchLab platform.

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 LaunchLab/bonk.fun token discovery, which is a clear context, but it provides no explicit when-to-use instructions or alternative comparisons. It lacks guidance on when to prefer this over sibling tools, so it falls short of a 4.

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

emblemGetCollectionAssetsemblem: emblemGetCollectionAssetsA
Read-onlyIdempotent
Inspect

Get all assets within a specific curated collection for vault creation

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionNameYesCollection name (e.g., "Darkfarms", "SoG") - use emblem list collections first
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, so the safety profile is covered. The description adds the context 'specific curated collection' and 'vault creation', but does not disclose behaviors like pagination, return structure, or error conditions. It provides some added context but not rich behavioral detail.

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 that immediately states the action and target. It avoids filler and repeats nothing from the schema or annotations, making it highly 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's simplicity (one parameter), strong schema coverage, and rich annotations, the description is fairly complete for its purpose. It explains what it does and why it would be used. The lack of an output schema means the description could have mentioned the return format, but the phrase 'Get all assets' adequately conveys the core result for this context.

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 already provides a clear description of collectionName with examples and a hint to list collections first, so schema coverage is 100%. The description's reference to 'specific curated collection' reinforces the parameter's meaning but does not add substantial new information 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 uses a specific verb 'Get' with a clear resource 'all assets within a specific curated collection' and adds context 'for vault creation'. It distinguishes itself from sibling tools like emblemListCollections (lists collections) and emblemResolveAsset (resolves individual assets) by focusing on retrieving all assets in a collection.

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 the tool: during vault creation, and the schema parameter description explicitly advises 'use emblem list collections first', which provides actionable sequencing. However, it does not explicitly mention alternatives or when not to use this tool, so it stops short of full guidance.

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

emblemGetDepositAddressemblem: emblemGetDepositAddressA
Read-onlyIdempotent
Inspect

Get the deposit address for a vault where you can send assets. Shows which coins are accepted.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenIdYesThe vault token ID - get from emblem list my vaults
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior. The description adds context that this is a read operation for deposit addresses and mentions accepted coins, providing value 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?

The description is extremely concise, with exactly two sentences that immediately state the core function and a key feature. Every word contributes value, with no redundant filler.

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 (one parameter, read-only operation) and lack of output schema, the description provides adequate context by stating what is returned (deposit address and accepted coins). It does not describe the address format or network details, but these are likely less critical for this use case.

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 already documents the tokenId parameter with clear coverage (100%) and a helpful hint to get it from emblemListMyVaults. The description itself says nothing about parameters, so it does not add meaning beyond the schema, but the schema is sufficient.

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 action ('Get the deposit address for a vault') and adds a distinct detail ('Shows which coins are accepted'). This differentiates it from sibling tools like emblemListMyVaults and emblemGetCollectionAssets, which have different purposes.

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 context (deposit address for a vault) but does not explicitly state when to use this tool over alternatives. The schema parameter hints at obtaining the token ID from emblemListMyVaults, but the description itself lacks explicit guidance or exclusions.

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

emblemListCollectionsemblem: emblemListCollectionsA
Read-onlyIdempotent
Inspect

List all available curated collections for vault creation with asset details

ParametersJSON Schema
NameRequiredDescriptionDefault
showAllNoShow all collections including hidden ones
Behavior3/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior, so the bar is lower. The description adds minor context about 'curated collections' and 'asset details', but does not disclose deeper behavioral traits like pagination, rate limits, or what 'curated' means. This is acceptable but not rich.

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 that conveys the purpose and key output details without any wasted words.

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 listing tool with one optional parameter and strong annotations, the description adequately covers the core functionality and output hint ('with asset details'). It does not specify the return format, but that is not critical here.

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% (the single parameter showAll has a clear description). The tool description adds no additional parameter information, so the baseline 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 description states a specific action ('List all available curated collections for vault creation') with a clear resource and scope. It differentiates from siblings like emblemListMyVaults and emblemGetCollectionAssets by emphasizing the 'for vault creation' purpose.

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 phrase 'for vault creation' provides clear context for when to use this tool, but it does not explicitly mention alternatives or exclusions. There is no direct 'use this instead of X' guidance, though the context is sufficient for most cases.

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

emblemListMyVaultsemblem: emblemListMyVaultsA
Read-onlyIdempotent
Inspect

List all vaults owned by the connected wallet (or a specified address), with optional filtering by status

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoFilter by vault status - empty to show all
addressNoEVM wallet address (0x...). Omit to use connected wallet.
Behavior4/5

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

The annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, so the safety profile is covered. The description adds useful behavioral context: ownership scope (connected wallet or specified address) and optional status filtering, which go beyond the basic read-only nature.

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 that front-loads the main action and scope. Every word contributes value, with no redundant 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?

The tool is a simple list operation with low complexity. Although there is no output schema, the name and description make the return type (list of vaults) implicit. The description provides sufficient context for a straightforward read operation.

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% coverage with descriptions for both parameters. The description adds minimal extra meaning, merely restating that status filtering is optional and that an address can specify a wallet. This aligns with the baseline for schema-heavy cases.

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 specifies the action ('List'), the resource ('vaults'), and the scope ('owned by the connected wallet or a specified address'). It distinguishes itself from sibling tools by focusing on vaults rather than collections, assets, or deposit addresses.

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 clear context for when to use this tool: when you need vaults owned by a wallet, optionally filtered by status. It does not explicitly mention alternatives or exclusions, but the context is sufficient for the agent to differentiate from related emblem tools.

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

emblemResolveAssetemblem: emblemResolveAssetA
Read-onlyIdempotent
Inspect

Resolve an asset name to its curated collection. CRITICAL: Call this BEFORE emblemCreateVault when vaulting user assets to find the correct collection name.

ParametersJSON Schema
NameRequiredDescriptionDefault
assetNameYesThe asset name from user wallet (e.g., "TESTNETPEPE", "PEPECASH", "FDCARD")
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds valuable behavioral context beyond annotations: the mandatory sequencing with emblemCreateVault, which is essential for correct usage. 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 two sentences: the first states the core function, the second provides a critical usage directive. It is front-loaded, concise, and every word earns its place without unnecessary fluff.

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 simple one-parameter tool with rich annotations, the description fully explains what it does and when to use it. It does not describe return values (no output schema), but the critical ordering note with emblemCreateVault adds essential context. Sibling tools that might be alternatives are not explicitly contrasted, but the description is adequate for this low-complexity tool.

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?

Input schema covers 100% of parameters and includes a clear description with examples for 'assetName'. The tool description does not add additional parameter semantics, but the schema already provides sufficient meaning, so a 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 description clearly states the tool's function with a specific verb ('Resolve') and resource ('asset name to its curated collection'). It distinguishes itself from sibling tools like emblemListCollections by focusing on resolving a single asset name to its collection, and it references a concrete use case with emblemCreateVault.

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 explicitly indicates when to use the tool: 'BEFORE emblemCreateVault when vaulting user assets' and explains the purpose ('to find the correct collection name'). It does not explicitly mention alternatives or when not to use it, but the CRITICAL call-before instruction provides strong usage context.

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

ethGetBalancesEthereum: ethGetBalancesA
Read-onlyIdempotent
Inspect

Get wallet balances on Ethereum. CRITICAL: Use 'balance' for trades (exact units), NOT 'humanReadableBalance' (rounded for display).

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare read-only, idempotent, and non-destructive behavior. The description adds valuable context about the two balance representations and warns against using the rounded one for trades, going beyond structured fields.

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 deliver the core purpose and a critical usage warning without redundancy. The structure front-loads the main action and then highlights an important caveat, making it efficient and easy to parse.

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?

The description is sufficient for a simple read-only tool with no parameters, but it does not clarify how the wallet is identified (implicitly from context) nor list the full set of return fields. The critical warning about balance fields compensates somewhat, but some information about input context is missing.

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?

There are no parameters, so the schema coverage is trivially complete. Baseline for zero-parameter tools is 4; the description adds no parameter info but provides output field guidance, which is still relevant to usage.

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 fetches wallet balances on Ethereum, using a specific verb and resource. It distinguishes itself from sibling getBalances tools for other chains by naming the network, making its purpose unambiguous.

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 Ethereum wallet balances, and the network specificity helps tool selection. However, it does not explicitly mention alternatives or exclusions, but the critical note about using 'balance' vs 'humanReadableBalance' provides clear guidance on how to interpret the output.

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

ethSwapQuoteEthereum: ethSwapQuoteA
Read-onlyIdempotent
Inspect

Quote an exact-input Ethereum swap. The sellAmount may be sell-token units, a USD budget such as '$5', or 'max'. Returns a normalized conditionalOrderHandoff for explicit entry or exit orders.

ParametersJSON Schema
NameRequiredDescriptionDefault
sellAmountYesHow much of the SELL token to spend. Use a decimal string for sell-token units (e.g. '0.01' means 0.01 ETH), '$5' or '5 usd' for a USD budget, or 'max'. Never convert a user's USD budget yourself.
buyTokenAddressNoEthereum address of the token being received (BUY token)
sellTokenAddressNoEthereum address of the token being spent (SELL token)
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safe, non-destructive nature is covered. The description adds value by revealing that the tool returns 'a normalized conditionalOrderHandoff' and that sellAmount can be a USD budget or 'max', which are behavioral details not present in 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?

The description is two sentences long, front-loaded with the core purpose, and includes only essential details about sellAmount flexibility and the return type. Every sentence earns its place with no redundancy.

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?

The description mentions the return type (conditionalOrderHandoff) which compensates for the lack of an output schema. However, it does not explain how buy/sell token addresses are determined or what happens if they are omitted, which is a minor gap given the tool's complexity but not critical due to strong annotations and 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%, and the schema already provides a detailed description for sellAmount (including USD budget and 'max'). The tool description restates this but adds no new parameter-level information beyond what the schema provides. 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 opens with 'Quote an exact-input Ethereum swap,' which is a specific verb (Quote) + resource (Ethereum swap) + qualifier (exact-input). This clearly distinguishes it from sibling chain-specific tools like bscSwapQuote and polygonSwapQuote. The additional mention of 'explicit entry or exit orders' further clarifies its intended use case.

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 gives clear context by specifying 'exact-input' and 'explicit entry or exit orders,' which helps the agent understand when to use this tool. However, it does not explicitly contrast it with other swap quote tools or state when not to use it, so it falls 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.

findPositionByIdStandard Tools: findPositionByIdA
Read-onlyIdempotent
Inspect

Find a conditional trade position by ID across ALL networks. Use this when you have a position ID but don't know which network it's on.

ParametersJSON Schema
NameRequiredDescriptionDefault
positionIdYesThe position ID to find
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds useful context about the cross-network search behavior ('across ALL networks') but does not detail return format, error handling, or any additional behavioral traits. This is adequate but not rich.

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 the main purpose and followed by a clear usage directive. No wasted words; every sentence adds value.

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 1-parameter read-only lookup tool with strong annotations and full schema coverage, the description is adequately complete. It explains what it does and when to use it. Lacking explicit return value details is a minor gap given the tool's simplicity and the absence of an 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?

Schema description coverage is 100% with positionId described as 'The position ID to find,' so the schema already documents the parameter fully. The tool description adds no extra meaning beyond what the schema provides, matching the baseline for high coverage.

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 uses a specific verb ('Find') and resource ('conditional trade position') with scope ('across ALL networks'), clearly distinguishing it from sibling tools like getAllPositions and listPositions by focusing on ID-based lookup across networks.

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 explicitly states when to use this tool: 'Use this when you have a position ID but don't know which network it's on.' It provides clear context but does not name alternative tools or give explicit when-not-to-use guidance, 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.

findSolanaGemsSolana: findSolanaGemsA
Read-onlyIdempotent
Inspect

Discover trending Solana tokens or tokenized stocks. category='tokens': memecoins, DeFi tokens, SPL tokens (trending, popular, top traded, organic, new). category='stocks': tokenized equities on Solana (PreStocks, xStocks, rStocks) with real stock prices. Use for: 'trending tokens', 'find gems', 'top traded memecoins', 'show stocks on solana', 'TSLA stock token'. NOT for: specific token lookup (use findSolanaSwapToken), PumpFun queries (use getPumpFunTokens).

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax results to return (default 5)
sortByNoSort/ranking method (only applies to category='tokens', ignored for stocks)trending
maxMcapNoMax market cap in USD
minMcapNoMin market cap in USD
categoryYes'tokens' for crypto tokens/memecoins, 'stocks' for tokenized equities
maxVolumeNoMax volume in USD for the given timeframe
minVolumeNoMin volume in USD for the given timeframe
timeframeNoTimeframe for volume and price change stats24h
maxLiquidityNoMax liquidity in USD
maxNetVolumeNoMax net volume (buy - sell) in USD
minLiquidityNoMin liquidity in USD
minNetVolumeNoMin net volume (buy - sell) in USD
maxHolderCountNoMax number of holders
minHolderCountNoMin number of holders
maxNumNetBuyersNoMax net buyers (buyers - sellers)
minNumNetBuyersNoMin net buyers (buyers - sellers)
Behavior4/5

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

Annotations already provide readOnly, openWorld, idempotent, and non-destructive hints. The description adds value by explaining the two category modes and noting that stock tokens reflect real stock prices, which is beyond the structured metadata. No 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?

Three sentences, front-loaded with the core purpose, and every sentence adds useful context without redundancy. Excellent structure.

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

Completeness4/5

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

With 16 parameters and no output schema, the description provides sufficient context for tool selection by covering the two categories, use cases, and exclusions. The return type (list of tokens/stocks) is implied clearly by 'Discover... tokens'.

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%, so the baseline is 3. The description enriches parameter understanding by listing sort options (trending, popular, top traded, organic, new) matching enum values, and clarifying that category='stocks' ignores sortBy, adding 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?

The description clearly states the tool discovers trending Solana tokens or tokenized stocks. It explicitly distinguishes from siblings by naming findSolanaSwapToken and getPumpFunTokens for other use cases, and provides concrete example intents like 'trending tokens' and 'TSLA stock token'.

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?

It includes explicit 'Use for' and 'NOT for' sections with specific alternative tool names, making it unambiguous when to select this tool over others.

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

findSolanaSwapTokenSolana: findSolanaSwapTokenA
Read-onlyIdempotent
Inspect

Find a Solana token by name or symbol. Use when splBuyIntent reports ambiguous token symbol.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNameYesToken name or symbol to search
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds minimal behavioral context beyond the trigger, but does not describe return value, error handling, or scope. With annotations present, this is adequate but not rich.

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 concise sentences, front-loaded with the core purpose, and contains no waste. Every sentence 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?

For a simple, single-parameter lookup tool with good annotations, the description provides sufficient context including the specific trigger scenario. It could mention what the tool returns, but given the lack of an output schema and the simplicity of the tool, the description is adequate.

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 already fully describes the single parameter tokenName as 'Token name or symbol to search,' and the description echoes this. With 100% schema coverage, the description adds no additional parameter semantics, 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?

The description clearly states 'Find a Solana token by name or symbol' with a specific verb and resource. It distinguishes itself from sibling tools by adding the trigger condition 'Use when splBuyIntent reports ambiguous token symbol,' making its purpose unique.

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 an explicit when-to-use context ('Use when splBuyIntent reports ambiguous token symbol'), which helps an agent decide. However, it does not mention alternatives or when not to use, so it is a 4 rather than a 5.

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

firecrawlExtractAdvanced Search: firecrawlExtractC
Read-onlyIdempotent
Inspect

Investigate or Extract structured data from web pages or urls using Firecrawl

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
promptNo
optionsNo
enableWebSearchNo
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds minimal context beyond this, like the fact that it uses Firecrawl and extracts structured data, but does not disclose potential rate limits, external dependency costs, or failure behavior.

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, front-loaded sentence with no redundant phrasing aside from 'Investigate or', which slightly dilutes precision. It earns a high score for being compact and easy to parse.

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

Completeness2/5

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

Given the tool has nested objects (options), 4 parameters, and no output schema, the description is far too sparse. It does not explain return values, how prompts interact with extraction, or the meaning of enableWebSearch, making it inadequate for correct invocation in many scenarios.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate by explaining parameters, but it does not. It only hints at the 'url' resource and says nothing about 'prompt', 'options', or 'enableWebSearch', leaving the agent without enough information to correctly populate these fields.

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 a specific action ('Extract structured data') and resource ('web pages or urls'), and references Firecrawl as the underlying service. However, it does not explicitly distinguish itself from the sibling 'websearch' tool, relying on the word 'Extract' to imply a difference.

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?

There is no guidance on when to use this tool versus alternatives like 'websearch' or other chain-specific tools. The description only states what the tool does, not in what context it should be chosen or when to avoid it.

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

getAlkaneAddressBalanceOrdiscan: getAlkaneAddressBalanceA
Read-onlyIdempotent
Inspect

Get the alkane balance for a Bitcoin address. This includes tokens, NFTs, contracts, and any other type of alkane.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesThe Bitcoin address
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior. The description adds scope context (includes NFTs, contracts, etc.) but doesn't disclose return format, pagination, or edge cases. This is acceptable given the simple read-only nature.

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 short sentences, front-loaded with the core action, and every word earns its place. The second sentence clarifies scope without padding.

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 read-only tool with one parameter and strong annotations, the description is complete enough. It specifies the address input and the full scope of returned data, with no output schema 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?

The input schema has 100% coverage for the single parameter (bitcoinAddress) with a description 'The Bitcoin address'. The tool description repeats the parameter's purpose but adds no additional format or example details, so it does not go 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 the verb 'Get' and the resource 'alkane balance for a Bitcoin address', and explicitly lists what is included ('tokens, NFTs, contracts, and any other type of alkane'). This distinguishes it from sibling tools like getAlkaneAddressUTXOs and getAlkaneInfo.

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 clear context for when to use the tool: when you need the alkane balance for a Bitcoin address. It doesn't explicitly exclude alternatives or name sibling tools, but the scope is clear and self-contained.

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

getAlkaneAddressUTXOsOrdiscan: getAlkaneAddressUTXOsA
Read-onlyIdempotent
Inspect

Get the UTXOs for a given Bitcoin address. This includes tokens, NFTs, contracts, and any other type of alkane.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesThe Bitcoin address
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 that the UTXOs include tokens, NFTs, contracts, and other alkanes, clarifying the asset scope beyond the name. It does not specify edge cases like whether all UTXOs or only alkane-bearing ones are returned, but the annotation coverage lowers the bar.

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 the verb and resource front-loaded. Every word earns its place, and there is no redundant or 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?

For a simple read-only tool with one parameter and rich annotations, the description provides enough context about what is returned. It could be more explicit about whether only alkane-bearing UTXOs are returned, but the name clarifies that, and no output schema is needed for this level of simplicity.

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 schema provides a description for the single parameter ('The Bitcoin address') with 100% coverage. The tool description does not add any additional format, validation, or context beyond what the schema already gives, so the baseline 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 description clearly states it retrieves UTXOs for a Bitcoin address, specifically those related to alkanes, including tokens, NFTs, contracts, and other types. This distinguishes it from siblings like getUtxoRunes (runes) and getBTCBalances (BTC balances).

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 is provided on when to use this tool versus alternatives such as getAlkaneAddressBalance or getUtxoRunes. The description simply states what it does without any exclusions, prerequisites, or context for selection.

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

getAlkaneInfoOrdiscan: getAlkaneInfoA
Read-onlyIdempotent
Inspect

Fetch metadata for a single Alkane by its protocol ID: name, symbol, supply, type, and contract details if applicable.

ParametersJSON Schema
NameRequiredDescriptionDefault
idYesAlkane protocol ID in 'block:tx' format (e.g. '2:42'). Both components are required.
Behavior4/5

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

Annotations already declare readOnly, idempotent, and non-destructive behavior, so the description need not repeat safety. It adds value by enumerating the exact metadata fields returned and noting the conditional 'if applicable' for contract details, 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.

Conciseness5/5

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

One sentence, front-loaded with the action, and no fluff. It efficiently conveys purpose and return fields.

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 read-only lookup with one parameter, full schema coverage, and strong annotations, the description is complete. It explains what data is returned, which suffices given no output schema exists.

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 single parameter 'id' is fully documented in the schema with format and example, leaving nothing for the description to add. With 100% schema coverage, 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 fetches metadata for a single Alkane by protocol ID, listing specific fields (name, symbol, supply, type, contract details). This distinct purpose stands out from siblings like getAlkaneAddressBalance and listAlkanes.

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 phrase 'single Alkane' and 'metadata' provide clear context that this tool is for one-item lookups, differentiating it from balance or listing tools. However, it does not explicitly name alternatives or state when not to use it, so it falls just 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.

getAllPositionsStandard Tools: getAllPositionsA
Read-onlyIdempotent
Inspect

Get ALL conditional trade positions across ALL networks (Solana, Ethereum, BSC, Polygon, Hedera, Base) in a single call. Optionally filter by position status: OPEN, CLOSED, CANCELLED, FAILED.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoOptional: Filter by position status
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds useful context about cross-network scope and the optional status filter. However, it does not disclose potential behavioral traits such as pagination, rate limits, or response size, which would be valuable for a tool that fetches 'ALL' positions. Similar to the TDQS 4.3 example, this adds some value but not rich behavioral detail.

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, front-loaded with the core purpose and scope, followed by the optional filter. Every word earns its place; there is no redundancy or fluff.

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 read-only tool with rich annotations and a single optional parameter, the description is largely complete. It identifies the networks, the filter options, and the all-in-one nature. However, it does not describe the return format or any caveats about result size, and it lacks explicit differentiation from listPositions, which slightly reduces completeness.

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 only parameter 'status' is already fully described in the schema with an enum list and a description. The tool description repeats the enum values in prose, which is marginally helpful but adds no new semantic depth. With 100% schema coverage, the baseline 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 description uses a strong verb ('Get') and specifies the resource ('conditional trade positions') with an explicit scope ('ALL networks... in a single call'). It clearly distinguishes itself from siblings like findPositionById (which targets a specific position) and getPolyMarketUserPositions (which is user-specific and limited to Polymarket).

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 clearly implies the use case: retrieve all conditional trade positions across all supported networks at once. It states the optional status filter, providing context on how to narrow results. However, it does not explicitly mention when not to use it or point to alternatives (e.g., listPositions for a specific network), leaving a small gap in usage guidance.

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

getBitcoinCollectionsOrdiscan: getBitcoinCollectionsA
Read-onlyIdempotent
Inspect

Browse all indexed Bitcoin Ordinals inscription collections (paginated). Returns each collection's slug, name, supply, and identifiers — useful for discovery before drilling into floor price or assets via getCollectionInfo / getCollectionMarketInfo.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page number for paginating the collections list. Omit for the first page.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds value by disclosing that results are paginated and that returns include slug, name, supply, and identifiers. It explains the tool's scope ('all indexed') and its role in discovery, which goes beyond bare annotation flags. A slight gap is no mention of rate limits or paging details, but that is minor for a read-only list endpoint.

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, front-loaded with the primary purpose, followed by return fields and usage guidance. Every clause adds value with no redundancy or fluff. It's efficiently structured and immediately understandable.

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 list tool with one optional parameter, the description fully explains what it returns and how to use it. It mentions pagination, return fields, and the use case. An output schema is absent, but the description compensates by listing the returned fields. There are no other behavioral aspects that need disclosure in this context.

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 single parameter 'page' is fully described in the input schema (1-indexed, omit for first page), so schema coverage is 100%. The description reinforces the 'paginated' nature but doesn't add new semantic information beyond the schema. Baseline 3 is appropriate because the schema does the heavy lifting.

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: 'Browse all indexed Bitcoin Ordinals inscription collections (paginated).' It specifies the resource (Bitcoin Ordinals inscription collections) and the action (browse/returns), and differentiates it from siblings by mentioning pagination and pointing to getCollectionInfo/getCollectionMarketInfo for more specific lookups.

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 says the tool is 'useful for discovery before drilling into floor price or assets via getCollectionInfo / getCollectionMarketInfo,' naming concrete alternatives and indicating when to use this tool versus those. This provides clear context for selection.

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

getBRC20ActivityOrdiscan: getBRC20ActivityA
Read-onlyIdempotent
Inspect

Return the BRC-20 token transfer history for a given Bitcoin address (deploys, mints, transfers, sends, receives) with timestamps and amounts. Paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page number for activity pagination.
bitcoinAddressYesBitcoin address whose BRC-20 activity to retrieve.
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safe profile is covered. The description adds the pagination behavior and specifies the types of activity included, providing context beyond the structured annotations. No contradiction exists.

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 that conveys the core purpose and key output details without waste. Every clause adds value: the resource, address, activity types, and pagination.

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 list tool with no output schema, the description adequately covers what is returned (activity types, timestamps, amounts) and pagination. It is sufficiently complete for an agent to understand the tool's behavior, though it could optionally mention field details or maximum page size.

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 schema covers both parameters (bitcoinAddress and page) at 100% coverage with descriptions. The tool description adds only 'Paginated' which hints at the page parameter but provides no additional semantic detail. Baseline 3 is appropriate given the schema already documents the parameters.

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 uses a specific verb ('Return') and clearly identifies the resource ('BRC-20 token transfer history for a given Bitcoin address'). It enumerates activity types (deploys, mints, transfers, sends, receives) and includes timestamps and amounts, fully distinguishing it from sibling tools like getInscriptionActivity or getRunesActivity.

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 clearly implies when to use this tool: when you need BRC-20 transfer history for a Bitcoin address. However, it does not explicitly name alternatives or state when not to use it, so it falls short of a 5. The context is unambiguous enough for an agent to select it appropriately.

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

getBRC20TokenInfoOrdiscan: getBRC20TokenInfoA
Read-onlyIdempotent
Inspect

Fetch protocol + market metadata for a single BRC-20 token by ticker: current USD price, total supply, max supply, mint progress, holder count, and market cap.

ParametersJSON Schema
NameRequiredDescriptionDefault
tickerYesBRC-20 token ticker, typically 4 characters (e.g. 'ORDI', 'SATS'). Case-insensitive.
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, establishing a safe read operation. The description adds the returned data fields but provides no further behavioral details such as error handling, rate limits, or response format. It does not contradict 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?

A single, well-structured sentence that front-loaded the verb and resource, followed by a list of returned fields. No filler or redundant content.

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 single-parameter tool with no output schema, the description enumerates all key return values (price, supplies, mint progress, holders, market cap), covering essential information. Combined with strong annotations, this is 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?

The input schema fully describes the ticker parameter with details on typical length and case-insensitivity, achieving 100% coverage. The description merely restates 'by ticker' without adding extra meaning, so the baseline 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?

The description states a specific verb ('Fetch') and resource ('protocol + market metadata') scoped to a single BRC-20 token by ticker, listing concrete fields returned. This clearly differentiates it from sibling tools like getBRC20Activity (activity) or listBRC20Tokens (listing).

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 context is clear: use this tool to fetch metadata for one BRC-20 token by ticker. However, it does not explicitly mention alternatives or when-not-to-use, unlike the highest-calibrated examples. Still, the scope is unambiguous.

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

getBTCBalancesOrdiscan: getBTCBalancesA
Read-onlyIdempotent
Inspect

Return native BTC balances for the user's wallet, broken out by both the taproot (P2TR) and nested segwit (P2WPKH) addresses, in BTC and sats. Does NOT include runes, ordinals/inscriptions, or Counterparty assets — use the dedicated getRuneBalances / getInscriptionsByAddress / getXCPBalances tools for those.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is clear. The description adds useful behavioral context beyond annotations by specifying the address types (P2TR, P2WPKH), units (BTC and sats), and exclusions. It does not mention potential edge cases like empty wallets or authentication, but given annotation coverage, it is sufficiently transparent.

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 exactly two sentences, front-loaded with the primary purpose in the first sentence and exclusions/alternatives in the second. There is no redundant information; every sentence 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 low complexity (no parameters, no output schema), the description fully covers what the tool does and what it returns: native BTC balances by address type in BTC and sats. It also clarifies exclusions and directs to alternatives, making it complete for 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?

The tool has 0 parameters, so the baseline is 4. The description does not need to explain parameters because none exist. It correctly focuses on the output and scope rather than input semantics.

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 uses a specific verb ("Return") and clearly identifies the resource (native BTC balances) and scope (user's wallet, broken out by taproot and nested segwit addresses, in BTC and sats). It further distinguishes itself from sibling tools by explicitly listing what it does NOT include (runes, ordinals/inscriptions, Counterparty assets) and pointing to dedicated tools for those assets.

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?

Provides explicit usage guidance: it states the tool returns only native BTC balances and explicitly says to use getRuneBalances / getInscriptionsByAddress / getXCPBalances for runes, inscriptions, and Counterparty assets. This clearly tells an agent when to use this tool versus alternatives.

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

getChangeNowSupportedCurrenciesStandard Tools: getChangeNowSupportedCurrenciesA
Read-onlyIdempotent
Inspect

Get supported currencies for cross-chain swaps

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoSearch query for currency name/ticker
networksYesNetworks to filter currencies by
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, providing the safety profile. The description adds no additional behavioral context such as rate limits, return shape, or edge cases. It does not contradict annotations, but does not enrich 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?

The description is a single, concise sentence that fully conveys the tool's purpose without unnecessary words. It is efficiently front-loaded and contains no redundant 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?

The tool is simple with two parameters, rich annotations (read-only, idempotent, non-destructive), and full schema coverage. Despite lacking an output schema, the description, combined with annotations and schema, provides sufficient context for an agent to correctly select and invoke the tool.

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?

Input schema has 100% description coverage for both parameters (query and networks). The description does not add further parameter-level detail, but the schema already explains them adequately, 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?

The description clearly states the tool's function: 'Get supported currencies for cross-chain swaps'. It uses a specific verb (Get), identifies the resource (supported currencies), and provides context (cross-chain swaps). This distinguishes it from sibling tools like getChangeNowSwapQuote, which handles quotes rather than supported currency listings.

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 checking supported currencies before cross-chain swaps, but does not explicitly state when to use it versus alternatives or mention exclusions. The sibling getChangeNowSwapQuote is present but no guidance is given for choosing between them.

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

getChangeNowSwapQuoteStandard Tools: getChangeNowSwapQuoteA
Read-onlyIdempotent
Inspect

Get a swap quote for cross-chain exchange. Tickers must be supported by ChangeNow.

ParametersJSON Schema
NameRequiredDescriptionDefault
toTickerYesDestination currency ticker (e.g., 'sol')
fromAmountYesAmount of source currency (e.g., 1 for 1 ETH)
fromTickerYesSource currency ticker (e.g., 'eth')
Behavior4/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds a useful behavioral constraint not in the schema: that tickers must be supported by ChangeNow. This provides extra context about potential failures without contradicting 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?

The description is two concise sentences, directly stating the purpose and a key constraint. There is no redundant language or filler, making it highly scannable and appropriate for an agent.

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 simple parameter set (three string/number params, 100% schema coverage) and the presence of safety annotations, the description provides sufficient context for basic usage. However, since there is no output schema, the description could be slightly more explicit about the return value (e.g., that it returns an estimated rate and payout). The mention of 'swap quote' partially covers this, but not entirely.

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 all three parameters with clear descriptions and examples (e.g., fromTicker as 'eth'). The description adds a notable constraint that tickers must be supported by ChangeNow, which is a semantic requirement beyond the schema's basic type descriptions. While the description doesn't elaborate on the fromAmount semantics, the schema already handles that.

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 starts with a specific verb ('Get') and resource ('swap quote'), clearly indicating a cross-chain exchange context. It also names the platform (ChangeNow) and adds a constraint ('Tickers must be supported by ChangeNow'), which helps distinguish it from sibling swap-quote tools like baseSwapQuote or ethSwapQuote.

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 phrase 'cross-chain exchange' clearly implies this tool is for cross-chain swaps rather than same-chain quotes, giving the agent a sense of when to use it. However, it does not explicitly name alternatives or state when not to use it, so it falls short of an explicit when/when-not/alternatives rubric.

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

getCollectionInfoOrdiscan: getCollectionInfoA
Read-onlyIdempotent
Inspect

Fetch a Bitcoin Ordinals collection's metadata by its slug: name, description, supply, twitter, website, and image. Pair with getCollectionMarketInfo for floor/market data.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesCollection slug as indexed by Ordiscan (e.g. 'taproot-wizards', 'nodemonkes').
Behavior3/5

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

Annotations already disclose the tool as read-only, idempotent, and non-destructive. The description adds the list of returned fields but no additional behavioral caveats such as rate limits or auth requirements. It aligns with annotations without introducing new transparency details.

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 with no filler. The first sentence states the core function and output fields, while the second provides a useful pointer to a complementary tool. Every word earns its place.

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 single-parameter read-only fetch, the description covers the returned metadata fields and the companion tool for market data. With annotations covering safety and the schema covering parameters, no further details are necessary.

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 fully describes the sole parameter 'slug' with an explanation and examples. The description adds no additional parameter-level meaning, but since schema coverage is 100%, the 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 description clearly states the tool's function with a specific verb ('Fetch') and resource ('Bitcoin Ordinals collection's metadata'), and lists the exact fields returned. It also distinguishes itself from siblings by referencing getCollectionMarketInfo for floor/market data, making the scope unmistakable.

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 provides explicit guidance by naming getCollectionMarketInfo as the companion tool for floor/market data. This implies that getCollectionInfo is for static metadata, giving the agent a clear when-not-to-use signal and a direct alternative.

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

getCollectionInscriptionsOrdiscan: getCollectionInscriptionsA
Read-onlyIdempotent
Inspect

List the inscriptions that belong to a given Bitcoin Ordinals collection (the collection's items). Returns inscription IDs and basic metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesCollection slug as indexed by Ordiscan (e.g. 'taproot-wizards').
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds behavioral context by specifying the return content ('Returns inscription IDs and basic metadata'), which is beyond what annotations provide.

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, focused sentence that front-loads the action and resource, followed by a brief note on the return value. Every word earns its place with no redundancy.

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 read-only tool with one well-documented parameter and comprehensive annotations, the description fully covers the purpose, input, and return format. No output schema is provided, but the description compensates with the return summary.

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 already provides full coverage for the only parameter (slug) with a clear description and example. The tool description adds no additional parameter-level meaning beyond what the schema documents, so the 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 description uses a specific verb 'List' with a clearly defined resource: inscriptions belonging to a given Bitcoin Ordinals collection. It explicitly states this is the collection's items, which distinguishes it from sibling tools like getCollectionInfo (collection metadata) and getCollectionMarketInfo (market data).

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 clearly implies the tool is for retrieving the items of a specific collection, providing context for when to use it. It does not explicitly mention alternatives or exclusions, but the scope is clear enough to guide selection among sibling tools.

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

getCollectionMarketInfoOrdiscan: getCollectionMarketInfoA
Read-onlyIdempotent
Inspect

Get market info for a Bitcoin inscription collection: floor price in sats and USD, market cap in BTC and USD. Use this when user asks about collection prices, valuations, or floor prices.

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesThe collection slug (e.g., 'bitcoin-puppets', 'nodemonkes')
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no additional behavioral traits beyond the data returned; it is consistent but not additive, so a baseline score of 3 is appropriate.

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, front-loaded with purpose and followed by usage. Every word earns its place; 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?

For a simple single-parameter tool with rich annotations, the description fully specifies what is returned (floor price and market cap in both BTC/sats and USD) and when to use it. No output schema exists, but the description adequately covers expected information.

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 single parameter 'slug' is fully documented in the schema with a clear description and examples (bitcoin-puppets, nodemonkes). The tool description does not add parameter details, but schema coverage is 100%, so baseline 3.

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 retrieves market info for a Bitcoin inscription collection, listing specific metrics (floor price in sats/USD, market cap in BTC/USD). This distinguishes it from sibling tools like getCollectionInfo and getCollectionVolume.

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 timing guidance: 'Use this when user asks about collection prices, valuations, or floor prices.' However, it does not name alternative tools for volume or basic info, so it lacks explicit exclusions/alternatives.

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

getCollectionVolumeOrdiscan: getCollectionVolumeA
Read-onlyIdempotent
Inspect

Get trading volume and market stats for a Bitcoin ordinal collection from Magic Eden. Returns total volume, floor price, supply, owners, and listings. Use this for questions about collection trading activity or volume.

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionSymbolYesThe collection symbol/slug (e.g., 'bitcoin-puppets', 'nodemonkes', 'quantum-cats')
Behavior3/5

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

The annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds that it returns total volume, floor price, supply, owners, and listings, which is useful but does not go beyond that baseline. No additional behavioral traits like error conditions or external dependencies are disclosed.

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 three concise sentences, front-loaded with the main verb and resource, and each sentence contributes meaningful information—what it does, what it returns, and when to use it. No wasted 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?

With only one required parameter, strong annotations, and a clear description of both behavior and return fields, the description provides a complete picture for an agent. There is no output schema, but the description explicitly lists the returned data, so the agent knows what to expect.

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 provides 100% coverage for the single collectionSymbol parameter, including examples. The description does not add any parameter-specific meaning, so the baseline score of 3 applies.

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 gets trading volume and market stats for a Bitcoin ordinal collection from Magic Eden, and lists the specific data returned. It distinguishes itself by focusing on volume/market statistics, but does not explicitly differentiate from the similar sibling getCollectionMarketInfo, so it falls short of a perfect 5.

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 includes 'Use this for questions about collection trading activity or volume,' which gives explicit when-to-use guidance. However, it provides no exclusions or alternatives, so it does not earn the full 5 for explicit when-not/alternatives.

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

getCryptoPriceOrdiscan: getCryptoPriceA
Read-onlyIdempotent
Inspect

Get the current USD price of a major cryptocurrency. Use this when the user asks about the price, value, or worth of BTC, ETH, SOL, BNB, or HBAR. This is the PRIMARY tool for answering questions like 'What's Bitcoin worth?', 'ETH price', 'How much is SOL?', or 'Tell me about Bitcoin'.

ParametersJSON Schema
NameRequiredDescriptionDefault
coinIdYesCoin symbol or name: 'btc', 'bitcoin', 'eth', 'ethereum', 'sol', 'solana', 'bnb', 'binancecoin', 'hbar', 'hedera'
Behavior3/5

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

Annotations already declare readOnlyHint true, openWorldHint true, idempotentHint true, and destructiveHint false, which align with the description. The description adds no extra behavioral context such as data source, rate limits, or handling of unsupported coins. Since annotations cover the safety profile, a baseline of 3 is appropriate.

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: the first states the core function, the second provides usage context and examples. Every sentence earns its place, with no unnecessary detail.

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, single-parameter, read-only price lookup tool with strong annotations, the description covers purpose, usage, and supported coins. It does not discuss behavior for unsupported coins or return format, but these are minor gaps given the tool's simplicity and the presence of annotations.

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 provides 100% coverage for coinId, listing all accepted aliases in its description. The tool description repeats some of these examples but does not add meaningful new semantics beyond the schema, so it remains at the baseline for high schema coverage.

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 gets the current USD price of major cryptocurrencies and lists specific supported coins (BTC, ETH, SOL, BNB, HBAR). It positions itself as the PRIMARY tool for price questions, which helps differentiate it from other price-related tools in the sibling list.

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 explicitly says when to use the tool ('Use this when the user asks about the price, value, or worth of...') and provides example queries. It does not explicitly state when not to use it or name alternative tools, but the primary guidance is clear and actionable.

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

getInscriptionActivityOrdiscan: getInscriptionActivityA
Read-onlyIdempotent
Inspect

Return the inscription transfer history for a given Bitcoin address (incoming and outgoing inscription movements with timestamps and counterparties), paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page number for activity pagination.
bitcoinAddressYesBitcoin address whose inscription activity to retrieve.
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false. The description adds that results include incoming/outgoing movements with timestamps and counterparties, and that results are paginated. This is useful but does not disclose additional traits like data freshness or rate limits, and the description does not contradict 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?

A single sentence that is front-loaded with the action and includes all key details (incoming/outgoing, timestamps, counterparties, pagination) without any wasted words or repetition.

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 read-only tool with two parameters and good annotations, the description sufficiently explains what the tool returns and mentions pagination. It lacks details on edge cases or return format specifics, but overall it is complete enough for expected usage.

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?

Both parameters have complete schema descriptions: 'bitcoinAddress' is 'Bitcoin address whose inscription activity to retrieve' and 'page' is '1-indexed page number for activity pagination'. Since schema coverage is 100%, the description adds little beyond referencing pagination, which is already in 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 starts with a specific verb and resource ('Return the inscription transfer history for a given Bitcoin address'), and further details incoming/outgoing movements with timestamps and counterparties, plus pagination. This clearly distinguishes it from related tools like getInscriptionsByAddress or getBRC20Activity.

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 clear context for when to use the tool: when you need transfer history for a Bitcoin address. However, it does not explicitly mention alternatives or exclusions, such as when to use 'inscriptionTransferActivity' or that this is not for current holdings.

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

getInscriptionInfoOrdiscan: getInscriptionInfoA
Read-onlyIdempotent
Inspect

Fetch metadata for a single Bitcoin Ordinals inscription: content type, content URL, current owner, satpoint, inscription number, genesis transaction, and timestamp.

ParametersJSON Schema
NameRequiredDescriptionDefault
inscriptionIdYesInscription ID in the form '<txid>i<index>' (e.g. 'b1f...i0').
Behavior3/5

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

Annotations already declare the tool as read-only, idempotent, and non-destructive, covering the primary behavioral safety aspect. The description adds the content of the response but no additional behavioral caveats (e.g., error handling, data availability, or ordering). Since annotations carry the safety burden, a score of 3 is appropriate for a simple fetch operation.

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, well-structured sentence that states the action (Fetch metadata) and lists the specific data returned. It is front-loaded with the verb and resource, containing no filler or redundant 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?

With no output schema, the description compensates by listing the expected metadata fields, giving the agent a clear picture of the response. It does not describe potential error responses or edge cases (e.g., invalid inscriptionId), but for a simple single-item fetch with one parameter, this level of detail is adequate.

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 schema description for inscriptionId is detailed (format '<txid>i<index>' with example), providing 100% coverage. The tool description does not add further parameter-specific semantics beyond referring to a 'single Bitcoin Ordinals inscription,' so the baseline of 3 is warranted.

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 fetches metadata for a single Bitcoin Ordinals inscription and enumerates the specific fields returned (content type, content URL, owner, satpoint, inscription number, genesis transaction, timestamp). The phrase 'single' distinguishes it from related sibling tools like getInscriptionActivity or getCollectionInfo, making its purpose unambiguous.

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 usage for retrieving detailed metadata of one inscription, which is distinct from activity, traits, or collection-level tools. It provides clear context but does not explicitly exclude alternatives or name sibling tools for contrast, so it falls short of a perfect 5.

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

getInscriptionsByAddressOrdiscan: getInscriptionsByAddressA
Read-onlyIdempotent
Inspect

Return paginated, fully-detailed Bitcoin Ordinals inscriptions held by a given Bitcoin address (number, content type, traits, satpoint). Use this to display a wallet's NFT-style holdings.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page number for paginating large inscription sets. Omit for the first page.
bitcoinAddressYesBitcoin address whose inscriptions to fetch.
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds useful behavioral context beyond those: it specifies pagination ('paginated') and the level of detail returned ('fully-detailed'), including specific fields. This complements the annotations without redundancy.

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 the primary action and key details, followed by a clear use case. Every word earns its place; no fluff or repetition.

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?

This is a simple read tool with good annotations and complete schema coverage. The description covers purpose, pagination, and return fields, which is sufficient for an agent to select and invoke it. It could mention address format requirements or empty-result behavior, but those are minor gaps given the tool's simplicity.

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 schema covers both parameters with descriptive explanations (bitcoinAddress and page). The description reinforces that results are paginated and address-specific but doesn't add new semantics beyond the schema. With 100% schema coverage, a baseline 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 description uses a specific verb ('Return') and identifies the resource ('Bitcoin Ordinals inscriptions held by a given Bitcoin address') along with key fields ('number, content type, traits, satpoint'). It also adds a use case ('display a wallet's NFT-style holdings') that distinguishes it from other inscription-related tools like getInscriptionInfo or getCollectionInscriptions.

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 clearly states when to use the tool: 'Use this to display a wallet's NFT-style holdings.' This provides a clear context for usage, though it doesn't explicitly name alternatives or exclusions. That's enough for a clear read-only query tool.

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

getInscriptionTraitsOrdiscan: getInscriptionTraitsA
Read-onlyIdempotent
Inspect

Fetch the trait/attribute set for a single Bitcoin inscription (NFT-style traits used for collection rarity ranking). Returns an empty array when no traits are indexed.

ParametersJSON Schema
NameRequiredDescriptionDefault
inscriptionIdYesInscription ID in the form '<txid>i<index>' (e.g. 'b1f...i0').
Behavior4/5

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

Annotations already cover read-only, idempotent, and non-destructive behavior. The description adds the empty-array fallback when no traits are indexed, providing a useful behavioral detail beyond the annotations. No contradiction detected.

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 concise sentences, with the action and primary resource front-loaded. Every word earns its place, and there is no redundant filler.

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 one-parameter tool with no output schema, the description explains the return fallback (empty array) and the clear purpose. It does not detail the trait object structure, but given the low complexity and strong schema coverage, this is sufficient for selection and 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 coverage is 100%, with the only parameter clearly documented. The description adds no new parameter semantics, just reinforces that it operates on a single inscription. Baseline 3 is appropriate when schema already provides complete parameter information.

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 'Fetch the trait/attribute set for a single Bitcoin inscription' with a specific verb and resource, and further distinguishes itself by mentioning NFT-style traits for collection rarity ranking. This sets it apart from sibling tools like getInscriptionInfo or getInscriptionActivity.

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 clear context for when to use this tool (to retrieve traits for rarity ranking) but does not explicitly name alternatives or state when not to use it. The specialized purpose implicitly guides selection, but explicit exclusions are absent.

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

getLatestInscriptionsOrdiscan: getLatestInscriptionsA
Read-onlyIdempotent
Inspect

Browse the most recently created Bitcoin Ordinals inscriptions network-wide (newest first by default). Use this to discover newly-minted inscriptions, NOT to look up inscriptions on a specific address.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortYesSort order: 'inscription_number_desc' for newest first, 'inscription_number_asc' for oldest first.
afterNoCursor: return inscriptions with inscription number greater than this value.
beforeNoCursor: return inscriptions with inscription number less than this value.
Behavior4/5

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

Beyond the annotations (readOnly, non-destructive, idempotent), the description adds that the tool operates network-wide and defaults to newest-first ordering. It also clarifies that address-specific queries are out of scope, providing useful behavioral context.

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, front-loaded with the core purpose and immediately followed by usage guidance. No unnecessary words or repetition.

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 three-parameter read-only list tool, the description covers purpose, scope, and usage boundaries. It does not describe return values (no output schema), but that is reasonably implied and not a critical gap for this tool.

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 detailed parameter descriptions, so the baseline is 3. The description adds a small semantic detail that the newest-first sort is the default, but it doesn't meaningfully elaborate on the after/before cursors.

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: browsing the most recently created Bitcoin Ordinals inscriptions network-wide, with default newest-first ordering. It also explicitly differentiates from address-specific lookups, distinguishing it from sibling tools like getInscriptionsByAddress.

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 explicitly states when to use ('to discover newly-minted inscriptions') and when not to ('NOT to look up inscriptions on a specific address'). However, it does not name specific alternative tools, relying on the sibling list for that.

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

getLatestRunesOrdiscan: getLatestRunesA
Read-onlyIdempotent
Inspect

List the latest Rune tokens for market discovery and browsing. Use this when user wants to see new/trending Runes, NOT for checking their personal balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
sortYes
afterNo
beforeNo
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint true, and destructiveHint false. The description adds the 'market discovery and browsing' framing but doesn't disclose pagination semantics, how 'latest' is defined (block height, timestamp), or any rate limit. It adds some context but not rich behavioral detail.

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 the primary action. The second sentence adds usage guidance without any redundancy or fluff.

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

Completeness2/5

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

With no output schema and 3 parameters, the description should clarify return format and pagination. It doesn't mention that 'after'/'before' are likely pagination cursors, nor does it describe the shape of the returned token list. An agent would struggle to know how to use the optional parameters effectively.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate. It hints at sorting via 'latest' and 'new/trending' but doesn't explain the required 'sort' parameter's behavior or the optional 'after'/'before' cursors. The enum values in the schema give some meaning, but no param-level guidance is provided.

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 uses a specific verb and resource ('List the latest Rune tokens') and clearly distinguishes this from personal-balance tools like getRuneBalances. It also differentiates from market-cap/volume ranking tools by focusing on temporal recency (latest/new/trending).

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 provides an explicit when-to-use ('when user wants to see new/trending Runes') and a when-not-to-use ('NOT for checking their personal balance'). However, it doesn't name a specific alternative tool (e.g., getRuneBalances), which prevents a perfect score.

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

getLeaderboardStandard Tools: getLeaderboardB
Read-onlyIdempotent
Inspect

Emblem ecosystem trading leaderboard

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoThe page number of the leaderboard
queryNoThe query of the leaderboard
orderByNoThe order by of the leaderboardvolume
pageSizeNoThe page size of the leaderboard
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false, covering safety. The description adds no extra behavioral traits beyond the ecosystem and trading context, which is acceptable given the strong annotation coverage. No contradiction exists.

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 with no redundant words. It front-loads the key identifying information (ecosystem and purpose) and avoids filler, making it highly 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 simple read-only nature, rich annotations, and fully documented schema, the description is adequate. It doesn't detail the return format, but no output schema exists and the tool is straightforward. The pagination and sort options are already in the schema, so the description's brevity is acceptable.

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%, with all four parameters having meaningful descriptions. The tool description adds no additional parameter semantics, but the schema is sufficient, so the baseline 3 applies.

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 identifies the tool as an 'Emblem ecosystem trading leaderboard', specifying the resource (leaderboard) and scope (Emblem ecosystem). It distinguishes from sibling leaderboard tools like nansen_pnl_leaderboard by the ecosystem qualifier. However, it lacks an explicit verb like 'get' or 'list', relying on the tool name for action.

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 provides no guidance on when to use this tool versus alternatives. It doesn't mention exclusions or mention sibling tools. The only implied usage is that it serves leaderboard data for the Emblem ecosystem, but there is no explicit context or comparison to other leaderboard or ranking tools.

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

getMagicEdenRunePriceOrdiscan: getMagicEdenRunePriceA
Read-onlyIdempotent
Inspect

Get rune market data from Magic Eden as an alternative data source. Use this if Ordiscan returns zero prices for a rune.

ParametersJSON Schema
NameRequiredDescriptionDefault
runeNameYesThe rune name without bullet spacers (e.g., 'DOGGOTOTHEMOON')
Behavior3/5

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

Annotations already declare the tool as read-only, open-world, idempotent, and non-destructive. The description adds little behavioral context beyond the alternative source and fallback use case, but does not contradict 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 deliver purpose and usage guidance with no wasted words. The key information is front-loaded and 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 simple one-parameter read-only tool with strong annotations and a clear fallback use case, the description is largely complete. It does not explain what 'market data' includes, but that is a minor gap.

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 the parameter description already explains the runeName format. The tool description does not add any further meaning beyond the schema, 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?

The description clearly states the tool gets rune market data from Magic Eden, explicitly identifying it as an alternative data source. This distinguishes it from sibling tools like getRuneMarketInfo and getRuneInfo.

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?

It provides explicit guidance on when to use this tool: 'Use this if Ordiscan returns zero prices for a rune.' This clearly defines the fallback scenario and differentiates it from other rune data tools.

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

getOwnedInscriptionIdsOrdiscan: getOwnedInscriptionIdsA
Read-onlyIdempotent
Inspect

Return the list of Bitcoin Ordinals inscription IDs owned by a given Bitcoin address. Lightweight ID-only response — use getInscriptionsByAddress for full inscription metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesBitcoin address whose owned inscription IDs to fetch.
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds useful behavioral context beyond annotations: it is 'Lightweight ID-only response', implying limited payload and no metadata, which helps the agent understand response characteristics.

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, front-loaded with the core action. The second sentence adds a clear alternative without unnecessary detail. Every word contributes value.

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 read-only tool with one parameter and rich annotations, the description is complete enough. It states the input, the output (list of IDs), and the alternative for richer data. However, it does not describe edge cases (e.g., empty address results) or return format details, which would be expected if no output schema existed.

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 covers the single parameter bitcoinAddress with a clear description ('Bitcoin address whose owned inscription IDs to fetch'), so coverage is 100%. The tool description does not add extra parameter-level meaning beyond what the schema already provides, hence baseline of 3.

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 explicitly states the verb and resource: 'Return the list of Bitcoin Ordinals inscription IDs owned by a given Bitcoin address.' It clearly distinguishes from sibling getInscriptionsByAddress by noting this is a 'Lightweight ID-only response' versus full metadata.

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 provides explicit guidance: use this tool when only inscription IDs are needed, and explicitly recommends getInscriptionsByAddress for full metadata. This directly addresses when-to-use and when-not-to-use.

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

getPolyMarketEventpolymarket: getPolyMarketEventA
Read-onlyIdempotent
Inspect

Get detailed info for a specific Polymarket event by slug

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesEvent slug (from event.slug)
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering safety. The description adds 'detailed info' but does not specify what fields are returned or any additional behavioral nuances. It is not misleading, but contributes little 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?

The description is a single concise sentence that gets straight to the point. No wasted words or redundant 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?

For a simple one-parameter tool with good annotations and no output schema, the description is sufficient to understand the tool's purpose and primary input. However, 'detailed info' is vague; specifying what details are included would improve completeness.

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 schema covers 100% of the parameter with 'Event slug (from event.slug)', so the baseline is 3. The description only repeats 'by slug' without adding extra meaning or usage details for the parameter.

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 ('Get'), the resource ('detailed info for a specific Polymarket event'), and the identifier ('by slug'). This distinguishes it from siblings like getPolyMarketEvents, getPolyMarketEventsByTag, and searchPolyMarketEvents.

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 phrase 'by slug' clearly indicates when to use this tool: when you already have a specific event slug. It does not explicitly mention alternatives or exclusions, but the usage context is clear from the description alone.

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

getPolyMarketEventsPolygon: getPolyMarketEventsC
Read-onlyIdempotent
Inspect

Get Polymarket events list. Returns compacted data.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoMax events to return (default: 20, max: 50)
orderNovolume
offsetNo
tag_idNoTag ID to filter by. Use getPolyMarketTags to get IDs.
featuredNo
ascendingNo
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint false, covering the safety profile. The description adds 'compacted data' as behavioral context, but does not mention pagination, default ordering, or the effect of filters. This is moderate added value 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?

The description is two short, front-loaded sentences with no filler. Every word earns its place, making it highly concise and scannable.

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

Completeness2/5

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

With 6 optional parameters and no output schema, the description is too sparse. It lacks information on sorting, pagination, filtering, or the relationship to sibling tools. Annotations help with safety but not with usage completeness, leaving the agent under-informed for a tool with this complexity.

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

Parameters1/5

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

Schema description coverage is only 33%, and the description adds no parameter semantics. limit and tag_id are described in the schema, but order, offset, featured, and ascending have no explanation, and the description does not compensate for this gap.

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 a specific action ('Get') and resource ('Polymarket events list'), and adds a useful behavior hint ('compacted data'). However, it does not distinguish from sibling tools like getPolyMarketEventsByTag or searchPolyMarketEvents, so it falls short of a 5.

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 vs alternatives such as getPolyMarketEventsByTag or searchPolyMarketEvents. The description provides no context about filtering, sorting, or use cases, leaving the agent to infer applicability.

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

getPolyMarketEventsByTagPolygon: getPolyMarketEventsByTagA
Read-onlyIdempotent
Inspect

Get Polymarket events by tag/category

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo
tagIdYesTag ID from getPolyMarketTags
Behavior3/5

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

Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds little beyond the name itself; it does not disclose additional behaviors like pagination, ordering, or rate limits. It is not contradictory but offers marginal behavioral context.

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 filler or redundant information. It is appropriately concise and immediately communicates the tool's purpose.

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 filtered-list tool with two parameters and strong annotations, the description is adequate. It does not explain return format, but no output schema exists and the operation is a straightforward read. The caveat is that it does not mention potential quirks like results ordering or default limit behavior beyond schema defaults.

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?

Only 50% of schema parameters have descriptions (tagId is described in the schema; limit is not). The tool description adds some semantic meaning by indicating filtering by tag/category, but it does not clarify the limit parameter. The schema's tagId description provides the essential linkage to getPolyMarketTags.

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 states the specific action ('Get') and resource ('Polymarket events') and explicitly mentions the filtering criterion ('by tag/category'). This clearly distinguishes it from sibling tools like getPolyMarketEvents (all events) and searchPolyMarketEvents (search-based).

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 when a tag/category is known, but it does not explicitly state when to use this tool versus alternatives. The schema's tagId reference to getPolyMarketTags provides some context, but no exclusions or alternative recommendations are given.

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

getPolyMarketTagsPolygon: getPolyMarketTagsB
Read-onlyIdempotent
Inspect

Get Polymarket categories/tags

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior2/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true. The description simply restates 'Get' and adds no behavioral details beyond what annotations provide—no mention of rate limits, output format, or usage context. It is consistent with annotations, but adds no extra transparency.

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 extremely concise—seven words—and directly states the purpose. Every word is necessary, and it is front-loaded with the verb and resource. No fluff, no repetition of schema or annotations.

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 no-parameter, read-only tool with no output schema, the description is reasonably complete: it names the resource being fetched. However, it could add a bit of context about how the returned categories/tags relate to other Polymarket tools (e.g., that they can be used with getPolyMarketEventsByTag). Given the simplicity of the tool, this is a minor gap.

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, so there is no parameter semantics burden on the description. With 0 params and 100% schema coverage, the baseline is 4, and the description does not need to explain any parameters. It appropriately focuses on the operation only.

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 'Get Polymarket categories/tags' clearly identifies the resource (Polymarket categories/tags) and action (get). It distinguishes from sibling tools like getPolyMarketEvent or getPolyMarketEventsByTag by focusing on the list of available tags/categories rather than events or positions. However, it could be slightly more specific about what is returned (e.g., a list of all available tags).

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?

There is no guidance on when to use this tool versus alternatives such as getPolyMarketEventsByTag or searchPolyMarketEvents. The description doesn't mention that this tool could be used to fetch the list of tags that can then be used to filter events, which would be helpful context. No exclusions or alternative recommendations are provided.

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

getPolyMarketUserPositionspolymarket: getPolyMarketUserPositionsC
Read-onlyIdempotent
Inspect

Get user's Polymarket positions

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoThe limit of positions to get
offsetNoThe offset of the positions to get
sortByNoCURRENT
sortOrderNodesc
Behavior2/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds no extra behavioral context, such as pagination behavior, sorting options, or the structure of returned positions.

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

Conciseness2/5

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

The description is short and front-loaded, but it is under-specified rather than effectively concise. For a tool with four parameters and no output schema, this single sentence does not earn its place as useful guidance.

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

Completeness2/5

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

With no output schema, four parameters, and a large sibling set, the description is incomplete. It does not describe the return format, position fields, or how pagination and sorting work, leaving significant gaps for an agent to invoke the tool correctly.

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

Parameters1/5

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

Schema coverage is 50% (only limit and offset have descriptions; sortBy and sortOrder lack them). The description provides zero parameter information and does not compensate for the undocumented sort parameters, leaving their meaning and defaults unexplained.

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 'Get user's Polymarket positions' states a specific verb, resource, and scope, distinguishing it from event/market listing tools. However, it does not clarify its relationship to similarly-named siblings like getAllPositions or listPositions, so it lacks explicit sibling differentiation.

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 is given on when to use this tool versus alternatives. The description relies entirely on the tool name and does not explain which sibling tools are better for other scenarios, such as fetching all positions or finding a specific position.

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

getPumpFunTokensSolana: getPumpFunTokensC
Read-onlyIdempotent
Inspect

Query PumpFun tokens (new, graduating, graduated)

ParametersJSON Schema
NameRequiredDescriptionDefault
typeYesType of tokens to query
chainNosol
limitNo
contextNomeme
orderByNoOrder by
volume_gteNovolume greater than value
volume_lteNovolume less than value
buyCount_gteNo
buyCount_lteNo
liquidUsd_gteNo
liquidUsd_lteNo
marketCap_gteNomarket cap greater than value
marketCap_lteNomarket cap less than {value}
sellCount_gteNo
sellCount_lteNo
tradeCount_gteNo
tradeCount_lteNo
holderCount_gteNo
holderCount_lteNo
devHoldPercent_gteNodev hold percent greater than value
devHoldPercent_lteNodev hold percent less than value
sniperWalletCount_gteNo
sniperWalletCount_lteNo
insiderHoldPercent_gteNo
insiderHoldPercent_lteNo
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and non-destructive behavior, reducing the description's burden. The description adds the notion of token lifecycle stages but nothing about filtering behavior, defaults, or response format. 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.

Conciseness2/5

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

The description is a single short sentence, but it under-specifies a tool with 25 parameters. It adds little beyond the tool name and is an example of under-specification rather than effective conciseness.

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

Completeness1/5

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

For a highly complex tool with 25 parameters and no output schema, the description is severely inadequate. It lacks any mention of return values, default filters, or operational context, making it nearly impossible for an agent to use effectively.

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

Parameters2/5

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

Schema description coverage is only 32%, leaving the majority of 25 parameters underdocumented. The description provides no parameter explanations beyond the enum values for 'type' already present in the schema, so it does not compensate for the low coverage.

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?

Description clearly states it queries PumpFun tokens, specifying lifecycle stages: new, graduating, graduated. It is a clear verb+resource statement, though it does not differentiate from sibling token tools like findSolanaGems or birdeyeTrendingTokens.

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 the many sibling token query tools. No alternatives, 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.

getRareSatsOrdiscan: getRareSatsA
Read-onlyIdempotent
Inspect

List rare sats (uncommon, rare, epic, legendary, or named single-satoshi units) controlled by a given Bitcoin address. Useful for collectors evaluating sat rarity holdings.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesBitcoin address whose rare-sat inventory to look up.
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds the specific categories of rare sats and the address-level scope, but it does not disclose additional behavioral traits such as pagination, error handling, or response format. It is consistent with annotations and adds modest context, but falls short of rich behavioral disclosure.

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, with the action front-loaded. It wastes no words and every sentence contributes meaning: the first states what the tool does, the second states its value. No verbosity or redundancy.

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 low complexity (one parameter, fully described in schema), rich annotations, and lack of an output schema, the description is complete for an agent to understand what the tool does, when to use it, and what input is required. It does not need to explain return values since none are structured, and the description implies a list. The tool is a read-only, idempotent lookup, and the description covers the essential context.

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?

With 100% schema description coverage, the schema already fully documents the single parameter 'bitcoinAddress'. The description reinforces its meaning by linking it to 'rare sats' and 'evaluating sat rarity holdings', but it does not add new syntax, constraints, or formats beyond what the schema provides. 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 action ('List'), the resource ('rare sats'), and the specific scoping ('controlled by a given Bitcoin address'). It also enumerates the rarity categories (uncommon, rare, epic, legendary, named single-satoshi units), making the tool's purpose unambiguous and distinguishing it from sibling tools like rareSatsForUTXO and getSatRangesForUTXO, which operate at UTXO level.

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 a clear use case: 'Useful for collectors evaluating sat rarity holdings.' This gives context for when to use the tool, but it does not explicitly mention alternatives (e.g., rareSatsForUTXO) or situations where it should not be used. Since it offers a clear context without exclusions, it merits a 4 rather than a 5.

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

getRecentStampsOrdiscan: getRecentStampsA
Read-onlyIdempotent
Inspect

Browse the most recently issued Bitcoin Stamps (newest first) for discovery. Returns asset name, image preview, creator, and timestamp. Use this for activity feeds and 'what's new' surfaces.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of recent stamps to return (1-100). Defaults to 10.
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 covered. The description adds value by specifying return fields (asset name, image preview, creator, timestamp) and ordering behavior, which is useful beyond the structured metadata.

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 use cases, with zero unnecessary words. Every sentence contributes to understanding the tool's function and context.

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 read-only listing tool with one optional parameter, the description covers return fields, ordering, and typical use cases. The schema handles parameter constraints, and annotations confirm safety. Minor gaps like pagination details are not critical for this tool's simplicity.

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 'limit' parameter, including default, maximum, and description. The description does not add parameter-specific semantics, but the schema already provides complete documentation, 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 the tool's verb ('browse') and resource ('recently issued Bitcoin Stamps') with explicit ordering ('newest first'). It distinguishes itself from sibling tools like getStamp, getStampsByAddress, and searchStamps by focusing on recency and discovery.

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 use cases ('activity feeds and what's new surfaces') and frames the tool for discovery, giving clear context for when to use it. It doesn't name alternative tools, but the guidance is sufficient to differentiate from similar stamp-related functions.

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

getRuneBalancesOrdiscan: getRuneBalancesA
Read-onlyIdempotent
Inspect

Get the user's Rune token balances.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesThe Bitcoin taproot address to check rune balances for
Behavior3/5

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

Annotations already declare this as a read-only, idempotent, open-world, non-destructive operation, so the safety profile is well-covered. The description adds minimal behavioral context beyond that; it doesn't specify return format, pagination, or any special behavior regarding unconfirmed balances or error conditions. Given the annotations, a 3 is appropriate as no contradictions exist, but the description doesn't enrich the behavioral picture significantly.

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 one concise sentence with no wasted words. It is front-loaded with the action and resource, making it easily scannable.

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?

The tool is simple with one parameter, and the schema provides full parameter details. However, there is no output schema, so a brief mention of what the response contains (e.g., list of rune balances with amounts) would improve completeness. Annotations cover the behavioral safety aspects, and the description succinctly states the purpose, so it is adequate but not thorough.

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 schema covers 100% of the parameter documentation, with bitcoinAddress described as 'The Bitcoin taproot address to check rune balances for'. The description adds no extra semantics beyond the schema, aligning with the baseline 3 for high schema coverage. The parameter is simple and well-documented by 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 states a specific verb ('Get') and resource ('Rune token balances'), clearly indicating it retrieves Rune balances for a user. It could potentially be confused with getUtxoRunes or getRuneInfo, but the focus on 'user's' balances, singular address input, and the title prefix helps distinguish it from general rune info or UTXO-specific queries, though it does not explicitly name alternatives.

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 checking a user's rune balances given a Bitcoin address, and the schema requires bitcoinAddress. However, it doesn't explicitly state when to use this versus similar tools like getUtxoRunes or getRunesActivity, nor does it provide exclusions or alternative tool recommendations.

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

getRuneInfoOrdiscan: getRuneInfoA
Read-onlyIdempotent
Inspect

Fetch protocol-level metadata for a Rune token by name: ID, supply, divisibility, symbol, premine, etching transaction, and lock height.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesRune name (spacers like • are stripped automatically; case-insensitive). Example: 'DOG•GO•TO•THE•MOON' or 'DOGGOTOTHEMOON'.
Behavior3/5

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

Annotations already establish that the tool is read-only, non-destructive, and idempotent, reducing the burden on the description. The description adds value by enumerating the returned metadata fields, which is a useful behavioral context beyond simple safety flags. However, it does not disclose any additional traits such as error handling, rate limits, or network dependencies, so it remains at the baseline for annotation-backed descriptions.

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, efficient sentence that front-loads the purpose and lists concrete outputs without redundant words. Every word contributes meaning, making it an excellent example of concise tool documentation.

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 read-only tool with one parameter and no output schema, the description is largely complete: it specifies the input, the kind of data fetched, and explicitly lists the expected return fields (which substitutes for a missing output schema). However, it omits any note about error behavior (e.g., unknown rune names) which could be helpful, though not strictly necessary given the tool's straightforward nature.

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 provides complete documentation for the sole parameter 'name', including case-insensitivity, automatic spacer stripping, and an example ('DOG•GO•TO•THE•MOON' or 'DOGGOTOTHEMOON'). With 100% schema description coverage, the description itself need not add further detail. This matches the baseline of 3 for high schema coverage.

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 starts with a specific verb ('Fetch') and identifies the resource ('protocol-level metadata for a Rune token by name'), then explicitly lists the fields returned (ID, supply, divisibility, symbol, premine, etching transaction, lock height). This clearly distinguishes it from sibling tools like getRuneBalances or getRuneMarketInfo which target different aspects of Rune data.

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 fetching Rune metadata by name, but it provides no explicit guidance on when to use this tool versus alternatives (e.g., getRuneBalances, getRuneMarketInfo) or any exclusions. With multiple Rune-related sibling tools, a brief note about which scenarios call for this tool would strengthen the score.

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

getRuneMarketInfoOrdiscan: getRuneMarketInfoA
Read-onlyIdempotent
Inspect

Get the market info for a given rune name: price, market cap

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the rune (spacers like • are automatically removed)
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is known. The description adds that it returns price and market cap, but does not disclose additional behavioral traits like rate limits or response structure. This is baseline for a read-only tool with good 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, front-loaded sentence: 'Get the market info for a given rune name: price, market cap.' It conveys the essential purpose without redundancy or wasted 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?

This is a low-complexity tool with one parameter and no output schema. The description clearly states what it returns, and the annotations cover safety. It is complete for an agent to correctly select and invoke the tool.

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 the schema describes the 'name' parameter including auto-removal of spacers. The description does not add parameter semantics beyond what the schema already provides, so the baseline 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?

The description uses a specific verb ('Get') and clearly identifies the resource ('market info for a given rune name') and the return content ('price, market cap'). This distinguishes it from related tools like getRuneInfo (general info) and getTopRunesByMarketCap (ranked lists).

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 context is clear: use this tool when you have a specific rune name and need price and market cap data. However, it does not explicitly mention alternatives or when not to use it, so it falls 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.

getRunesActivityOrdiscan: getRunesActivityA
Read-onlyIdempotent
Inspect

Return the Rune transfer history for a given Bitcoin address (etching, mints, sends, receives) with timestamps, amounts, and counterparties. Paginated.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page number for activity pagination.
bitcoinAddressYesBitcoin address whose rune activity to retrieve.
Behavior4/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 behavioral context beyond that by specifying the activity types covered, the returned fields (timestamps, amounts, counterparties), and pagination. 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?

Two concise sentences, front-loaded with the main purpose, followed by supporting details about activity types and output fields. No redundant or 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?

For a read-only tool with two well-described parameters and no output schema, the description covers the essential information: what the tool returns, the input, and pagination. It lacks details like page size or error handling, but these are not critical for selection and invocation. The annotations provide strong safety context.

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 both parameters explicitly described (bitcoinAddress and page). The description does not add significant extra meaning beyond the schema; it just restates the address input and mentions pagination, which the schema already covers. 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 uses a specific verb ('Return') and clearly identifies the resource ('Rune transfer history') and input ('given Bitcoin address'). It also enumerates the activity types included (etching, mints, sends, receives) and the fields returned, making it distinct from sibling tools like getRuneBalances or getRuneInfo.

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 clearly conveys the use case: when you need an address's rune transfer history. It does not explicitly state when not to use it or mention alternatives, but the context is clear enough that an agent can infer when this tool is appropriate compared to balance or info tools.

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

getSatRangesForUTXOOrdiscan: getSatRangesForUTXOA
Read-onlyIdempotent
Inspect

Return the ordinal-numbered sat ranges contained in a single UTXO (the satoshi-by-satoshi composition). Useful for ordinal theory analysis and rare-sat lookups.

ParametersJSON Schema
NameRequiredDescriptionDefault
utxoIdYesUTXO reference in 'txid:vout' form (e.g. 'a1b2...:0').
Behavior3/5

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

Annotations already declare the tool safe (read-only, idempotent, non-destructive), lowering the burden. The description adds the detail of 'satoshi-by-satoshi composition', which is a behavioral trait, but it doesn't disclose other aspects like rate limits or output format. This aligns with the baseline for well-annotated tools.

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, front-loaded with the primary function in the first sentence and use cases in the second. Every word earns its place with no redundancy or filler.

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, read-only tool with one well-described parameter and clear annotations, the description is complete. It explains what the tool returns and why it's useful, so an agent can select and invoke it correctly.

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 the schema already explains that utxoId is in 'txid:vout' form. The description adds no additional meaning beyond the schema, so the baseline 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 description clearly states the tool returns 'ordinal-numbered sat ranges contained in a single UTXO', using a specific verb and resource. It distinguishes itself from sibling tools like rareSatsForUTXO by emphasizing the full composition rather than just rare sats.

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 gives explicit use cases ('ordinal theory analysis and rare-sat lookups'), providing clear context for when to use it. However, it does not mention alternatives or when not to use it, so it falls 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.

getSRC20TokenOrdiscan: getSRC20TokenA
Read-onlyIdempotent
Inspect

Fetch metadata for a single SRC-20 token (the Bitcoin Stamps fungible-token standard) by ticker: deploy info, max supply, mint progress, holder count, and creator. SRC-20 is the Stamps protocol equivalent of BRC-20.

ParametersJSON Schema
NameRequiredDescriptionDefault
tickYesSRC-20 token ticker, typically 4 characters (e.g. 'KEVIN', 'STAMP'). Case-insensitive.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, which is consistent with 'Fetch metadata.' The description adds valuable context beyond annotations by specifying the kinds of data returned (deploy info, max supply, mint progress, holder count, creator) and clarifying the token standard. No contradictions with annotations; it enriches the behavioral picture.

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 exactly two sentences: the first packs the action, resource, scope, and output fields; the second adds brief context about the standard. Every word earns its place, with no redundancy or filler.

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 single-parameter read-only tool, the description covers the core behavior and lists the returned metadata categories, even without an output schema. It does not describe return format or error conditions, but the tool's simplicity and the annotations (read-only, idempotent) reduce the need for more. Sibling tools like searchSRC20Tokens and getBRC20TokenInfo provide ecosystem context.

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 'tick,' with a thorough description including format and case-insensitivity. The description only restates that it fetches 'by ticker,' adding little meaning beyond the schema. Baseline 3 is appropriate since the schema carries the full semantic burden.

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 uses the specific verb 'Fetch' and clearly identifies the resource: metadata for a single SRC-20 token by ticker. It also lists the exact metadata fields (deploy info, max supply, mint progress, holder count, creator) and distinguishes this from BRC-20 by noting SRC-20 is the Stamps protocol equivalent, which helps differentiate it from sibling tools like getBRC20TokenInfo.

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 its use case (fetch metadata for a single SRC-20 token by ticker) but provides no explicit guidance on when to use this tool versus alternatives such as searchSRC20Tokens or getBRC20TokenInfo. There are no when-not-to-use instructions or named alternatives, so the usage context is only implied.

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

getStampOrdiscan: getStampA
Read-onlyIdempotent
Inspect

Fetch metadata for a single Bitcoin Stamp (Stampchain.io) by ID: image data, creator address, block height, asset name, and SRC20 association if any. Bitcoin Stamps embed permanent on-chain image data via the Counterparty/STAMP protocol.

ParametersJSON Schema
NameRequiredDescriptionDefault
stampIdYesNumeric stamp ID assigned at issuance (e.g. '12345'). Stamp IDs are assigned sequentially by Stampchain.
Behavior4/5

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

The annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety is covered. The description adds meaningful context beyond annotations by explaining the Bitcoin Stamp protocol and listing the metadata fields returned, including 'if any' for SRC20 association. No contradictions exist.

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 with no fluff. The first sentence front-loads the action and result fields; the second provides useful protocol background. Every sentence earns its place.

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 (single parameter, no output schema), the description is complete. It covers what the tool does, the key return fields, and the underlying protocol context. The schema fully documents the only parameter, making this a well-rounded, self-sufficient description.

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 the stampId parameter fully described as a numeric, sequentially assigned ID. The description's 'by ID' adds no new syntax or semantic detail beyond the schema, so the baseline 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 description opens with a specific verb ('Fetch') and resource ('metadata for a single Bitcoin Stamp') scoped by ID. It enumerates the exact data fields returned (image data, creator address, block height, asset name, SRC20 association), which clearly differentiates it from sibling tools like getRecentStamps, getStampsByAddress, or searchStamps.

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 clearly states that this tool is for fetching a single stamp by ID, which implies the appropriate use case. It does not explicitly name alternatives or exclusions, but the 'by ID' scoping is strong contextual guidance and distinguishes it from listing/search siblings.

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

getStampsByAddressOrdiscan: getStampsByAddressA
Read-onlyIdempotent
Inspect

List the Bitcoin Stamps and SRC-20 token balances held by a given Bitcoin address. Returns each held stamp's ID + asset name and SRC-20 holdings with amounts.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesBitcoin address (Counterparty-compatible) whose stamp holdings to retrieve.
Behavior4/5

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

Annotations already declare readOnly, idempotent, non-destructive. The description adds meaningful behavioral detail by specifying the exact return values (stamp IDs, asset names, SRC-20 amounts). It does not cover potential edge cases like empty results or address validation, but for a simple read tool with strong annotations this is adequate.

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 filler. It states the action, resource, and return content efficiently.

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

Completeness4/5

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

With one simple parameter and no output schema, the description explains the primary return data sufficiently. It lacks details like exact response structure or potential errors, but given the tool's simplicity and strong annotations, it is reasonably complete.

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

Parameters3/5

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

Schema description covers 100% of the parameter, clearly explaining what to provide (a Counterparty-compatible Bitcoin address). The tool description itself adds no additional parameter meaning, so the baseline 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?

The description clearly states a specific action ('List') and resource ('Bitcoin Stamps and SRC-20 token balances held by a given Bitcoin address'). It also details the returned data (stamp ID + asset name, SRC-20 holdings with amounts), distinguishing it from sibling tools like getInscriptionsByAddress or getRuneBalances.

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 clear context for use: when you need stamp/SRC-20 balances for a specific address. It does not explicitly mention alternatives or exclusions, but the specific resource and input make its use case unambiguous among the many address-balance tools.

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

getTopBRC20ByMarketCapOrdiscan: getTopBRC20ByMarketCapA
Read-onlyIdempotent
Inspect

Get BRC-20 tokens ranked by market cap. Use this to find the most valuable BRC-20 tokens. Returns price, market cap, 24h volume, and price change.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of tokens to return (max 50)
minMarketCapNoFilter for tokens with market cap above this value in USD
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false. The description adds value by disclosing the return fields (price, market cap, 24h volume, price change) and the ranking behavior (by market cap), which are not explicitly covered by annotations or 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 only two sentences, front-loaded with the primary function, and includes usage context and return field information without any redundant wording.

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 read-only list tool with two optional parameters and no output schema, the description is complete: it explains the purpose, the ranking criterion, the usage context, and the return fields. The schema and annotations cover the rest.

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%, with both parameters (limit and minMarketCap) having description fields. The tool description does not add additional meaning to the parameters, so it meets the baseline but does not exceed it.

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 states a specific action (get BRC-20 tokens), the resource (BRC-20 tokens), and the scope (ranked by market cap). It clearly distinguishes from the sibling tool getTopBRC20ByVolume, which ranks by volume instead.

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 phrase 'Use this to find the most valuable BRC-20 tokens' provides clear usage context. It does not explicitly exclude alternatives like getTopBRC20ByVolume, but the purpose is specific enough that the intended use is obvious.

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

getTopBRC20ByVolumeOrdiscan: getTopBRC20ByVolumeA
Read-onlyIdempotent
Inspect

Get BRC-20 tokens ranked by 24h trading volume. Use this to find the most actively traded BRC-20 tokens. Returns price, market cap, 24h volume, and price change.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of tokens to return (max 50)
minVolumeNoFilter for tokens with 24h volume above this value in USD
Behavior3/5

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

Annotations already indicate readOnly, idempotent, and non-destructive behavior. The description adds the list of returned fields (price, market cap, 24h volume, price change), which is useful given no output schema. However, it does not disclose additional behavioral traits such as ordering or data source nuances, so it only partially goes 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?

The description is three sentences long, each serving a distinct purpose: stating the operation, giving the use case, and listing return fields. There is no redundancy or filler, making it appropriately concise and 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?

For a simple read-only list tool with full schema coverage and safety annotations, the description covers the essential points: what it does, when to use it, and what it returns. Minor gaps like price currency or exact sort direction are not glaring issues given the 'ranked' qualifier and the schema-provided defaults.

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 provides full descriptions for both parameters ('limit' and 'minVolume'), including defaults and bounds. The description adds no extra meaning beyond what the schema already conveys, so the baseline 3 for high schema coverage 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 starts with 'Get BRC-20 tokens ranked by 24h trading volume', which is a specific verb+resource+scope. It clearly distinguishes from sibling tools like getTopBRC20ByMarketCap by the ranking criterion (volume vs. market cap), and the second sentence reinforces the intended use case.

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 phrase 'Use this to find the most actively traded BRC-20 tokens' provides a clear context for when to invoke this tool. While it does not explicitly mention alternatives or exclusions, the 'by volume' designation and the sibling names imply the differentiation, which is sufficient for a clear directive.

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

getTopCollectionsByFloorOrdiscan: getTopCollectionsByFloorA
Read-onlyIdempotent
Inspect

Get Bitcoin ordinal collections ranked by floor price from Magic Eden. Use this when user asks about 'most expensive collections' or 'highest floor price ordinals'.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of collections to return (max 50)
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false, and the description adds the Magic Eden source and floor-price ranking. But it does not disclose additional behavioral traits such as rate limits, pagination, or potential delays. Score 3.

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: the first states the action and domain, the second provides usage guidance. No filler or repetitive content.

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 read-only listing tool with one optional parameter and no output schema, the description is complete: it states what it does, the data source, and when to use it.

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 sole 'limit' parameter is fully described in the schema (100% coverage) with default, min, max, and description. The tool description adds no further parameter semantics, 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?

States 'Get Bitcoin ordinal collections ranked by floor price from Magic Eden' – a specific verb, resource, and sorting criterion. This clearly distinguishes it from siblings like getTopCollectionsByVolume.

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 'Use this when user asks about most expensive collections or highest floor price ordinals', providing clear when-to-use context. However, it does not mention alternatives or when not to use it, so a score of 4.

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

getTopCollectionsByVolumeOrdiscan: getTopCollectionsByVolumeA
Read-onlyIdempotent
Inspect

Get Bitcoin ordinal collections ranked by trading volume from Magic Eden. Use this when user asks about 'inscriptions with most volume', 'top trading collections', or 'hottest ordinal collections'.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of collections to return (max 50)
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering safety. The description adds the data source (Magic Eden) and ranking basis, but no additional behavioral details such as pagination or return format. This matches the baseline with annotations present.

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: first states purpose, second gives usage examples. No redundant words, front-loaded verb and resource, and every sentence earns its place.

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 one-optional-parameter tool with strong annotations, the description is complete. It clearly explains what it returns (ranked by volume), the data source (Magic Eden), and usage triggers. No output schema exists, but the tool's simplicity makes this 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 coverage is 100%, with the sole parameter 'limit' fully described in the input schema. The tool description adds no extra meaning about the parameter beyond the schema, 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?

The description clearly states a specific verb ('Get') and resource ('Bitcoin ordinal collections ranked by trading volume from Magic Eden'), distinguishing it from siblings like getTopCollectionsByFloor or getTopBRC20ByVolume.

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 trigger phrases ('inscriptions with most volume', 'top trading collections', 'hottest ordinal collections') to guide when to use. Does not mention alternatives or when-not-to-use, but the context is clear enough to select appropriately among siblings.

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

getTopRunesByMarketCapOrdiscan: getTopRunesByMarketCapA
Read-onlyIdempotent
Inspect

Get Bitcoin runes ranked by market cap. Use this to find the most valuable runes by market capitalization. Returns price, market cap, 24h volume, and price change.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of runes to return (max 50)
minMarketCapNoFilter for runes with market cap above this value in USD
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds meaningful behavioral details: ranking by market cap and the returned fields (price, market cap, 24h volume, price change), which go 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.

Conciseness4/5

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

The description is concise at three sentences, but the first two sentences are somewhat redundant ('ranked by market cap' and 'most valuable runes by market capitalization' convey the same idea). Still, every sentence serves a purpose and there is no fluff.

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 read-only list tool with no output schema, the description covers purpose, usage, and return fields. It does not explicitly mention default limit or sorting direction, but the schema covers the limit and the ranking is implied. This is adequate but not fully complete.

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

Parameters3/5

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

Schema description coverage is 100%, so both parameters are fully documented in the schema. The description adds no additional parameter semantics, so the 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?

The description clearly states the tool returns Bitcoin runes ranked by market cap, which is a specific verb+resource+scope. It distinguishes from siblings like getTopRunesByVolume by specifying market cap as the ranking criterion.

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 gives clear usage context: 'Use this to find the most valuable runes by market capitalization.' It implies when to use but does not explicitly name alternatives or exclusions, so it falls 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.

getTopRunesByVolumeOrdiscan: getTopRunesByVolumeA
Read-onlyIdempotent
Inspect

Get Bitcoin runes ranked by 24h trading volume. Use this to find the most actively traded runes. Returns price, market cap, 24h volume, and price change.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNoNumber of runes to return (max 50)
minVolumeNoFilter for runes with 24h volume above this value in USD
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering safety. The description adds behavioral detail about ranking criteria ('ranked by 24h trading volume') and output content ('Returns price, market cap, 24h volume, and price change'), which goes beyond the structured 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 two sentences, front-loaded with the primary purpose, and every sentence contributes value. There is no redundancy or filler.

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 read-only ranking tool with two well-documented parameters and strong annotations, the description is complete. It states what the tool does, when to use it, what it returns, and there is no output schema requiring additional explanation.

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 both parameters (limit, minVolume) are already well-documented. The description adds minimal extra meaning beyond the schema, though it does relate output fields to the volume concept. This matches the baseline for high schema coverage.

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: 'Get Bitcoin runes ranked by 24h trading volume.' It uses a specific verb and resource, and the focus on volume distinguishes it from sibling tools like getTopRunesByMarketCap and getRuneMarketInfo.

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 clear usage guidance: 'Use this to find the most actively traded runes.' It does not explicitly mention alternatives or when not to use the tool, but the context is clear enough for an agent to select it appropriately among volume-focused tools.

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

getTrendingCoinsOrdiscan: getTrendingCoinsA
Read-onlyIdempotent
Inspect

Get currently trending cryptocurrencies on CoinGecko. Shows coins with highest search interest in the last 24 hours.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, establishing a safe read-only operation. The description adds useful context about the 24-hour window and search-interest metric, but it does not disclose additional behavioral aspects like pagination, rate limits, or output structure, which is acceptable given the annotation coverage.

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 with no filler. It front-loads the key action ('Get currently trending cryptocurrencies on CoinGecko') and then clarifies the metric, making it highly 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?

For a simple no-parameter read-only tool, the description is adequate. It explains what the tool does and the nature of the results, but it stops short of specifying exact output fields, ordering, or any limits. With no output schema, a bit more detail on the return format would improve completeness, though it is not a critical gap.

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, so the schema fully covers parameter space and the description adds no parameter details. The baseline for 0-parameter tools is 4, and this description does not need to compensate for any schema gaps.

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 retrieves currently trending cryptocurrencies from CoinGecko, specifically those with the highest search interest in the last 24 hours. This distinguishes it from similar siblings like birdeyeTrendingTokens by explicitly naming the data source and 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 usage when trending cryptocurrencies are needed, but it does not explicitly state when to use this tool versus alternatives such as birdeyeTrendingTokens or other trending collections. No exclusions or alternative references are provided, so guidance is only implied.

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

getUserMemoriesByCategoryStandard Tools: getUserMemoriesByCategoryA
Read-onlyIdempotent
Inspect

Get all memories in a specific category

ParametersJSON Schema
NameRequiredDescriptionDefault
categoryYesThe category to retrieve memories from
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and non-destructive behavior, covering the safety profile. The description adds minimal behavioral context beyond the name and schema—'Get all' implies completeness, but no additional details about pagination, limits, or return format are provided, though the annotations lower the burden.

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 with no fluff. However, it could be slightly more structured by providing a usage hint or relationship to sibling tools, but it earns its place and is appropriately sized for this simple tool.

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 low complexity (one parameter), strong annotations, and absence of an output schema, the description is adequate for an agent to invoke the tool correctly. It clearly states what the tool returns (memories) and the required input. No additional context is strictly necessary, though a note about memory ownership or scope could enhance completeness.

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%: the single parameter 'category' is fully described in the input schema. The description does not add extra semantics or examples beyond what is already structured, so the 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 description 'Get all memories in a specific category' uses a specific verb (Get), identifies the resource (memories), and scopes by category. It directly distinguishes from the sibling tool getUserMemoryCategories, which lists categories, making the purpose clear and unambiguous.

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 provides no guidance on when to use this tool versus alternatives, such as getUserMemoryCategories, nor does it mention any prerequisites or exclusions. It simply states the action without contextual usage information.

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

getUserMemoryCategoriesStandard Tools: getUserMemoryCategoriesA
Read-onlyIdempotent
Inspect

Get all memory categories for the user

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is clear. The description adds the user scoping but does not detail return format, ordering, or edge cases; with strong annotations, this is acceptable but not rich.

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 that front-loads the action and resource. There is no wasted text, and it is appropriately sized for a zero-parameter getter.

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 low-complexity tool with no parameters and strong annotations, this description is mostly complete. It could benefit from mentioning the relationship to getUserMemoriesByCategory or describing the return value, but these are not essential for such a simple list operation.

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 input schema has zero parameters, so schema description coverage is effectively 100%. The description adds no parameter details because there are no parameters; per the grading rule, 0 params gets a baseline of 4.

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 'Get all memory categories for the user' uses a specific verb ('Get'), identifies the resource ('memory categories'), and scopes the action ('all', 'for the user'). This clearly distinguishes it from the sibling tool 'getUserMemoriesByCategory', which retrieves memories within a specific category rather than listing categories.

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 is given about when to use this tool versus alternatives. There is no mention that users should call this first to obtain category IDs before using getUserMemoriesByCategory, nor are any alternative tools or exclusion conditions described.

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

getUtxoRunesOrdiscan: getUtxoRunesA
Read-onlyIdempotent
Inspect

List the unspent transaction outputs (UTXOs) on a Bitcoin address that hold Rune tokens, including the rune name, amount, and UTXO reference. Useful for inspecting a wallet's individual rune-bearing UTXOs before sending or splitting them.

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesBitcoin address to scan for rune-bearing UTXOs (taproot or legacy).
Behavior4/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false. The description adds context by detailing the exact output fields (rune name, amount, UTXO reference) and the intended operational context (before sending/splitting). There is no contradiction with annotations, and the additional details go beyond what the annotations provide.

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 with no fluff. The first sentence states the primary action and result, and the second sentence adds a concise use case. 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?

For a one-parameter list tool with no output schema, the description covers the core behavior, output contents, and use case. It does not address edge cases like empty results or invalid addresses, but given the simplicity and strong annotations, the description is nearly complete. The lack of explicit alternatives is a minor gap given the sibling context.

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% — the bitcoinAddress parameter is fully described in the schema. The description only mentions 'on a Bitcoin address' without adding extra meaning or format details beyond what the schema already provides, so the 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 opens with a specific verb and resource: 'List the unspent transaction outputs (UTXOs) on a Bitcoin address that hold Rune tokens.' It clearly distinguishes from sibling tools like getRuneBalances by emphasizing individual rune-bearing UTXOs and specifying the returned fields (rune name, amount, UTXO reference).

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 a clear use case: 'Useful for inspecting a wallet's individual rune-bearing UTXOs before sending or splitting them.' It implies when this tool is appropriate but does not explicitly name alternative tools or state when not to use it, so it falls just 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.

getXCPBalancesOrdiscan: getXCPBalancesA
Read-onlyIdempotent
Inspect

Return the user's legacy Bitcoin (P2PKH) wallet holdings on the Counterparty layer: XCP balance, named Counterparty assets, Bitcoin Stamps, and rare pepes — each with asset name, supply, and divisibility metadata.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the safety profile is well covered. The description adds valuable behavioral context by specifying the exact scope of the returned data (XCP, named assets, Bitcoin Stamps, rare pepes) and the inclusion of metadata, going beyond what annotations provide.

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 dense sentence that front-loads the core purpose and then lists specific asset types. Every phrase adds information, with no redundancy or filler. It is appropriately sized for the tool's complexity.

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 has no input schema and no output schema, the description fully compensates by enumerating the return contents and metadata fields. It is clear enough for an agent to know what to expect from the tool and how it differs from related balance tools.

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 no parameters, so the schema is trivially complete. The description adds semantic value by explaining what the returned data includes (asset name, supply, divisibility), which helps the agent understand what the tool's output represents even though there are no inputs to document.

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

Purpose5/5

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

The description clearly states a specific verb ('Return') and resource ('user's legacy Bitcoin (P2PKH) wallet holdings on the Counterparty layer'), then enumerates the exact asset types returned. It distinguishes this tool from sibling balance tools like getBTCBalances and getRuneBalances by explicitly scoping to Counterparty-layer assets and legacy P2PKH addresses.

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 clear context for when to use this tool: when the user needs Counterparty-layer balances for a legacy Bitcoin address. However, it does not explicitly mention alternatives or exclusions (e.g., 'for Bitcoin-native balances, use getBTCBalances'), so it falls short of a perfect score.

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

hederaAccountIdToEvmAddressHedera: hederaAccountIdToEvmAddressA
Read-onlyIdempotent
Inspect

Resolve a Hedera account ID in '0.0.x' realm-shard-num form to its 0x-prefixed EVM address by querying the Hedera mirror node (returns the account's alias or auto-generated EVM address).

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesHedera account ID in 'shard.realm.num' form (e.g. '0.0.3949424').
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint false. The description adds context by mentioning the mirror node query and the return of an alias or auto-generated EVM address, but this is modest enrichment 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?

The description is a single, compact sentence that conveys purpose, method, and return behavior without any waste or redundancy.

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 one-parameter conversion tool with strong annotations, the description is complete. It explains what the tool does, how it does it, and what it returns, making the invocation clear.

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 the description repeats the '0.0.x' format already in the schema. No additional semantic detail is provided beyond what the schema parameter description already states.

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 verb 'Resolve' and the resource transformation from Hedera account ID to EVM address. It also distinguishes from the sibling tool hederaContractIdToEvmAddress by specifying 'account ID' and the return type.

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 usage context is implied: use when you have a Hedera account ID and need its EVM address. However, it does not explicitly mention when not to use it or name the alternative for contract IDs, leaving differentiation to the sibling tool name.

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

hederaContractIdToEvmAddressHedera: hederaContractIdToEvmAddressA
Read-onlyIdempotent
Inspect

Convert a Hedera contract ID in '0.0.x' realm-shard-num form to its 0x-prefixed EVM address representation. Pure conversion — does not query the network.

ParametersJSON Schema
NameRequiredDescriptionDefault
contractIdYesHedera contract ID in 'shard.realm.num' form (e.g. '0.0.731861').
Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds meaningful behavioral context by stating 'does not query the network,' which goes beyond the annotations and reassures the agent of no network dependencies 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 with the verb 'Convert' at the start, followed by concise details. Every phrase earns its place; no filler or unnecessary repetition.

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 conversion tool with one parameter, no output schema, and full annotations, the description is sufficient. It clearly states the input format, the output representation, and the pure nature, allowing correct selection and invocation without ambiguity.

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 clear description of the only parameter (contractId). The tool description repeats the format '0.0.x' but does not add additional semantics beyond the schema's 'shard.realm.num' form, so it meets the baseline without enhancement.

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 'Convert' and identifies the exact resource transformation (Hedera contract ID in realm-shard-num form to 0x-prefixed EVM address). It implicitly distinguishes from sibling hederaAccountIdToEvmAddress by specifying 'contract ID' rather than 'account ID'.

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?

States 'Pure conversion — does not query the network,' which clarifies appropriate use for offline conversions. However, it does not explicitly mention alternative tools like hederaAccountIdToEvmAddress or provide 'when not to use' guidance, so it falls short of full exclusion.

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

hederaFindMemeCoinsHedera: hederaFindMemeCoinsA
Read-onlyIdempotent
Inspect

Browse Hedera meme tokens listed on the MemeJob bonding-curve launchpad. Sort by market cap, creation time, last activity, or nearest-promoted; paginated for discovery feeds.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo0-indexed page number (defaults to 0 for first page).
limitNoResults per page (1-50). Defaults to 10.
orderByNoSort field: 'market-cap' (size), 'creation-time' (newest), 'last-activity' (active), 'nearest-promoted' (curated next).market-cap
orderDirectionNoSort direction: 'desc' for largest/newest first, 'asc' for opposite.desc
Behavior4/5

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

Annotations already declare read-only, open-world, and idempotent hints, so the bar is lower. The description adds useful context about the data source (MemeJob bonding-curve launchpad) and pagination behavior, which goes beyond the annotation basics. No hidden side effects are left unaddressed.

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 concise sentences, leading with a clear purpose, followed by sort and pagination details. Every word earns its place, with no redundancy or filler, and the structure front-loads the most critical 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?

For a read-only browsing tool with zero required parameters and a fully self-documenting schema, the description covers the core aspects: data source, sort options, and pagination. It does not describe the return shape, but the tool's nature as a list finder makes this acceptable, and the annotations cover safety and idempotency.

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 provides 100% coverage of all four parameters with detailed descriptions, including defaults, ranges, and enums. The description merely restates the sort options and pagination in prose, adding no new meaning beyond what the schema already specifies. 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 identifies the tool's function: browsing Hedera meme tokens on the MemeJob bonding-curve launchpad. It specifies the resource (Hedera meme tokens), the platform (MemeJob), and the operations (sort, paginate), distinguishing it from sibling tools like hederaFindTokens and other chain-specific meme coin finders.

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 usage for discovery feeds on the MemeJob launchpad, which clearly situates it among Hedera meme token tools. However, it does not explicitly state when not to use this tool or recommend alternatives, though the Hedera-specific scope already differentiates it from BSC or Solana meme tools.

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

hederaFindTokensHedera: hederaFindTokensA
Read-onlyIdempotent
Inspect

Search Hedera-listed tokens by name or symbol (substring, case-insensitive). Returns matching tokens with EVM address, name, symbol, and decimals. Omit the query to list all tokens.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryNoFree-text query against token name and symbol (case-insensitive substring match). Omit to return the full SaucerSwap token list.
Behavior5/5

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

Annotations already indicate read-only, idempotent, and non-destructive behavior. The description adds valuable behavioral details: case-insensitive substring matching, the return fields (EVM address, name, symbol, decimals), and the distinction between search and list-all modes. This goes well 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?

The description is three sentences, immediately names the action and resource, and contains zero filler. Each sentence earns its place: search behavior, return fields, and omit behavior.

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 optional-parameter tool with rich annotations, the description provides the essential behavior and return fields. It does not detail pagination or result limits, but that is a minor gap for a search/list tool. The only notable omission is not explicitly tying 'Hedera-listed' to the SaucerSwap token list mentioned in the 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 schema provides 100% coverage for the single 'query' parameter, including its optionality, substring matching, and listing behavior. The description largely repeats this information without adding new semantic meaning, so it neither improves nor detracts from the schema's baseline.

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 uses a specific verb ('Search') with a clear resource ('Hedera-listed tokens') and scope ('by name or symbol'), distinguishing it from siblings like hederaFindMemeCoins and hederaTokensSwapQuote. The substring and case-insensitive qualifiers further refine the purpose.

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 clearly states when to omit the query ('Omit the query to list all tokens'), providing a concrete usage guideline. However, it does not explicitly compare to alternatives like hederaFindMemeCoins, missing the opportunity to state when-not-to-use this tool.

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

hederaTokensSwapQuoteHedera: hederaTokensSwapQuoteA
Read-onlyIdempotent
Inspect

Get current USD price and swap quote for Hedera tokens. ALWAYS fetch fresh - crypto prices change every second. Supports exact input (spend X) and exact output (receive Y) modes.

ParametersJSON Schema
NameRequiredDescriptionDefault
amountNoAmount to swap (for exact input mode)
toTokenIdYesToken to swap to
fromTokenIdYesToken to swap from (0.0.000000 for HBAR)
isExactOutputNoTrue for exact output mode
toTokenDecimalsYesDecimals of to token
exactOutputAmountNoExact output amount (for exact output mode)
fromTokenDecimalsYesDecimals of from token
Behavior4/5

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

Annotations already declare readOnlyHint and idempotentHint, but the description adds valuable behavioral context: prices change every second and fresh data must always be fetched. This goes beyond the structured annotations by addressing freshness/liveness, though it doesn't detail response format or edge cases.

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 concise sentences, front-loaded with the tool's core purpose. Every word adds value, and the freshness warning is both necessary and memorable.

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 7 parameters and no output schema, the description covers the essential purpose, mode distinction, and freshness requirement. It doesn't detail the quote response structure, but the name and summary are sufficient for a simple read-only quote tool. Slightly more detail about output could push it higher.

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 baseline is 3. The description adds a high-level explanation of exact input versus exact output modes, but the schema already explains the 'amount' and 'exactOutputAmount' parameters clearly. No additional parameter-specific meaning is provided.

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 gets a current USD price and swap quote for Hedera tokens, using a specific verb ('Get') and resource ('Hedera tokens'). It also distinguishes this from siblings by naming the Hedera context and the two quote modes.

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 clearly implies when to use the tool: for Hedera token swap quotes, and emphasizes 'ALWAYS fetch fresh' to reinforce real-time usage. However, it does not explicitly mention alternatives or exclusions, such as using chain-specific swap quote tools like baseSwapQuote for other chains.

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

inscriptionTransferActivityOrdiscan: inscriptionTransferActivityA
Read-onlyIdempotent
Inspect

Return the full ownership transfer history for a single Bitcoin inscription: every move with timestamp, from-address, to-address, and transaction hash.

ParametersJSON Schema
NameRequiredDescriptionDefault
inscriptionIdYesInscription ID in the form '<txid>i<index>' (e.g. 'b1f...i0').
Behavior3/5

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

Annotations already declare this as read-only, idempotent, and non-destructive, so the description doesn't contradict them. However, it adds little behavioral context beyond what annotations provide—it does not mention pagination, rate limits, or edge cases like a missing inscription. The description's mention of 'every move' hints at the response structure but is not a behavioral disclosure beyond the annotation coverage.

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 that immediately states the main purpose and enumerates the returned fields (timestamp, from-address, to-address, transaction hash). No fluff or redundancy, and it is front-loaded with the key action and scope.

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 strong annotations, this description is nearly complete: it explains what it returns, the scope (single inscription), and the exact data fields. The only gap is the absence of explicit guidance on when to prefer this over sibling activity tools, but given the low complexity, the overall context is 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?

The schema covers 100% of the parameter descriptions, including the format example for inscriptionId. The description does not add additional semantic meaning beyond reinforcing that it is 'a single Bitcoin inscription', which is already in the schema. Baseline 3 applies because the schema fully documents the parameter.

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 uses a specific verb ('Return') and resource ('full ownership transfer history for a single Bitcoin inscription'), clearly defining the tool's scope. It distinguishes itself from sibling tools like getInscriptionActivity by specifying 'full ownership transfer history' and 'single Bitcoin inscription', which clarifies its unique purpose.

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 single inscription's transfer history, but it does not explicitly mention when to use this tool over alternatives like getInscriptionActivity or getInscriptionsByAddress. No exclusions or alternative references are provided, so the guidance is contextual but not fully explicit.

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

isFourMemeTokenBinance Smart Chain: isFourMemeTokenA
Read-onlyIdempotent
Inspect

Check whether a BSC token contract is registered on FourMeme and is still on the bonding curve (not yet listed / migrated off the curve). Returns the FourMeme token record if found.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenAddressNoBSC token contract address to check against the FourMeme registry (0x-prefixed).
Behavior4/5

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

Annotations declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds meaningful context beyond annotations by explaining the bonding curve condition (not yet listed / migrated off the curve) and the return behavior (returns the token record if found). This clarifies the tool's specific logic 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?

The description is a single sentence that concisely conveys the purpose, the condition, and the return value. It is front-loaded with the main action and includes no filler, making it easy for an agent to parse quickly.

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?

This is a simple tool with one parameter, no output schema, and strong annotations. The description fully covers what it does, the specific condition evaluated, and what is returned. Given the low complexity, the description is complete and leaves no significant gaps.

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 provides a full description of the only parameter: 'BSC token contract address to check against the FourMeme registry (0x-prefixed)'. The description does not add additional parameter details but reinforces the address type. Since schema coverage is 100%, the baseline 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 description clearly states the tool checks whether a BSC token contract is registered on FourMeme and still on the bonding curve. The verb 'Check' plus the specific resource ('BSC token contract') and registry ('FourMeme') makes the purpose unambiguous. It also distinguishes itself from the sibling tool 'bscfindMemeCoinsViaFourMeme', which finds meme coins, by focusing on a single token's status.

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 this tool: when you have a specific BSC token address and need to verify its FourMeme registration and bonding curve status. It provides clear context but does not explicitly name alternatives or state when not to use it. However, the niche scope is evident, and the sibling list offers alternatives, so the context is sufficient.

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

listAlkanesOrdiscan: listAlkanesA
Read-onlyIdempotent
Inspect

Browse Alkanes (Bitcoin smart-contract / token / NFT primitives anchored on Bitcoin), filtered by type. Use this for market discovery; pair with getAlkaneInfo for per-asset detail.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page for paginating the alkane list.
sortYesSort order: 'newest' for most recent first, 'oldest' for chronological.
typeYesAlkane category to filter by: 'TOKEN' (fungible), 'CONTRACT' (deployed contract), 'NFT_COLLECTION' (collection), 'NFT_ITEM' (single NFT).
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds domain context and the filtering behavior, but does not disclose additional behavioral traits such as pagination behavior, rate limits, or response structure, so it does not go beyond the annotations in a meaningful way.

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, front-loaded with the primary purpose, and includes a useful pointer to the companion tool. Every sentence earns its place without redundancy.

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 read-only list tool, the description covers the domain, use case, and companion tool. It does not mention return format or pagination, but the schema descriptions and annotations provide sufficient context for an agent to use it correctly.

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%; all parameters (page, sort, type) are fully described with enums and semantics. The description merely reinforces the type filter, adding no new parameter information beyond what the schema already provides.

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 verb 'Browse' and the resource 'Alkanes' with a scope ('filtered by type'), and distinguishes it from getAlkaneInfo by indicating this is for market discovery/list-level browsing. It also explains what Alkanes are (Bitcoin smart-contract/token/NFT primitives), adding specificity beyond the tool name.

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 explicitly says 'Use this for market discovery' and recommends pairing with getAlkaneInfo for per-asset detail, providing clear contextual guidance. While it doesn't list explicit when-not-to-use cases, the complementary tool is named, which helps agents decide between list-level and detail-level operations.

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

listBRC20TokensOrdiscan: listBRC20TokensA
Read-onlyIdempotent
Inspect

List all BRC-20 tokens in the market for discovery and browsing. Use this when user wants to see available tokens, NOT for checking their personal balance.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page for paginating the BRC-20 token list.
sortYesSort order: 'newest' for most recent deploys first, 'oldest' for chronological.
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the market-wide scope (as opposed to user-specific), which is a useful behavioral constraint. However, it does not elaborate on pagination behavior or return format, so the added value beyond annotations is moderate.

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: the first states the core purpose, the second provides usage guidance. There is zero filler or redundant content, and the most important information 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?

Given the simple nature of the tool, the schema fully documents parameters, and annotations cover safety, the description provides sufficient context for an agent to select and invoke it. It implies a list return ('List all BRC-20 tokens') and clarifies the market scope. The absence of an output schema is not a major gap because the return type is obvious from the verb 'List'.

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 clear descriptions for both 'page' and 'sort'. The description itself adds no parameter-specific details, so it does not exceed the baseline. The schema carries the full load for parameter semantics.

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 with a specific verb ('List'), resource ('BRC-20 tokens'), and scope ('all in the market'). It distinguishes itself from personal balance checks, which is a common confusion point, though it does not explicitly name sibling tools for other discovery methods.

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 a clear when-to-use directive: 'Use this when user wants to see available tokens' and an explicit exclusion ('NOT for checking their personal balance'). This gives the agent actionable guidance, though it does not name alternative tools like getTopBRC20ByMarketCap or searchCryptoByName for other discovery scenarios.

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

listPositionsStandard Tools: listPositionsA
Read-onlyIdempotent
Inspect

List conditional trade positions. If network is provided, lists positions for that specific network. If no network is provided, lists ALL positions across all supported networks (Solana, Ethereum, BSC, Polygon, Hedera, Base).

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoOptional: Filter by position status
networkNoSpecific network to list positions for. If omitted, lists across all networks.
Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so safety is covered. The description adds behavioral detail about network handling (all networks vs. specific), which is valuable. It does not contradict annotations, and the read-only nature is consistent. No pagination or return details, but the bar is lower given 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 two sentences, front-loaded with the primary action, and includes essential network behavior without any fluff. Every word contributes to understanding, making it highly concise and well-structured.

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 list tool with no output schema, the description covers the core behavior (network filtering) and the schema covers status filtering. While return structure is not described, the tool's purpose is straightforward and annotations handle safety. The description is complete enough for an agent to invoke it 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 100%, so the baseline is 3. The description adds meaning beyond the schema by explaining the network parameter's behavior (all networks when omitted), and clarifies the tool's purpose as 'conditional trade positions' which gives context to the status filter. This extra semantic value justifies a 4.

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 uses a specific verb and resource ('List conditional trade positions') and clearly defines scope via network behavior, distinguishing it from siblings like findPositionById and getAllPositions. It states that omitting network lists positions across all supported networks, which adds clarity.

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 clear usage context for the network parameter (specific network vs. all networks) and implies this is the tool for listing conditional trade positions. It does not explicitly mention alternatives or exclusions, but the context is sufficient for an agent to choose correctly.

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

nansen_defi_portfolionansen: nansen_defi_portfolioA
Read-onlyIdempotent
Inspect

Get a wallet's DeFi portfolio: LP positions, lending, staking, farming across protocols.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain the wallet is on
per_pageNoResults per page
wallet_addressYesWallet address
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so the safety profile is covered. The description adds the types of positions covered (LP, lending, staking, farming) but does not disclose pagination behavior, return format, or chain-specific caveats beyond the schema enum. 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?

A single, front-loaded sentence that states the purpose and key categories in an efficient manner. There is zero wasted wording, and the description earns its limited length.

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?

No output schema exists, so the description carries the burden of explaining return value. It lists position categories but not the structure (e.g., amounts, USD values, protocol names, or aggregated totals). For a portfolio tool with moderate complexity, this is a noticeable gap.

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 baseline is 3. The description does not add parameter-specific meaning beyond what the schema already provides for chain, wallet_address, and per_page. The mention of 'across protocols' hints at multi-chain capability, but the enum already conveys that.

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 uses a specific verb ('Get') and resource ('a wallet's DeFi portfolio') with concrete categories (LP positions, lending, staking, farming) and scope ('across protocols'). This clearly distinguishes it from sibling tools like nansen_perp_positions (perpetuals) and balance-checking tools like ethGetBalances.

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?

Usage is implied by the description's clear scope (when you need a DeFi portfolio), but it does not explicitly name alternatives or state when not to use it. The sibling tool list provides context, but the description itself lacks exclusion or comparison guidance.

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

nansen_perp_positionsnansen: nansen_perp_positionsA
Read-onlyIdempotent
Inspect

Get current Hyperliquid perpetual positions held by smart money for a specific token.

ParametersJSON Schema
NameRequiredDescriptionDefault
per_pageNoResults per page
label_typeNoTrader label filter (smart_money, all_traders)smart_money
token_symbolYesToken symbol (e.g. 'BTC', 'ETH', 'SOL')
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is well covered. The description adds the context that data is 'current' and specifically from Hyperliquid, but it does not disclose additional behavioral details like response format, pagination behavior, or data freshness limitations.

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 filler. It immediately communicates the verb, resource, and context, making it concise and well-structured.

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 read-only filtered-list tool with annotations and no output schema, the description is reasonably complete. It clearly states what data is returned (positions) and the filtering criterion (specific token). However, it does not mention what fields a position contains or how pagination works, which would be beneficial given no 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 provides 100% description coverage for all three parameters, including defaults and examples. The description adds no additional meaning beyond the schema, so the 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 description uses a specific verb ('Get') and clearly states the resource ('current Hyperliquid perpetual positions') and scope ('held by smart money for a specific token'). This distinguishes it from sibling Nansen tools such as nansen_smart_money_holdings or nansen_smart_money_trades, which focus on other data types.

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 scenarios (e.g., when you need current perp positions for a token), but it does not explicitly mention when to use this tool over alternatives or any exclusions. Sibling tools exist that could be confused, but no direct comparison is provided.

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

nansen_pnl_leaderboardnansen: nansen_pnl_leaderboardA
Read-onlyIdempotent
Inspect

Get Nansen PnL leaderboard for a SPECIFIC TOKEN CONTRACT (not a global wallet leaderboard). Requires a token contract address. Shows which wallets profited most from trading that specific token.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain the token is on
date_toYesEnd date (YYYY-MM-DD)
per_pageNoResults per page
date_fromYesStart date (YYYY-MM-DD)
token_addressYesToken contract address
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows this is a safe read operation. The description adds that it is token-specific and shows wallet profitability, but it doesn't disclose return format, pagination behavior, or error handling for invalid addresses. This is adequate but not rich.

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, front-loaded with the tool's core purpose and scoping. The parenthetical clarification 'not a global wallet leaderboard' is concise and valuable, and there is no redundant wording.

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, token-specific leaderboard query with full schema coverage and safe annotations, the description covers the essential purpose, requirement, and output concept. It lacks output structure details, but with no output schema and straightforward semantics, it is sufficiently complete for an agent to select and invoke it correctly.

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 all five parameters are documented with descriptions. The description reinforces token_address as central ('Requires a token contract address') but adds no new meaning about date formats, chain selection, or per_page behavior beyond what the schema already provides.

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 uses a specific verb 'Get' with a clear resource: 'Nansen PnL leaderboard for a SPECIFIC TOKEN CONTRACT'. It explicitly contrasts with 'global wallet leaderboard', distinguishing it from sibling tools like getLeaderboard. It also states what it shows (wallets that profited most), leaving no ambiguity about its function.

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 states a prerequisite ('Requires a token contract address') and provides an exclusion ('not a global wallet leaderboard'), which helps prevent misuse. However, it doesn't name alternative tools (e.g., nansen_who_bought_sold or nansen_smart_money_trades) or describe scenarios where those would be more appropriate.

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

nansen_smart_money_flowsnansen: nansen_smart_money_flowsA
Read-onlyIdempotent
Inspect

Get net token flows from smart money addresses. Shows accumulation/distribution by funds and whales.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain to query
per_pageNoResults per page
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds minimal behavioral context beyond 'net token flows' and 'accumulation/distribution', but does not contradict annotations. No mention of rate limits, pagination behavior, or data timeframes beyond what schema provides.

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, front-loaded with the core action ('Get net token flows from smart money addresses') and adds a clarifying detail about accumulation/distribution. Every word earns its place, with no redundancy or fluff.

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 simple 2-parameter schema, rich annotations, and no output schema, the description provides sufficient context for a read-only data query. It explains what the tool does and hints at output structure ('Shows accumulation/distribution'), though it does not detail return format or pagination behavior. This is adequate for a filtered-list tool of this complexity.

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% for both 'chain' (enum with 'Chain to query') and 'per_page' ('Results per page' with default). The tool description adds no additional parameter semantics beyond what the schema already provides, so it meets the baseline but not more.

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: 'Get net token flows from smart money addresses' with a specific verb and resource, and adds 'Shows accumulation/distribution by funds and whales' to convey the output focus. This distinguishes it from sibling tools like nansen_smart_money_holdings (holdings) and nansen_smart_money_trades (trades).

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 analyzing smart money net token flows but provides no explicit guidance on when to use this tool versus alternatives such as nansen_smart_money_holdings or nansen_smart_money_trades. There is no 'use this when' or exclusion context, so it remains at an implied level.

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

nansen_smart_money_holdingsnansen: nansen_smart_money_holdingsA
Read-onlyIdempotent
Inspect

Get current token holdings aggregated across smart money wallets. Shows what funds and whales are holding.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain to query
per_pageNoResults per page (max 100)
Behavior4/5

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

Annotations already provide readOnlyHint=true, idempotentHint=true, and destructiveHint=false. The description adds context about aggregation across smart money wallets and specifies the subject as 'funds and whales', which is beyond the annotations. It does not contradict any annotation.

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 short sentences, front-loaded with the core action ('Get current token holdings'), and every word contributes. No redundant information or filler.

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 read-only tool with no output schema, the description adequately conveys the tool's function and the nature of the data (aggregated holdings from smart money). It lacks details about return structure, but given the simplicity and the existing schema, this is acceptable. It is slightly less rich than the TDQS 4.3 example because it does not mention pagination or response format here.

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 'chain' and 'per_page' fully. The description adds no additional parameter-specific meaning, such as chain compatibility or pagination behavior, so a 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 description uses a specific verb and resource: 'Get current token holdings aggregated across smart money wallets.' This clearly distinguishes it from sibling tools like nansen_smart_money_flows and nansen_smart_money_trades, which focus on flows and trades rather than current holdings.

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?

There is no explicit guidance on when to use this tool versus alternatives. The description implies a use case by stating 'current token holdings' and 'what funds and whales are holding,' but it does not mention exclusions or point to other nansen tools for different time frames or activity types.

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

nansen_smart_money_tradesnansen: nansen_smart_money_tradesA
Read-onlyIdempotent
Inspect

Get recent DEX trades by smart money wallets. Spot what top traders are actively buying/selling.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain to query
per_pageNoResults per page
Behavior3/5

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

Annotations already disclose read-only and idempotent behavior, so the description does not need to repeat safety. It adds behavioral context by implying the response includes buy/sell actions, but does not disclose limitations like pagination boundaries or data freshness. The added value is modest, hence a 3.

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 short sentences, front-loaded with the core action, and contains no unnecessary words. Every phrase adds value, making it highly 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?

For a simple query tool with two parameters and no output schema, the description adequately conveys what the tool does and the use case. It lacks explicit return-value details, but the absence of an output schema is compensated by the clear statement of what is returned (recent DEX trades).

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 fully documents both parameters (chain enum and per_page default), so the baseline is 3. The description adds no additional parameter-level detail beyond what the schema already provides; it only explains the overall purpose.

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 fetches recent DEX trades by smart money wallets, using a specific verb and resource. The added phrase 'Spot what top traders are actively buying/selling' reinforces the intended use and distinguishes it from related tools like holdings or flows.

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 a clear context for when to use this tool: when you need recent DEX trade activity from smart money wallets. It does not explicitly exclude alternatives or mention when not to use it, but the context is sufficient given the tool's specific niche among siblings.

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

nansen_token_screenernansen: nansen_token_screenerA
Read-onlyIdempotent
Inspect

Screen tokens by volume, smart money activity, and chain. Find trending tokens that smart money is trading.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainsYesChains to screen across
per_pageNoResults per page
timeframeNoTimeframe (e.g. 24h, 7d)24h
smart_money_onlyNoFilter to show only smart money activity
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so safety context is covered. The description adds the screening dimensions (volume, smart money, chain) but does not disclose return format, pagination, or any edge cases. It provides some behavior context beyond annotations but not extensive.

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 the action, and no redundant content. Every word contributes to understanding the tool's purpose and basic functionality.

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 filtered-list tool with strong annotations (readOnly, idempotent) and a well-described schema, the description covers the core purpose. It slightly lacks explicit mention of output (e.g., 'returns a list of tokens') and clarification of 'volume', but these are minor given the annotations and 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 description coverage is 100% (each parameter has a description), so baseline is 3. The description adds context by mentioning 'volume' and 'smart money activity', but 'volume' is not an actual parameter, which could confuse. It aligns with smart_money_only but does not enhance parameter understanding 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 the tool's function with a specific verb ('screen') and resource ('tokens'), and specifies the criteria (volume, smart money activity, chain). It distinguishes itself from sibling tools like nansen_smart_money_trades or nansen_smart_money_flows by focusing on token screening rather than specific transaction flows or holdings.

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 a use case ('Find trending tokens that smart money is trading') but does not explicitly state when to use this tool versus alternatives. It lacks exclusions or references to related nansen tools, which is a missed opportunity given the number of nansen siblings.

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

nansen_wallet_profilernansen: nansen_wallet_profilerA
Read-onlyIdempotent
Inspect

Profile a specific wallet — trading activity, PnL, token trades over a date range.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain the wallet is on
date_toYesEnd date (YYYY-MM-DD)
per_pageNoResults per page
date_fromYesStart date (YYYY-MM-DD)
wallet_addressYesWallet address to profile
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, lowering the transparency burden. The description adds context about what data is included (trading activity, PnL, token trades) but does not disclose additional behavioral traits such as pagination behavior, rate limits, or performance characteristics. It does not contradict 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?

The description is a single, tightly written sentence with no superfluous words. It front-loads the verb and resource and uses an em dash to efficiently enumerate the included data. Every word adds value, and it is easily scannable.

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 the tool has no output schema and a moderate parameter set, the description adequately conveys the core purpose and data scope. However, it lacks explicit differentiation from several overlapping nansen siblings and does not hint at output format or pagination (despite per_page parameter). The tool is simple enough that this description, combined with rich schema and annotations, is sufficient but not outstanding.

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 all five parameters including defaults and formats. The description adds marginal meaning by mentioning 'date range' (tying to date_from/date_to) and 'trading activity, PnL' (tying to the output), but it does not provide per-parameter details 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 a specific verb ('Profile') and resource ('a specific wallet'), and enumerates the key data dimensions (trading activity, PnL, token trades) with a date range. This distinguishes it from sibling nansen tools like nansen_defi_portfolio or nansen_perp_positions, which focus on other aspects.

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 use case—profiling a wallet's trading and PnL over a date range—but it does not explicitly state when to use this tool over alternatives (e.g., nansen_who_bought_sold for token-specific trades). No exclusions or alternative recommendations are provided, leaving the inference to the agent.

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

nansen_who_bought_soldnansen: nansen_who_bought_soldA
Read-onlyIdempotent
Inspect

See which smart money wallets bought or sold a specific token in a date range.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain the token is on
date_toYesEnd date (YYYY-MM-DD)
per_pageNoResults per page
date_fromYesStart date (YYYY-MM-DD)
label_typeNoTrader label filter (smart_money, all_traders)smart_money
token_addressYesToken contract address
Behavior2/5

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

Annotations already cover read-only, open-world, and non-destructive behavior, lowering the burden on the description. However, the description adds no additional behavioral details beyond restating the query scope; it omits return format, pagination behavior, or any caveats about the open-world nature.

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 that front-loads the action and expected outcome. Every word contributes meaning, with no filler or redundancy.

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 straightforward read-only list query with complete parameter descriptions, the description plus schema is sufficient for an agent to invoke the tool. It does not explicitly describe the output shape, but no output schema exists; the expected result (a list of wallets) is implicit and adequately conveyed.

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 all six parameters, including enum values for chain and label_type. The description adds no extra parameter detail beyond what the schema provides, so the 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 description uses a specific verb ('See') and clearly identifies the resource ('which smart money wallets bought or sold a specific token') and scope ('date range'). It distinguishes itself from sibling tools like nansen_smart_money_trades by focusing on wallet identities rather than the trade stream.

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 use case—finding smart money buyers/sellers for a token over a date range—but does not explicitly compare with alternatives such as nansen_smart_money_trades or mention when not to use it. It provides clear context but lacks exclusion or alternative guidance.

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

openseaGetBestListingsopensea: openseaGetBestListingsA
Read-onlyIdempotent
Inspect

Get the cheapest (best) listings for an NFT collection. Use this for price discovery and finding deals.

ParametersJSON Schema
NameRequiredDescriptionDefault
nextNoPagination cursor for next page
limitNoNumber of listings to return
collectionSlugYesCollection slug (e.g., 'pudgypenguins')
Behavior4/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint, so safety profile is covered. The description adds behavioral value by specifying that it returns the 'cheapest' listings, implying a price-sorted output. It does not cover pagination details, but the schema provides a 'next' cursor parameter, and annotations lower the bar.

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 with no redundant wording. The first sentence states the action and scope, the second provides a use case. Every word earns its place.

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?

The tool is simple with full schema coverage and strong annotations. The description explains the core behavior and intended usage, which is complete for the tool's complexity. No output schema exists, so return values need not be detailed.

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% for all three parameters (collectionSlug, limit, next), so the schema already documents parameter meanings. The description adds no additional parameter-specific guidance, 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?

The description clearly states the tool's function with a specific verb ('Get') and resource ('cheapest listings for an NFT collection'), and includes the qualifier 'best' which distinguishes it from sibling tools like openseaGetNFTListings that focus on individual NFTs. The purpose is immediately obvious.

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 a clear use case: 'Use this for price discovery and finding deals.' This gives context for when to use the tool, though it does not explicitly mention when not to use it or name alternatives. The guidance is sufficient but not exhaustive.

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

openseaGetCollectionActivityopensea: openseaGetCollectionActivityA
Read-onlyIdempotent
Inspect

Monitor recent activity for an NFT collection: sales, transfers, mints, listings, and offers. Use this to track market activity and recent trades.

ParametersJSON Schema
NameRequiredDescriptionDefault
nextNoPagination cursor for next page
limitNoNumber of events to return
eventTypeNoFilter by event type (omit for all events)
collectionSlugYesCollection slug (e.g., 'boredapeyachtclub')
Behavior3/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds the event-type scope but does not disclose behavioral details such as pagination support (via 'next' parameter) or the 'recent activity only' limitation, which are relevant for an agent invoking this tool.

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 primary purpose, and contains no redundant information. Every word earns its place, making it highly efficient.

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?

The tool has a simple schema with well-documented parameters and rich annotations, and the description explains the core function and use case. However, it omits explicit mention of return format or pagination behavior, and with no output schema, the agent gets no information about what the response contains beyond the tool's name and event types. This leaves room for improvement in guidance.

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?

Input schema has 100% description coverage for all parameters, including the eventType enum and pagination cursor. The description does not add any parameter-specific semantics beyond listing the event types, which already appear in the schema enum. Thus, 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 monitors recent activity for an NFT collection and enumerates the event types (sales, transfers, mints, listings, offers), making its specific purpose and scope immediately clear. This distinguishes it from sibling tools like openseaGetCollectionStats or openseaGetNFTListings by focusing on activity events rather than aggregated stats or specific listing/offer 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?

The description provides clear usage context ('Use this to track market activity and recent trades') and implies this is the right tool for monitoring general activity. However, it does not explicitly state when not to use it or mention alternative tools for specific use cases (e.g., fetching a single listing), falling short of the highest guideline standard.

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

openseaGetCollectionStatsopensea: openseaGetCollectionStatsA
Read-onlyIdempotent
Inspect

Get detailed stats for an NFT collection including floor price, volume, sales, owners, and market cap. Use collection slug (e.g., 'boredapeyachtclub'), not the collection name.

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionSlugYesCollection slug (e.g., 'boredapeyachtclub', 'cryptopunks')
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering the safety profile. The description adds useful behavioral context about the slug parameter and the specific stats returned, but does not disclose additional traits like rate limits, response format, or error behavior. This is adequate for a simple read-only tool.

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, front-loaded with the primary purpose, and includes a targeted parameter tip. Every word contributes to clarity, with no redundant phrasing or filler.

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 good annotations, the description is mostly complete. It lists the key return metrics and provides parameter guidance. However, it does not specify timeframes or whether stats are current or historical, which could be a minor gap given no output schema exists. Still, it sufficiently covers the core use case.

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% and already describes collectionSlug with examples. The description adds value by emphasizing 'not the collection name', which is a meaningful clarification that can prevent user errors. This goes beyond the schema, so a score above baseline is warranted.

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: 'Get detailed stats for an NFT collection' and enumerates specific data points (floor price, volume, sales, owners, market cap). This distinguishes it from sibling tools like getCollectionVolume or openseaGetCollectionActivity, which focus on narrower scopes.

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 provides a clear usage context (getting collection stats) and parameter guidance ('Use collection slug, not the collection name'), but it does not explicitly compare with alternatives or state when not to use this tool. Usage guidance is implied rather than explicit relative to sibling tools.

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

openseaGetMyNFTsopensea: openseaGetMyNFTsA
Read-onlyIdempotent
Inspect

Get all NFTs owned by the user on OpenSea. ALWAYS use this tool first when user asks about their NFTs or NFT collection.

ParametersJSON Schema
NameRequiredDescriptionDefault
nextNoPagination cursor for next page
limitNoMaximum number of NFTs to return
Behavior3/5

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

Annotations already cover read-only, idempotent, open-world, and non-destructive behavior. The description adds that it returns user-owned NFTs, but does not disclose pagination behavior or response format, which is relevant given the 'next' cursor parameter. 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?

Two succinct sentences: the first front-loads the purpose, the second gives usage priority. Every word earns its place, with no redundant 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?

For a simple read-only tool with two optional parameters and strong annotations, the description is fairly complete. It covers purpose and usage, but does not explicitly explain how pagination works with the `next` cursor, especially since the description claims to get 'all' NFTs.

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 `next` (pagination cursor) and `limit` (maximum number). The description does not add any additional meaning beyond the schema, so it hits the baseline of 3.

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 explicitly states 'Get all NFTs owned by the user on OpenSea' with a specific verb and resource, distinguishing it from sibling NFT tools like listings, offers, and activity. The scope is clear and unambiguous.

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 strong usage guidance: 'ALWAYS use this tool first when user asks about their NFTs or NFT collection.' This clearly indicates when to use it, though it does not mention alternatives or when not to use it, so it misses the top score.

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

openseaGetNFTListingsopensea: openseaGetNFTListingsB
Read-onlyIdempotent
Inspect

Get active sell listings for an NFT on OpenSea

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdYesThe chain ID (1=Ethereum, 137=Polygon, 8453=Base)
tokenIdYesThe token ID of the NFT
contractAddressYesThe NFT contract address
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, so the safety profile is clear. The description adds the 'active' filter but no additional behavioral context such as pagination, response shape, 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?

The description is a single concise sentence, front-loaded with the action and object. Every word contributes meaning with no redundancy.

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 read-only tool with three fully described parameters and safety annotations, the description is adequate for selection and invocation. However, it lacks any mention of output structure or usage exclusions, which slightly reduces completeness.

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% with descriptions for all three parameters, so the baseline is 3. The tool description does not add any parameter-specific details beyond 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 the tool retrieves active sell listings for a specific NFT on OpenSea, using a specific verb ('Get') and resource. However, it does not explicitly differentiate this from sibling tools like openseaGetBestListings.

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 provides no guidance on when to use this tool versus alternatives such as openseaGetBestListings or openseaGetNFTOffers. There is no mention of exclusions, prerequisites, or alternative use cases.

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

openseaGetNFTOffersopensea: openseaGetNFTOffersA
Read-onlyIdempotent
Inspect

Get buy offers for an NFT on OpenSea

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdYesThe chain ID (1=Ethereum, 137=Polygon, 8453=Base)
tokenIdYesThe token ID of the NFT
contractAddressYesThe NFT contract address
Behavior2/5

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

The description only restates the action ('Get buy offers') and adds no behavioral information beyond what annotations already provide (readOnlyHint, idempotentHint, openWorldHint). It does not disclose details like pagination, output format, or any API-specific behavior, so the agent gains no extra transparency from the text.

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?

A single sentence that is direct, front-loaded, and free of extraneous detail. The description efficiently conveys the tool's purpose without any wasted words.

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 simplicity of the tool, the full schema coverage, and the strong read-only annotations, the description is adequately complete. Since there is no output schema, a hint about return values might help, but the tool's purpose is clear enough for selection and 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?

The input schema already provides 100% coverage with descriptions for all three parameters, including an enum for chainId. The description adds no additional parameter-level context, so the baseline score of 3 applies per the rubric.

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 uses a specific verb 'Get' with a clear resource 'buy offers for an NFT on OpenSea', and explicitly distinguishes from sibling tools like openseaGetNFTListings (sell listings) and openseaGetBestListings. It leaves no ambiguity about what the tool does.

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 by stating it retrieves buy offers, but it does not explicitly mention when to use this tool versus alternatives or provide any exclusion criteria. No alternative tools are referenced, so the agent must infer context from the tool name and siblings.

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

openseaGetTrendingCollectionsopensea: openseaGetTrendingCollectionsA
Read-onlyIdempotent
Inspect

Find trending NFT collections by volume, market cap, or price changes. Use this for market research and discovering popular collections.

ParametersJSON Schema
NameRequiredDescriptionDefault
nextNoPagination cursor for next page
limitNoNumber of collections to return
chainIdNoChain ID (1=Ethereum, 137=Polygon, etc.)
orderByNoSort collections by this metricseven_day_volume
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the safety profile is covered. The description adds no extra behavioral details (e.g., pagination behavior or data freshness) beyond what annotations imply, but it does not contradict them either.

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 the core purpose, no wasted words. Every sentence serves a role: the first states what it does, the second gives usage context. Excellent conciseness.

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?

For a simple read-only list tool, the description covers the core action and intent. However, there is no output schema and many sibling tools that do collection rankings, so a note about OpenSea-specific trending logic or return values would improve completeness. As is, it is adequate but not highly informative.

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 baseline is 3. The description mentions sorting by volume/market cap/price changes, which aligns with the orderBy parameter, but it doesn't add any details beyond what the schema already provides for the other parameters.

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 uses a specific verb ('Find') and identifies the resource ('trending NFT collections') along with the sorting dimensions (volume, market cap, price changes). It is clear but does not explicitly differentiate from sibling tools like getTopCollectionsByVolume or getTopCollectionsByFloor, so it misses the top score.

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 gives a clear usage context ('Use this for market research and discovering popular collections') but does not mention alternatives or exclusions. Given the many similar sibling tools for fetching collections, the lack of when-to-use/alternatives guidance is a noticeable gap.

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

polygonGetBalancesPolygon: polygonGetBalancesA
Read-onlyIdempotent
Inspect

Return the user's wallet holdings on Polygon (chain ID 137): native MATIC plus all detected ERC-20 token balances with contract address, symbol, decimals, and USD value where pricing is available.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true, idempotentHint=true, and destructiveHint=false, so the agent knows it is safe. The description adds value by detailing the return contents (native MATIC + ERC-20 tokens with address, symbol, decimals, USD value) and the caveat 'where pricing is available,' which goes beyond annotation data.

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

Conciseness5/5

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

The description is a single, well-structured sentence that front-loads the action and resource, then lists return details. Every word earns its place with no redundancy.

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 has no parameters, no output schema, and strong annotations, the description fully covers the tool's purpose, behavior, and return contents. The pricing caveat adds important completeness for expected output variability.

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 input schema has zero parameters, so the baseline is 4. The description clarifies that 'user's wallet' is the implicit subject, which is sufficient context. No additional parameter semantics are 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 uses a specific verb ('Return') and resource ('wallet holdings on Polygon'), including chain ID 137 and detailed return contents (native MATIC, ERC-20 token balances with contract address, symbol, decimals, USD value). This clearly distinguishes it from sibling balance tools for other chains.

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 intended context is clear: use this tool to query Polygon wallet balances. However, it does not explicitly mention when not to use it or name alternative tools (e.g., ethGetBalances), relying instead on sibling names for differentiation. This is clear context without explicit exclusions.

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

polygonSwapQuotePolygon: polygonSwapQuoteA
Read-onlyIdempotent
Inspect

Quote an exact-input Polygon swap. The sellAmount may be sell-token units, a USD budget such as '$5', or 'max'. Returns a normalized conditionalOrderHandoff for explicit entry or exit orders.

ParametersJSON Schema
NameRequiredDescriptionDefault
sellAmountYesHow much of the SELL token to spend. Use a decimal string for sell-token units (e.g. '0.01' means 0.01 ETH), '$5' or '5 usd' for a USD budget, or 'max'. Never convert a user's USD budget yourself.
buyTokenAddressNoPolygon address of the token being received (BUY token)
sellTokenAddressNoPolygon address of the token being spent (SELL token)
Behavior4/5

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

Annotations already establish read-only and idempotent behavior, so the description adds value by mentioning the return format ('normalized conditionalOrderHandoff') and the flexible sellAmount formats. This goes beyond the structured 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.

Conciseness4/5

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

The description is three concise sentences, front-loading the core purpose. The second sentence on sellAmount somewhat duplicates schema info, but it's brief and reinforces key behavior. Overall, it's appropriately sized with minimal waste.

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?

With no output schema, the description attempts to explain the return value ('conditionalOrderHandoff') but does so ambiguously. While the tool is simple and annotations are strong, the return format is unclear, leaving the agent without enough detail to fully understand the output.

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 provides 100% coverage of parameter descriptions, including detailed sellAmount semantics. The tool description repeats some of this but does not add significant new meaning beyond the schema, so the 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 description clearly states the tool's function with a specific verb and resource: 'Quote an exact-input Polygon swap.' It distinguishes itself from sibling swap tools by specifying the Polygon chain and the exact-input nature, making the purpose unmistakable.

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 usage is implied by the description: it is for quoting Polygon swaps. However, there is no explicit guidance on when to use this versus other chain-specific swap quotes (e.g., baseSwapQuote, ethSwapQuote) or when not to use it. No alternatives are mentioned.

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

rareSatsForUTXOOrdiscan: rareSatsForUTXOA
Read-onlyIdempotent
Inspect

Inspect a single UTXO and report any rare sats it contains (uncommon, rare, epic, legendary, or named single-satoshi units). Returns an empty array if none.

ParametersJSON Schema
NameRequiredDescriptionDefault
utxoIdYesUTXO reference in 'txid:vout' form (e.g. 'a1b2...:0').
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 annotations by specifying the return behavior ('Returns an empty array if none') and enumerating the rare sat categories (uncommon, rare, epic, legendary, named single-satoshi units). This gives the agent a clearer picture of what to expect.

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, well-structured sentence that front-loads the purpose, lists the categories, and states the empty-array return behavior. Every element earns its place with no wasted words.

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 single-parameter tool with no output schema and clear annotations, the description is sufficiently complete: it defines the input scope, the type of results, and the empty case. However, it does not describe the structure of the returned rare-sat entries, which could be useful given no output schema is present, so it falls just short of a 5.

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 'utxoId', which already includes a clear description of the 'txid:vout' format. The tool description adds no additional parameter meaning beyond the schema, so the baseline 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 description clearly states the verb 'inspect', the resource 'a single UTXO', and the outcome 'report any rare sats it contains' with a list of specific rarity types. This distinguishes it from sibling tools like getSatRangesForUTXO (which returns ranges) and getRareSats (which may cover more than a single UTXO).

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 when inspecting a specific UTXO for rare sats, but does not explicitly mention when to use this tool versus alternatives like getRareSats or getSatRangesForUTXO. It lacks clear guidance on exclusions or alternative tools, so usage is only implied.

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

rugcheckSolana: rugcheckA
Read-onlyIdempotent
Inspect

Check if token is a rug/scam. score_normalised: 0=safe, 100=risky.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenMintYesToken mint address
Behavior3/5

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

Annotations already declare the tool safe and read-only. The description adds the score_normalised interpretation, which provides useful context about the output but doesn't disclose additional behavioral traits like network calls, latency, or error conditions.

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 one short sentence plus a clarifying note on the score range. 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?

For a simple one-parameter read-only tool, the description adequately explains the purpose and the meaning of the key output score. It doesn't explain error handling or response format, but with no output schema and low complexity, this is 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?

The schema fully documents the single parameter tokenMint with its description, so the description adds no extra semantic value beyond what the schema already provides. 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 uses the specific verb 'Check' with the resource 'token' and clearly states the function is identifying rugs/scams. It also clarifies the score_normalised scale, which distinguishes this from generic token info tools like tokenMetadataInfo.

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 gives no explicit usage guidance, prerequisites, or mention of alternative tools. It only states the core action without advising when to choose this over other token-related sibling tools such as findSolanaGems or getPumpFunTokens.

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

searchCryptoByNameOrdiscan: searchCryptoByNameA
Read-onlyIdempotent
Inspect

Search for cryptocurrencies by name or symbol. Use this to find the correct token ID before getting detailed market data.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query (name or symbol)
Behavior3/5

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

Annotations already declare readOnly, openWorld, and idempotent hints, covering safety. The description adds the behavioral nuance that it resolves names/symbols to token IDs, but doesn't detail behaviors like fuzzy matching, result limits, or case sensitivity. Baseline of 3 is appropriate.

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 precise sentences, immediately stating the action and the recommended usage. No redundant words or repetition of annotations. Efficient and well-structured.

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 single-parameter search tool with strong annotations and no output schema, the description is sufficiently complete. It covers purpose, usage, and implies output (token ID). Minor gap: no information about result set size or exact return format, but not critical for this tool's simplicity.

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 the query parameter description already states 'Search query (name or symbol)'. The description reiterates this but doesn't add extra details like required format, length, or examples. Baseline of 3 stands as schema does the heavy lifting.

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 searches for cryptocurrencies by name or symbol, with a specific resource and action. It also distinguishes itself from other tools by explicitly stating its role: 'find the correct token ID before getting detailed market data.'

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 usage context: 'Use this to find the correct token ID before getting detailed market data.' This implies a workflow and distinguishes from data-gathering tools. It doesn't list alternatives or exclusions but is clear about the intended scenario.

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

searchEvmTokensBirdeyeStandard Tools: searchEvmTokensBirdeyeA
Read-onlyIdempotent
Inspect

Search for evm tokens on Birdeye. Supports multiple chains like eth, polygon, bsc, base, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query
chainIdYesChain ID to search tokens on
Behavior3/5

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

Annotations already declare readOnlyHint=true, openWorldHint=true, idempotentHint=true, and destructiveHint=false, covering the safety profile. The description adds minimal behavioral context beyond the annotations, such as vague chain support ('eth, polygon, bsc, base, etc.') but does not describe return format, pagination, or result limits, so the added value is limited.

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 extremely concise, using only two short sentences to convey the tool's purpose and chain support. Every word adds value; there is no fluff or repetition of schema details.

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?

This is a simple search tool with two well-documented parameters and strong annotations. The description covers the essential purpose and chain flexibility. The lack of an output schema slightly reduces completeness, but for a simple read-only search, the information provided is adequate.

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%: both 'query' and 'chainId' have descriptions. The tool description adds only a general mention of chain names, which roughly maps to the enum values but does not significantly enhance the semantic understanding beyond the schema. Thus the baseline of 3 is appropriate.

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's function: 'Search for evm tokens on Birdeye.' It identifies the resource (Birdeye EVM tokens) and the action (search). It is distinguishable from siblings like birdeyeTrendingTokens and searchCryptoByName, though it does not explicitly state how it differs from other search tools.

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 when searching for EVM tokens via Birdeye and mentions supported chains, but it does not provide explicit when-to-use vs. alternative tools. There are no exclusions or comparisons to sibling tools like birdeyeTrendingTokens or searchCryptoByName, so guidance is only implicit.

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

searchPolyMarketEventspolymarket: searchPolyMarketEventsA
Read-onlyIdempotent
Inspect

Search Polymarket events by keyword. Returns compacted results.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch query string
pageNo
events_statusNoactive
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, so the safety profile is known. The description adds 'Returns compacted results,' which provides some insight into output size, but it does not explain pagination behavior or what 'compacted' means beyond the schema/defaults. This adds modest context but not rich behavioral detail.

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 short sentences with no filler. It front-loads the core action and adds a single useful detail about output compactness. Every word earns its place.

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?

For a read-only search tool with strong annotations and a simple schema, the description is minimally adequate. However, it lacks details on pagination (page parameter), filtering status (events_status), and what 'compacted' results contain. Without an output schema, the agent has insufficient information about return format, leaving clear gaps.

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

Parameters2/5

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

Schema description coverage is only 33% (only 'q' has a description). The description mentions 'by keyword' which maps to q, but it does not explain 'page' or 'events_status' parameters. Since the description should compensate for low schema coverage but fails to clarify the remaining parameters, the semantics are weak.

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 states a specific verb and resource ('Search Polymarket events by keyword') and distinguishes from sibling tools like getPolyMarketEvents (lists all), getPolyMarketEvent (single item), and getPolyMarketEventsByTag (tag-based). The keyword scope makes the purpose unambiguous.

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 keyword-based searches, but it does not explicitly state when to use this tool versus alternatives or provide any exclusions. The guidance is implicit rather than explicit, matching the 'implied usage' criterion.

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

searchSRC20TokensOrdiscan: searchSRC20TokensA
Read-onlyIdempotent
Inspect

Search SRC-20 tokens (Bitcoin Stamps fungible standard) with filters: free-text, deployer address, sort by deploy time / holders / mint progress. Use for SRC-20 market discovery.

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNo1-indexed page number for paginating results (max 10000). Defaults to 5.
queryNoFree-text query against SRC-20 ticker, creator notes, and metadata.
sort_byNoSort field: 'deploy_timestamp' (newest deploys), 'holders' (most-held), 'percent_minted' (closest to fully minted).
deployerNoFilter to SRC-20 tokens deployed by a specific Bitcoin address (26-62 chars).
page_sizeNoItems per page (1-100). Defaults to API default.
sort_orderNoResult ordering: 'ASC' (ascending) or 'DESC' (descending).
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, and idempotentHint=true, so the agent knows this is a safe, idempotent read. The description adds the filter scope and intended use but does not elaborate on pagination or response structure, which annotations don't cover.

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, efficiently conveying the action, filters, and use case. Every phrase earns its place, and the structure 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?

With a rich schema, strong annotations, and a clear read-only search purpose, the description is adequate. It lacks an explicit output description, but the lack of an output schema and the straightforward search semantics make this acceptable.

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 schema has 100% parameter descriptions, including enums and range constraints. The description summarizes the primary filters (free-text, deployer, sort) but provides no additional semantic detail 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 'Search SRC-20 tokens (Bitcoin Stamps fungible standard)' with a specific verb and resource, and enumerates filters. It differentiates from sibling searchStamps by focusing on the fungible standard.

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 clear context with 'Use for SRC-20 market discovery,' but does not explicitly mention alternative tools or exclusion criteria. This is a minor gap, as the use case is well-defined.

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

searchStampsOrdiscan: searchStampsA
Read-onlyIdempotent
Inspect

Search the Bitcoin Stamps index (Stampchain.io) with multiple filters: free-text query, creator address, collection, Counterparty asset ID, BTC vs cursed filtering, and pagination. Use this for stamp discovery and curated collections.

ParametersJSON Schema
NameRequiredDescriptionDefault
cpidNoCounterparty asset ID (CPID), e.g. 'A12345...', identifying a specific stamp asset.
pageNo1-indexed page number for paginating results.
limitNoHard cap on total results returned. Use as an alternative to page_size for one-shot calls.
queryNoFree-text query against stamp asset names, descriptions, and metadata.
creatorNoFilter to stamps issued by a specific Bitcoin/Counterparty creator address.
is_cursedNoIf true, only return cursed stamps (out-of-spec issuances); if false, exclude them.
page_sizeNoItems per page (1-100). Defaults to API default.
sort_orderNoResult ordering by stamp number: 'ASC' (oldest first) or 'DESC' (newest first).
is_btc_stampNoIf true, only return canonical BTC Stamps; if false, exclude them.
collection_idNoFilter to stamps belonging to a Stampchain collection ID.
Behavior4/5

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

Annotations already declare readOnly, openWorld, idempotent, and non-destructive behavior. The description adds context beyond that by specifying the data source (Stampchain.io), the filter categories, and pagination behavior, which is valuable for an agent.

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: the first states the action and lists filters, the second gives the intended use case. Every part is informative and no words are wasted.

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 10 optional parameters all fully described in the schema and safe-read annotations, the description effectively covers the tool's purpose and filter breadth. It mentions all major filter categories and pagination, and no output schema is necessary for a straightforward search tool.

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 each parameter already has a meaningful description. The description groups filters into categories (free-text, creator, collection, CPID, BTC vs cursed, pagination) but does not add details beyond what the schema provides.

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 uses a specific verb ('Search') with a clear resource ('Bitcoin Stamps index'), and lists multiple filter dimensions. It distinguishes itself from siblings like getStamp or getStampsByAddress by emphasizing discovery and curated collections.

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 explicitly states a use case: 'Use this for stamp discovery and curated collections.' It provides clear context but does not name alternative tools or give explicit 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.

solanaBalancesSolana: solanaBalancesA
Read-onlyIdempotent
Inspect

Return the user's Solana wallet holdings: native SOL plus all SPL tokens with mint address, symbol, balance, decimals, and USD value where pricing is available. Native SOL and Wrapped SOL (WSOL) are separate balances and must not be added together when selecting an asset to send.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior4/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, setting a safe read-only expectation. The description adds valuable behavioral context beyond annotations: the WSOL/SOL separation warning and the caveat that USD value is provided 'where pricing is available.' This informs safe usage but doesn't include broader details like rate limits or default sort order.

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 compact and front-loaded, with the primary purpose stated first and a crucial usage caveat second. Both sentences add unique value—no filler or repetition of annotation/schema information. It is an model of concise, structured documentation.

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 low complexity (zero parameters, no output schema), the description is fully complete. It enumerates the returned fields (mint, symbol, balance, decimals, USD value) and highlights an important quirk (WSOL separation) that users must know. There are no unanswered questions about usage or return content.

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 input schema is empty with zero parameters, so the baseline is 4. The description correctly avoids explaining parameters that don't exist and focuses on the output structure instead. No additional parameter semantics are 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's function: 'Return the user's Solana wallet holdings' with specific details about what is included (native SOL, SPL tokens) and the data fields (mint address, symbol, balance, decimals, USD value). This distinguishes it from other chain-specific balance tools like ethGetBalances or bscGetBalances, and from price-focused tools like solanaGetTokenPrices.

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 the tool (when a user's Solana wallet holdings are needed) by specifying the asset chain and content. It also provides a critical usage warning: 'Native SOL and Wrapped SOL (WSOL) are separate balances and must not be added together when selecting an asset to send.' However, it does not explicitly name alternatives or exclusion cases, so it falls 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.

solanaGetTokenPairPriceSolana: solanaGetTokenPairPriceA
Read-onlyIdempotent
Inspect

Quote the spot exchange rate between two SPL tokens, routed across Solana DEX liquidity for best execution. Returns the rate of inputMint denominated in outputMint, plus the route taken.

ParametersJSON Schema
NameRequiredDescriptionDefault
inputMintYesSPL mint address of the input token (the one being sold/spent). Use 'So11111111111111111111111111111111111111112' for wrapped SOL.
outputMintYesSPL mint address of the output token (the one being bought). Use 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v' for USDC.
Behavior4/5

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

Annotations already indicate read-only, non-destructive, idempotent behavior. The description adds useful context about routing across DEX liquidity and returning the route, which is behavioral detail beyond the annotations. No contradictions exist.

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, concise, and front-loaded with the main purpose. It avoids redundancy and every sentence adds value.

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 two-parameter tool with no output schema, the description sufficiently explains what it returns (rate plus route) and the context. It is not over-detailed, but it covers the essentials. A slightly higher score would require more detail on route structure, but that is not critical.

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 schema provides 100% coverage with descriptions for both inputMint and outputMint, including example addresses. The description's phrase 'inputMint denominated in outputMint' clarifies rate direction but is largely inferable from the schema, so the description adds minimal extra meaning.

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 quotes the spot exchange rate between two SPL tokens and specifies the direction (inputMint denominated in outputMint). It also distinguishes itself from siblings like solanaGetTokenPrices by focusing on a single pair and returning the route taken.

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 clear context: use this tool when you need a pair-specific spot rate with best-execution routing. It does not explicitly mention alternatives or when not to use it, but the context is sufficient for an agent to match it to the need.

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

solanaGetTokenPricesSolana: solanaGetTokenPricesA
Read-onlyIdempotent
Inspect

Batch-fetch USD spot prices for one or more SPL tokens. Returns each mint's USD price plus confidence level. More efficient than calling solanaGetTokenPairPrice in a loop.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenMintsYesList of SPL mint addresses to price (1-100). Each entry is a base58 mint pubkey.
Behavior3/5

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

Annotations already declare readOnlyHint=true and destructiveHint=false, covering safety. The description adds that the tool returns USD prices and confidence levels, plus a note on efficiency, which is useful but not extensive. There is no contradiction with annotations, and the behavioral context is adequate for a read-only batch price query.

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, followed by return info and efficiency note. Every word contributes, with no redundancy or filler.

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 read-only batch price tool, the description covers the core: what it does, what it returns, and why to choose it. There is no output schema, so a precise response shape is not specified, but the mention of 'each mint's USD price plus confidence level' provides a decent summary. Given the low complexity and strong annotations, this is nearly complete.

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

Parameters3/5

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

Schema description coverage is 100%—the tokenMints parameter is fully described with type, range, and format. The description adds minimal extra parameter meaning ('one or more SPL tokens') but does not go beyond what the schema already provides. Baseline 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 description uses a specific verb ('Batch-fetch') and clearly identifies the resource (USD spot prices for SPL tokens). It explicitly distinguishes itself from the sibling solanaGetTokenPairPrice by noting it is more efficient for batch operations, making the purpose unambiguous.

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 states when to use this tool—when you need to fetch prices for multiple tokens—and directly references the alternative (solanaGetTokenPairPrice) with a rationale (more efficient than looping). However, it does not explicitly mention scenarios where the pair price tool would be preferable (e.g., non-USD pairs), so it stops short of full when-not guidance.

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

tokenMetadataInfoStandard Tools: tokenMetadataInfoB
Read-onlyIdempotent
Inspect

Get a token metadata and price info.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesThe token address
networkYesThe network of the token
Behavior2/5

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

Annotations already convey read-only, idempotent, and non-destructive behavior. The description adds no additional behavioral context such as rate limits, error handling, or response format, so it provides little value 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?

The description is a single, concise sentence that is front-loaded and free of unnecessary words. It efficiently communicates the core purpose.

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?

With no output schema, the description should clarify what metadata and price info are returned, but it remains vague. However, the input schema is fully documented and annotations are strong, making the description minimally viable for a simple read-only tool.

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 both address and network parameters having descriptions. The tool description does not add any extra meaning beyond the schema, so the baseline score of 3 applies.

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 a specific action and resource: getting token metadata and price info. It is not misleading, but it does not explicitly differentiate from sibling tools like getCryptoPrice or solanaGetTokenPrices, so it lacks explicit sibling differentiation.

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 is provided on when to use this tool versus alternatives. The description only states what it does, without mentioning availability conditions, alternatives, or exclusions, leaving the agent to infer usage.

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

walletStandard Tools: walletA
Read-onlyIdempotent
Inspect

Get the connected wallet and vault info across all networks

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

Behavior3/5

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

With readOnlyHint=true and idempotentHint=true in annotations, the description doesn't need to explain safety. It adds the useful insight that this aggregates data 'across all networks', which is behavioral context beyond annotations. However, it omits what 'vault info' entails or how the wallet is connected, missing an opportunity to enrich transparency.

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 11 words, front-loaded with the verb 'Get'. Every word earns its place by specifying the resource and scope. No redundancy or filler.

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 simplicity of the tool (0 params, read-only annotations, no output schema), the description is largely complete: it tells you what you get (wallet and vault info) and its scope (all networks). However, the vagueness of 'vault info' and lack of any hint about the exact return shape mean it's not a 5, but it's adequate for most use cases.

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, so there is no parameter semantic burden on the description. The schema already covers everything (trivially). Per the rubric, 0 params gets a baseline of 4, and the description doesn't need to add parameter details that don't exist.

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 what the tool does: 'Get the connected wallet and vault info across all networks'. It uses a specific verb ('Get'), identifies the resource ('connected wallet and vault info'), and scopes it globally ('across all networks'), distinguishing it from network-specific siblings like ethGetBalances and solanaBalances.

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 context—this is the tool to call when you need wallet/vault information across all networks—but it does not explicitly state when to use it versus alternatives, nor does it mention any exclusions or prerequisites. The scope clue ('all networks') helps, but no alternative tools are referenced.

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

websearchAdvanced Search: websearchA
Read-onlyIdempotent
Inspect

Search the web for current news, information, and announcements. Use this for real-time market insights and breaking news.Do NOT use it for real-time price data for prices and swaps, use quote tools instead.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesThe search query
Behavior3/5

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

Annotations already declare readOnlyHint, openWorldHint, idempotentHint, and destructiveHint=false, covering the safety profile. The description adds the 'current news' scope but does not disclose additional behavioral traits such as result format, pagination, or rate limits. Since annotations carry the burden, a 3 is appropriate.

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 compact and front-loaded: the first sentence states the core function, the second provides usage guidelines. No redundant words or unnecessary details.

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 (one parameter, no nested objects) and existing annotations, the description is sufficiently complete. It covers purpose, usage context, and an explicit exclusion. Although no return format is described, this is acceptable for a basic search tool with no 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?

Schema coverage is 100% with 'query' described as 'The search query'. The description does not add deeper semantics beyond implying a text query for current news. The baseline of 3 holds as the schema already provides all necessary parameter details.

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: 'Search the web for current news, information, and announcements.' It uses a specific verb and resource, and distinguishes itself from the many crypto/quote-related siblings by focusing on web search for real-time insights and breaking news.

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 states when to use the tool ('for real-time market insights and breaking news') and provides an exclusion with an alternative ('Do NOT use it for real-time price data for prices and swaps, use quote tools instead'). This gives clear guidance relative to sibling tools.

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
    A
    quality
    A
    maintenance
    GTM signal intelligence suite for AI agents. Six tools: hiring signals, tech stack detection, company-to-LinkedIn resolution, ICP scoring, job board scanning, and a combined signals aggregator. Built for outbound sales workflows.
    11
    737
    1
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Browse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A Voice of Customer pipeline that cross-references feedback from calls, reviews, chat, and other sources to surface only corroborated patterns, routing actionable insights with exact customer quotes to the right people.
    MIT

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources