Skip to main content
Glama

EmblemAI Agent Skills

Smithery quality 84 Glama MCP server LobeHub License: MIT GitHub stars

Official skill collection for AI agents building with EmblemAI. EmblemAI is open-source crypto infrastructure for both end users and AI agents: 200+ tools across 7 blockchains (Solana, Ethereum, Base, BSC, Polygon, Hedera, Bitcoin) for swaps, conditional orders, DeFi, NFTs, and cross-chain bridges, with x402 payment rails and A2A and MCP protocol support. Emblem is also the easiest way to add user management for apps that need wallet-native users: one integration can create authenticated users, give each user a full-featured crypto wallet, and support website login with wallets, email/password, and social sign-in. Compatible with Claude Code, Cursor, Codex, and other agents following the Agent Skills specification.

Available Skills

Core

Skill

Description

Install

emblem-ai

EmblemAI developer tools for one-shot user management, wallet-enabled users, AI crypto tooling, React SDKs, and app introspection

npx skills add EmblemCompany/Agent-skills --skill emblem-ai

emblem-ai-react

React-focused EmblemAI integration skill for adding auth, wallet-enabled users, chat components, and Migrate.fun flows to an app

npx skills add EmblemCompany/Agent-skills --skill emblem-ai-react

emblem-ai-agent-wallet

Agent wallet CLI and browser auth across 7 blockchains, with wallet, email/password, and social sign-in options

npx skills add EmblemCompany/Agent-skills --skill emblem-ai-agent-wallet

emblem-ai-prompt-examples

Curated non-developer prompt and usage examples for EmblemAI wallet, market, trading, NFT, Bitcoin, prediction-market, vault, and assistant workflows

npx skills add EmblemCompany/Agent-skills --skill emblem-ai-prompt-examples

Use Cases

Skill

Description

Install

emblem-portfolio-tracker

Cross-chain portfolio monitoring, P&L tracking, and performance analytics

npx skills add EmblemCompany/Agent-skills --skill emblem-portfolio-tracker

emblem-token-swap

Guided token swapping with route optimization and slippage control

npx skills add EmblemCompany/Agent-skills --skill emblem-token-swap

emblem-market-research

Trending tokens, sentiment analysis, and market intelligence

npx skills add EmblemCompany/Agent-skills --skill emblem-market-research

emblem-defi-yield

DeFi yield farming, LP management, and staking across DEXs

npx skills add EmblemCompany/Agent-skills --skill emblem-defi-yield

emblem-memecoin-scout

Memecoin discovery, rug-pull detection, and trending new tokens

npx skills add EmblemCompany/Agent-skills --skill emblem-memecoin-scout

Related MCP server: Hexiaoyi MCP

Quick Install

# Install a specific skill
npx skills add EmblemCompany/Agent-skills --skill emblem-ai
npx skills add EmblemCompany/Agent-skills --skill emblem-ai-react
npx skills add EmblemCompany/Agent-skills --skill emblem-ai-agent-wallet
npx skills add EmblemCompany/Agent-skills --skill emblem-ai-prompt-examples

# Install all skills
npx skills add EmblemCompany/Agent-skills

# List available skills
npx skills add EmblemCompany/Agent-skills --list

Install EmblemAI as an MCP server

The skills above are authoring guidance. If you want your agent to actually call EmblemAI tools at runtime, install the hosted MCP server in your MCP-compatible client.

Claude Code (OAuth, no API key)

claude mcp add --transport http EmblemAI https://emblemvault.ai/api/mcp

Claude Code walks you through the hosted OAuth flow in your browser. No secret to paste.

Claude Code (API key, for headless / CI)

claude mcp add --transport http EmblemAI https://emblemvault.ai/api/mcp \
  --header "x-api-key: YOUR_API_KEY"

GitHub Copilot CLI / .mcp.json

{
  "mcpServers": {
    "emblemai": {
      "type": "http",
      "url": "https://emblemvault.ai/api/mcp",
      "headers": { "x-api-key": "YOUR_API_KEY" }
    }
  }
}

Full install matrix (Claude Desktop bridge, Cursor, Windsurf, Gemini CLI): https://emblemvault.ai/docs/mcp

What EmblemAI enables

For AI agents and developers:

  • 200+ tools across 7 blockchains covering swaps, conditional orders, DeFi positions, NFT operations, cross-chain bridges, and market intelligence.

  • x402 facilitator and per-call payment rails for agent-to-agent commerce without account setup.

  • Native MCP (Model Context Protocol) server for Claude Code, GitHub Copilot, Gemini CLI, and other MCP clients.

  • A2A (Agent-to-Agent) protocol support for direct agent interoperability.

  • Deterministic wallets โ€” one password produces one persistent agent identity across all chains. Every wallet-modifying action requires explicit approval.

For end users and wallet-native apps:

  • The easiest way to do user management for wallet-native apps: one integration can create website users who also have full-featured crypto wallets.

  • Flexible login: users can sign in with many crypto wallets, email/password, or social login.

  • The easiest way to give an agent a crypto wallet: Emblem's agent wallet CLI can create or restore a wallet-enabled identity in one command.

  • One session, more capability: the same Emblem session can power authentication, wallet access, transaction signing, and AI-driven crypto workflows.

Skill Structure

Each skill follows the Agent Skills specification:

skills/<skill-name>/
โ”œโ”€โ”€ SKILL.md              # Required โ€” skill instructions + metadata (recommended <500 lines)
โ”œโ”€โ”€ references/           # Optional โ€” detailed documentation by topic
โ”œโ”€โ”€ scripts/              # Optional โ€” executable helpers
โ”œโ”€โ”€ assets/               # Optional โ€” config templates, schemas
โ””โ”€โ”€ examples/             # Optional โ€” sample outputs

Adding Skills

See CONTRIBUTING.md for guidelines on adding new skills.

Registry Compatibility

The publishable SKILL.md files in this repo intentionally stay within the public Agent Skills frontmatter defined at agentskills.io/specification: name, description, and the optional license, compatibility, metadata, and allowed-tools fields.

That keeps these skills portable across agentskills.io / agentskills.to compatible tooling instead of relying on vendor-only top-level fields.

The public docs we found describe a repo-based sharing and install flow rather than a documented manual โ€œadd skillโ€ form in the web UI. In practice, keep the skill in git, validate it with the official CLI, and share or install it from the repository.

Validation

# Install the official validator
python -m pip install skills-ref==0.1.1

# Validate one skill with the official CLI
agentskills validate skills/emblem-ai-agent-wallet

# Validate all skills in this repository
bash validate-all.sh

# Validate one skill with the repo wrapper
bash validate-skill.sh emblem-ai-agent-wallet

The upstream agentskills validate command validates one skill directory at a time, not the top-level ./skills folder. This repository's validate-all.sh wrapper loops through skills/*/, syncs shared EmblemAI reference sources into skill-local copies, and then runs repository-specific markdown/link checks.

The legacy --strict flag is still accepted by the wrapper scripts for backwards compatibility, but it no longer changes behavior because the official validator is spec-compatible by default.

Pull requests install the official skills-ref validator in CI and run the repository wrapper so public skill frontmatter stays spec-compatible.

CI also fails if the sync step rewrites generated files under skills/, which prevents uncommitted shared-reference updates from slipping through.

Shared Sources

Some reference docs are intentionally repeated across publishable skills. Those repeated files are not meant to be edited in place under skills/.../references/.

The rule is:

  • edit the canonical source under shared/

  • run bash validate-all.sh or bash validate-skill.sh ...

  • let the sync step regenerate the skill-local copies

Current shared sources:

  • shared/emblem-ai-prompt-examples.md

  • shared/emblem-ai-prompt-examples/

  • shared/emblem-ai-react-references/

Current generated skill-local copies:

  • prompt examples copied into emblem-ai, emblem-ai-react, emblem-ai-agent-wallet, and emblem-ai-prompt-examples

  • React references copied into emblem-ai and emblem-ai-react

The sync entrypoint is utils/sync-emblem-ai-shared-references.sh.

If a reference file is duplicated across multiple skills, move it into shared/ and sync it back into each standalone skill instead of maintaining separate manual copies.

Validation also runs automatically on every PR via GitHub Actions.

About EmblemAI

EmblemAI provides 200+ autonomous trading tools across 7 blockchains (Solana, Ethereum, Base, BSC, Polygon, Hedera, Bitcoin). Open source and available as an npm CLI, an MCP server, and an A2A-compatible agent.

License

MIT

Available Tools

130 tools
baseFindClankerTokensbase: baseFindClankerTokensA
Read-onlyIdempotent

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
limitNo
offsetNo
sortByNomarket-cap
sortNodesc
chainIdNo
includeMarketNo
includeUserNo
qNo

TDQS

A4.3/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.5/5.0
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

Get current USD price and swap quote for Base tokens. ALWAYS fetch fresh prices - crypto is volatile. Use 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE for native ETH.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromTokenAddressYesToken address to swap from
toTokenAddressYesToken address to swap to
amountYesAmount to swap (human readable)

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already indicate readOnlyHint=true and idempotentHint=true, so the description adding 'Get current USD price and swap quote' confirms it is a read-only query. It also warns about volatility, which aligns with the openWorldHint. 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?

Two sentences: first states purpose, second provides a critical usage note and a concrete address hint. Every sentence is essential, no fluff. Front-loaded with the core action.

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 (3 parameters, no output schema, clear annotations), the description is sufficient. It explains what is returned (USD price and swap quote) and gives a key pointer for native ETH. Missing structural info about quote format but not critical for selection.

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 schema already documents all parameters. The description adds value by specifying 'Use 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE for native ETH,' which clarifies the token address for ETH, a common special case. This exceeds 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?

Clearly states 'Get current USD price and swap quote for Base tokens.' It specifies the action (get), the resource (swap quote and price), and the blockchain (Base). This distinguishes it from sibling swap quote tools for other chains like ethSwapQuote or bscSwapQuote.

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 a strong usage guideline: 'ALWAYS fetch fresh prices - crypto is volatile.' This tells the agent to always request a new quote rather than caching. It also provides the address for native ETH, which is a practical hint. However, it does not explicitly state when not to use this tool or name alternatives.

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

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

TDQS

A4.7/5.0
Behavior4/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 adds value by specifying which chains are supported and which are not, providing additional behavioral context beyond the 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 two sentences: the first states the core purpose, and the second lists supported chains with a critical exclusion and alternative. No unnecessary words or 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 read-only tool with 2 parameters (100% schema coverage), clear annotations, and no output schema, the description adequately covers purpose, chain support, and exclusion. No additional information is needed 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.

Parameters4/5

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

Schema description coverage is 100% (both 'chain' and 'address' are described). The description adds extra context by listing supported chains explicitly and noting the Hedera exclusion with an alternative, which supplements the schema's enum and default value.

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 'detailed trade data for a specific token from Birdeye' and lists all supported chains, explicitly distinguishing from the sibling tool for Hedera by saying 'NOT supported: Hedera (use hederaTokensSwapQuote instead)'. This provides a specific verb+resource and differentiates from alternatives.

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 provides an alternative tool for the unsupported Hedera chain, giving clear guidance on when to use this tool and when to use a sibling instead.

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

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)
sortByNoField to sort by. Currently only supports "rank"
sortTypeNoSort direction: "asc" for ascending, "desc" for descending
offsetNoNumber of items to skip
limitNoNumber of trending tokens to fetch (MAX 5)

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, destructiveHint, and idempotentHint, so the safety profile is clear. The description adds that the data is real-time, which is useful but does not disclose additional behavioral traits beyond annotations.

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

Conciseness4/5

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

The description is a single concise sentence with no fluff. It is front-loaded with the key action. However, it could be slightly more structured by separating purpose from features.

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?

Although the description covers the high-level purpose, there is no output schema and the description does not explain the return format or what fields the agent can expect. Given the number of parameters and the lack of output schema, this is insufficient.

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 each parameter having a description. The description does not add any new meaning beyond what the schema provides, 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 retrieves trending tokens from Birdeye with real-time price and market data, and supports multiple chains and sorting. It uses a specific verb and resource, distinguishing it from siblings like birdeyeTradeData.

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 trending tokens but does not explicitly state when to use this tool versus alternatives like getTrendingCoins. No when-not or exclusion criteria are provided.

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

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

ParametersJSON Schema
NameRequiredDescriptionDefault
orderByNoHot
tokenNameNo
listedPancakeNo
pageIndexNo
pageSizeNo
symbolNo
labelsNo

TDQS

A3.9/5.0
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

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

TDQS

A4.5/5.0
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

Get swap quote for BSC tokens. Uses Uniswap X or 0x. Use 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE for native BNB.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromTokenAddressYesToken address to swap from
toTokenAddressYesToken address to swap to
amountYesAmount to swap (human readable)

TDQS

A3.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, etc. The description adds value by revealing the underlying protocols (Uniswap X or 0x) and the native BNB address, but does not disclose additional behavioral traits such as rate limits, response format, or potential fees.

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, zero filler. The first sentence states purpose and protocols, the second provides a critical usage tip. 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?

No output schema exists, but the description does not explain what the quote response contains (e.g., expected output, price, slippage, fees). For a tool that returns data, this omission makes it partially incomplete despite covering input and protocols.

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 parameters are already documented. The description adds a concrete hint about using 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE for native BNB, which is helpful for correct parameter values beyond the schema's generic descriptions.

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

Purpose5/5

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

The description clearly states the tool gets a swap quote for BSC tokens, names the protocols used (Uniswap X or 0x), and includes a special address for native BNB. This differentiates it from sibling swap 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 Guidelines3/5

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

The description implies usage for BSC tokens via the token addresses, but does not explicitly state when to use this tool versus alternatives like ethSwapQuote or baseSwapQuote. No when-not or prerequisite conditions are given.

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

Check when a specific rune name becomes available to etch.

ParametersJSON Schema
NameRequiredDescriptionDefault
nameYesThe name of the rune (spacers like โ€ข are automatically removed)

TDQS

A3.5/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault
sortYes
sizeNo
mintTypeNodefault
includeNsfwNo
platformIdNoPlatformWhiteList
nextPageIdNo

TDQS

A3.5/5.0
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

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

TDQS

A4/5.0
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

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

TDQS

A4/5.0
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

List all available curated collections for vault creation with asset details

ParametersJSON Schema
NameRequiredDescriptionDefault
showAllNoShow all collections including hidden ones

TDQS

A4/5.0
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

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

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

TDQS

A4.2/5.0
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

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")

TDQS

A4.2/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.4/5.0
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

Get current USD price and swap quote for Ethereum tokens. ALWAYS fetch fresh prices - crypto is volatile. Use 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE for native ETH.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromTokenAddressYesToken address to swap from
toTokenAddressYesToken address to swap to
amountYesAmount to swap (human readable)

TDQS

A4.1/5.0
Behavior3/5

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

Annotations already cover safety (readOnlyHint, destructiveHint, etc.). The description adds useful context about volatility and the native ETH address but does not disclose other behaviors like rate limits or response format. With annotations present, 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 exceptionally concise: two sentences that front-load the core purpose and then add critical usage tips. No wasteful words, every sentence 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?

While the description is clear for its simple purpose, it lacks information about the return format (e.g., structure of the quote). No output schema exists, so the description should ideally describe what the agent can expect. Missing this reduces completeness for such a tool.

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

Parameters4/5

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

Schema description coverage is 100%, so baseline is 3. The description adds value by specifying the native ETH address (0xEeeee...), which is a practical hint for the fromTokenAddress parameter, improving usability 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 'Get current USD price and swap quote for Ethereum tokens,' specifying a specific verb and resource. It distinguishes from sibling tools for other chains (e.g., baseSwapQuote) by explicitly mentioning Ethereum.

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 a strong usage hint: 'ALWAYS fetch fresh prices - crypto is volatile,' guiding the agent to avoid stale data. It also provides the native ETH address. However, it does not explicitly exclude alternatives or specify 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.

findPositionByIdStandard Tools: findPositionByIdA
Read-onlyIdempotent

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

TDQS

A4/5.0
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

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

TDQS

A4.6/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenNameYesToken name or symbol to search

TDQS

A4/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYes
promptNo
enableWebSearchNo
optionsNo

TDQS

C2.9/5.0
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

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

TDQS

A4.1/5.0
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

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

TDQS

A3.8/5.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 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

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.

TDQS

A4.3/5.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, 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

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

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNoOptional: Filter by position status

TDQS

A4/5.0
Behavior4/5

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

Annotations already indicate read-only, non-destructive, and idempotent behavior. The description adds the cross-network scope and optional filtering, which provides behavioral context beyond annotations. However, it does not disclose potential large result sizes or performance implications.

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 action ('Get ALL conditional trade positions across ALL networks'), and contains no redundant 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 list with one optional filter and good annotations, the description covers the essential: what it returns and how to filter. It does not mention pagination or data volume, but given the simplicity, it is largely complete for tool selection.

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

Parameters3/5

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

Schema coverage is 100%, so the schema already documents the single parameter 'status' with enum values and description. The description only restates the optional filter without adding new meaning or format details, thus not exceeding the 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 clearly states 'Get ALL conditional trade positions across ALL networks' with a specific verb and resource. It distinguishes itself by emphasizing the cross-network scope, differentiating from per-network or per-position siblings like listPositions or findPositionById.

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 all positions globally with optional filtering, but does not explicitly state when to use this tool versus alternatives (e.g., for specific network or user positions). No exclusion criteria or alternative mentions are provided.

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

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.

TDQS

A4.5/5.0
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

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
bitcoinAddressYesBitcoin address whose BRC-20 activity to retrieve.
pageNo1-indexed page number for activity pagination.

TDQS

A4.2/5.0
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

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.

TDQS

A4.1/5.0
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

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

TDQS

A4.7/5.0
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

Get supported currencies for cross-chain swaps

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

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already indicate readOnly, non-destructive, idempotent, and open world. The description adds no behavioral details beyond the name, so it contributes minimal additional 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 sentence that is front-loaded and contains no extraneous information. 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 read-only tool with two parameters and no output schema, the description is adequate. It states the purpose and result type. Missing details about filter behavior are covered by 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?

Schema description coverage is 100%, meaning the schema already describes both parameters. The description does not enhance understanding 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 clearly states the tool's function: getting supported currencies for cross-chain swaps. It uses a specific verb ('Get') and resource ('supported currencies'), and the context distinguishes it from siblings like 'getChangeNowSwapQuote' which handles quotes.

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

Usage Guidelines3/5

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

No explicit guidance on when to use this tool versus alternatives. The description implies it's a prerequisite for swap quotes but does not mention when not to use it or provide exclusions.

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

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

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

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint, idempotentHint, and openWorldHint. The description adds that it is for cross-chain exchange and that tickers must be supported. It does not contradict annotations, but fails to disclose potential behavioral aspects like rate limits or output risk. Given annotations coverage, this is minimally adequate.

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

Conciseness4/5

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

The description is two sentences, front-loaded with the main purpose. It is concise with no wasted words. However, it could be slightly more informative (e.g., hinting at the output structure) without becoming verbose, so it earns a 4 rather than a 5.

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 no output schema, the description should explain what the quote contains (e.g., estimated rate, fees, expiration). It only mentions the constraint on tickers. For a quote tool, the agent needs to know the return format. The description is incomplete for effective 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 has 100% coverage with clear parameter descriptions (fromTicker, toTicker, fromAmount). The tool description adds no additional meaning beyond the schema, so it provides no extra value. 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 purpose: 'Get a swap quote for cross-chain exchange.' It specifies the verb 'Get', the resource 'swap quote', and the domain 'cross-chain exchange via ChangeNow.' This distinguishes it from sibling swap tools that may be on different protocols or single-chain.

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 'Tickers must be supported by ChangeNow,' suggesting use only for ChangeNow-supported pairs. However, it does not explicitly state when to use this tool over siblings like baseSwapQuote or ethSwapQuote, nor does it provide when-not-to-use guidance. Usage is implied but not fully clarified.

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

getCoinglassBitcoinEtfListCoinglass: getCoinglassBitcoinEtfListB
Read-onlyIdempotent

Provides a list of Bitcoin-based Exchange-Traded Funds (ETFs)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3/5.0
Behavior2/5

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

Annotations already provide readOnlyHint, destructiveHint, etc. The description adds no behavioral details beyond what is implied by the name. It does not mention pagination, data freshness, or rate limits, which would be helpful given the openWorldHint.

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

Conciseness3/5

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

The description is a single concise sentence, but it is overly minimal. While it front-loads the purpose, it could benefit from additional context without becoming verbose.

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 absence of an output schema and moderate complexity, the description should mention that results are paginated and list ETF items. Currently it only states it provides a list, which is insufficient for an agent to understand the return format.

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 information beyond the schema, but since the schema already describes page and limit, no extra is needed.

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

Purpose5/5

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

The description clearly states the tool provides a list of Bitcoin-based ETFs, using a specific verb and resource. It distinguishes from similar sibling tools like getCoinglassEthereumEtfList and getCoinglassBitcoinETFNetAssetsHistory.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives. With many sibling tools like getCoinglassBitcoinETFNetAssetsHistory or getCoinglassEthereumEtfList, explicit context on selection criteria is missing.

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

getCoinglassBitcoinETFNetAssetsHistoryCoinglass: getCoinglassBitcoinETFNetAssetsHistoryA
Read-onlyIdempotent

Historical net assets data for Bitcoin-based Exchange-Traded Funds (ETFs)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

A3.8/5.0
Behavior3/5

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

Annotations (readOnlyHint, idempotentHint) already indicate safe, read-only behavior. Description adds no additional behavioral traits 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?

Single sentence clearly communicates purpose without extraneous information. Efficient 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?

Description sufficiently explains what data is returned (historical net assets for Bitcoin ETFs). Could specify scope (aggregate or per ETF) but acceptable given simplicity and complete 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?

Schema coverage is 100% for both pagination parameters. Description does not add meaning beyond the schema's parameter descriptions.

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

Purpose5/5

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

Title and description clearly state it provides historical net assets data for Bitcoin-based ETFs. Distinguishes from siblings like getCoinglassBitcoinEtfList and getCoinglassEthereumETFNetAssetsHistory.

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

Usage Guidelines3/5

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

Description does not explicitly state when to use this tool versus alternatives. Usage context is implied by the tool name and siblings, but no direct guidance is provided.

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

getCoinglassBitfinexMarginDataCoinglass: getCoinglassBitfinexMarginDataA
Read-onlyIdempotent

Provides data on margin long and short positions from Bitfinex

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe symbol of the cryptocurrency. example BTC
pageNoPage number
limitNoNumber of items per page

TDQS

A3.7/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description's simple 'provides data' is consistent but adds no additional behavioral context. It does not disclose pagination limits, data freshness, or whether historical data is available. With high annotation coverage, this is acceptable but not revealing.

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 of 13 words. It is front-loaded with the core data type ('data on margin long and short positions') and source ('from Bitfinex'). No wasted words.

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 no output schema, the description should ideally hint at the return type (e.g., list of positions, with long/short ratios). It only states 'data on margin long and short positions', which is vague. The tool has moderate complexity (3 params, no enums), so the description is minimally adequate but could specify whether results are historical or current, and the structure of each position.

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 three parameters, so the description's role is minimal. It does not add semantics beyond the schema, which already explains 'symbol', 'page', and 'limit'. 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 it provides 'margin long and short positions from Bitfinex', using a specific verb ('provides') and resource ('margin long and short positions from Bitfinex'). It distinguishes itself from sibling tools like 'getCoinglassBitcoinEtfList' which deal with ETFs.

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 does not state when to use this tool or when not to. It merely describes what it does, leaving the agent to infer usage context. No alternatives or exclusions are mentioned.

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

getCoinglassBorrowInterestRateCoinglass: getCoinglassBorrowInterestRateB
Read-onlyIdempotent

Provides daily borrowing interest rates for cryptocurrencies

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe symbol of the cryptocurrency. example BTC
exchangeYesThe exchange of the cryptocurrency. example binance
intervalNoexample: 1m, 3m, 5m, 15m, 30m, 1h, 4h, 6h, 8h, 12h, 1d, 1w.h1

TDQS

B3.4/5.0
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, which cover safety and idempotency. The description does not add any behavioral context beyond what annotations provide, missing opportunities to mention data freshness 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 with no unnecessary words. It front-loads the purpose and is 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?

Given the tool's simplicity (3 parameters, no output schema, clear annotations), the description is adequate. It could mention the data source or typical use cases but is largely complete for a straightforward read 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?

The input schema has 100% description coverage for all three parameters (symbol, exchange, interval), providing examples and formats. The description adds no additional meaning beyond the schema, achieving the baseline score.

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

Purpose5/5

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

The description clearly states the tool provides daily borrowing interest rates for cryptocurrencies, with a specific verb and resource. It distinguishes itself from sibling tools like getCoinglassBitcoinEtfList by focusing specifically on borrowing interest rates.

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 does not provide any guidance on when to use this tool versus alternatives, nor does it mention any prerequisites or conditions. The usage context is only implied by the name and purpose.

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

getCoinglassCDRIIndexCoinglass: getCoinglassCDRIIndexB
Read-onlyIdempotent

Provides historical CDRI (CoinGlass Derivatives Risk Index) data

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate read-only, idempotent behavior. The description adds 'historical' context but does not elaborate on pagination or other traits. Adequate but unremarkable.

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?

Single sentence with no waste, front-loaded with verb and resource. However, it is extremely brief and could benefit from more structure.

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 tool with robust schema and annotations, the description is minimally complete. It omits clarification of output format or data range, but complexity is low.

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

Parameters3/5

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

Schema description coverage is 100%, and the description adds no additional meaning to the parameters. Baseline score 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 it provides historical CDRI data, which distinguishes it from sibling tools like getCoinglassCGDIIndex (a different index). However, it could be more specific about the data's nature.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives (e.g., getCoinglassCGDIIndex). The description lacks context for agent decision-making.

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

getCoinglassCGDIIndexCoinglass: getCoinglassCGDIIndexB
Read-onlyIdempotent

Provides historical CGDI (CoinGlass Derivatives Index) data

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.3/5.0
Behavior3/5

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

Annotations already indicate readOnly, idempotent, non-destructive. Description adds 'historical' context, which is consistent but does not disclose pagination behavior or rate limits.

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

Conciseness5/5

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

Single sentence that is clear and to the point, no extraneous 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?

Given full schema coverage and strong annotations, the description is adequate but could benefit from mentioning the purpose of CGDI or that data is paginated.

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

Parameters3/5

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

Schema has 100% coverage with descriptions for both parameters. The description does not add any additional parameter meaning beyond what schema already provides.

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?

Clearly states it provides historical CGDI data, but does not differentiate from many sibling getCoinglass* tools. The acronym CGDI is defined in parentheses, which helps but could be more specific.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives. Only describes what it does without context for selection.

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

getCoinglassEthereumEtfListCoinglass: getCoinglassEthereumEtfListB
Read-onlyIdempotent

Get the list of Ethereum ETFs with pagination

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.4/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description adds 'with pagination', which is implicit from the schema, but doesn't disclose additional behavioral traits like rate limits or data freshness.

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 sentence that efficiently conveys the core action and resource. No unnecessary words.

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 could explain the response structure (e.g., fields returned, pagination metadata). It does not, leaving the agent to infer. Adequate but incomplete.

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 descriptions for page and limit are clear. The description mentions pagination but adds no meaning 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 'Get' and the resource 'Ethereum ETFs with pagination'. It distinguishes from sibling tools like getCoinglassBitcoinEtfList by specifying Ethereum.

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 getCoinglassEthereumETFNetAssetsHistory. The description lacks context for selection.

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

getCoinglassEthereumETFNetAssetsHistoryCoinglass: getCoinglassEthereumETFNetAssetsHistoryA
Read-onlyIdempotent

Historical net assets data for Ethereum-based Exchange-Traded Funds (ETFs)

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already provide readOnlyHint, destructiveHint, idempotentHint, and openWorldHint. The description does not add behavioral context beyond stating it provides 'historical net assets data'. It does not describe pagination behavior or response structure. With good annotations, a score of 3 is appropriate as description adds no additional behavioral insights.

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 of 11 words, no filler, front-loaded with key information. Highly concise and 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 paginated historical data tool with good annotations and schema coverage, the description is nearly complete. It lacks details on return value format but is acceptable given the low complexity and presence of sibling tools for comparison.

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% coverage with descriptions for both parameters (page and limit). The tool description adds no extra meaning beyond the schema. Baseline of 3 is correct as schema already documents the parameters adequately.

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 'Historical net assets data for Ethereum-based Exchange-Traded Funds (ETFs)'. This uses a specific verb-resource combination ('get historical net assets data') and distinguishes from sibling tools like getCoinglassEthereumEtfList (which likely lists ETFs) and getCoinglassBitcoinETFNetAssetsHistory (for Bitcoin).

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. The description does not mention any contexts where it should or should not be used, nor does it reference sibling tools or provide when-not scenarios.

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

getCoinglassExchangeAssetsCoinglass: getCoinglassExchangeAssetsA
Read-onlyIdempotent

Provides asset holdings data for exchange wallets, including address, balance, USD value, and price info

ParametersJSON Schema
NameRequiredDescriptionDefault
exchangeYesThe exchange of the cryptocurrency. example binance
pageNoPage number
limitNoNumber of items per page

TDQS

A3.5/5.0
Behavior3/5

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

Annotations (readOnlyHint, destructiveHint) already indicate safety. The description adds context about returned data fields but does not disclose pagination behavior or potential rate limits. Given annotations, this is adequate but not enriched.

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 concise sentence efficiently communicates purpose and key data fields. No redundant or irrelevant 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?

Description mentions returned fields but no output schema exists. It does not explain pagination or how to handle large results. Given multiple sibling tools, more details on uniqueness 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 covers all parameters with descriptions (exchange, page, limit). The description does not add further meaning beyond what schema provides, so baseline 3 applies.

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

Purpose5/5

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

The description clearly states the tool provides asset holdings data for exchange wallets, listing specific fields (address, balance, USD value, price info). It distinguishes from siblings by focusing on exchange wallet assets, and the required 'exchange' parameter clarifies the scope.

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 like getCoinglassExchangeBalanceList. It does not specify prerequisites, limitations, or appropriate contexts beyond the implied use case.

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

getCoinglassExchangeBalanceListCoinglass: getCoinglassExchangeBalanceListB
Read-onlyIdempotent

Provides a list of exchange balances for a given symbol

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe symbol of the cryptocurrency
pageNoPage number
limitNoNumber of items per page

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already indicate read-only, non-destructive, idempotent, and open-world behavior. Description aligns with these, but adds no additional behavioral context beyond what annotations provide. 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.

Conciseness4/5

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

Very concise single sentence, front-loaded with the action. No wasted words, but could be expanded slightly to improve clarity without losing efficiency.

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?

Despite 100% schema coverage and annotations, the description lacks details about the output structure (e.g., what fields are in the list). As a list tool without an output schema, description should compensate but does not.

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 three parameters (symbol, page, limit) are described. The description does not add extra meaning or usage details 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.

Purpose4/5

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

Description clearly states it provides a list of exchange balances for a given symbol, which is a specific verb+resource. It distinguishes from sibling tools like getCoinglassExchangeAssets by focusing on balances for a symbol, but could be more precise about what 'exchange balances' entails.

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. Given many similar Coinglass tools, the description should specify context or mention when to prefer this over others like getCoinglassExchangeAssets or getCoinglassBitcoinEtfList.

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

getCoinglassFutureBasisCoinglass: getCoinglassFutureBasisB
Read-onlyIdempotent

Provides historical futures basis data, including open and close basis rates and annualized percentage changes

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe symbol of the cryptocurrency
exchangeYesThe exchange of the cryptocurrency
intervalYesThe interval of the cryptocurrency
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the description's mention of 'historical' adds context but does not reveal additional behavioral traits like pagination behavior or data freshness. 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.

Conciseness4/5

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

The description is a single clear sentence that conveys the core purpose efficiently. It could be slightly more structured but is not verbose.

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 should clarify return structure. It mentions included data fields but does not explain pagination or ordering. The tool is straightforward but leaves some gaps for an agent.

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

Parameters3/5

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

Schema coverage is 100% with each parameter described. The description adds minimal extra meaning beyond the schema, only hinting at the output fields. Baseline of 3 is appropriate given high schema 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?

The description clearly states the tool provides historical futures basis data with open/close rates and annualized changes, distinguishing it from other Coinglass tools that focus on ETFs, options, or whale data.

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

Usage Guidelines2/5

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

No explicit when-to-use or when-not-to-use guidance is given. The description does not mention alternatives or context for choosing this tool over siblings like getCoinglassOpenInterestHistory or getCoinglassPremiumIndex.

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

getCoinglassFuturesWhaleIndexCoinglass: getCoinglassFuturesWhaleIndexC
Read-onlyIdempotent

Provides a list of futures whale index data

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already provide readOnlyHint=true, destructiveHint=false, idempotentHint=true, openWorldHint=true. The description adds no behavioral disclosure beyond 'provides a list', missing details like pagination behavior, data recency, or rate limits. Minimal added value.

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 short sentence, no fluff. It is efficient but lacks structure (e.g., no bullet points or details). Still, it earns a high score for conciseness.

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?

No output schema is provided, and the description is very brief. Agents lack context on what the data includes (e.g., fields, time ranges). Given the open world hint, some incompleteness is tolerable, but more detail 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 coverage is 100%, and the parameters 'page' and 'limit' are described in the schema. The description does not add any additional meaning or context beyond what is already in the schema, so 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 'Provides a list of futures whale index data' clearly states the verb ('provides') and resource ('futures whale index data'). However, among many sibling Coinglass tools (e.g., getCoinglassOpenInterestHistory, getCoinglassBitcoinEtfList), it does not differentiate what makes this whale index data unique.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives, nor does it mention context or prerequisites. Agents have no help deciding between this and other Coinglass data tools.

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

getCoinglassGrayscaleHoldingsCoinglass: getCoinglassGrayscaleHoldingsB
Read-onlyIdempotent

Provides a list of holdings managed by Grayscale Investments

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.3/5.0
Behavior2/5

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

The annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true, and openWorldHint=true, indicating a safe read-only operation. The description adds no additional behavioral traits beyond what the annotations provideโ€”e.g., no mention of data freshness limits, pagination behavior, or any 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?

The description is a single concise sentence that wastes no words. It is front-loaded and to the point, earning 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?

The tool has no output schema, so the description would ideally describe what the output contains (e.g., list of holdings with fields like ticker, amount, etc.). It does not, but the annotations are rich and the parameters are simple. The description is adequate but incomplete for an agent to fully understand the tool's response.

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 2 parameters (page, limit) with descriptions covering 100% of parameters. The description does not add any extra meaning beyond the schema, but the schema is sufficient. Baseline 3 is appropriate given full 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 it provides a list of holdings managed by Grayscale Investments. It uses a specific verb ('provides a list') and specific resource ('holdings managed by Grayscale Investments'), distinguishing it from sibling tools like getCoinglassBitcoinEtfList or getCoinglassExchangeAssets.

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

Usage Guidelines2/5

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

The description offers no guidance on when to use this tool versus alternatives. There is no mention of context, prerequisites, or scenarios where another tool would be more appropriate. The sibling list includes many similar Coinglass tools, but no differentiation is provided.

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

getCoinglassHyperliquidWhaleAlertCoinglass: getCoinglassHyperliquidWhaleAlertA
Read-onlyIdempotent

Provides real-time whale alerts on Hyperliquid, highlighting positions with notional value over $1M

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already cover read-only and idempotent behavior. Description adds real-time aspect but does not disclose pagination limits, data freshness, or response format.

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, front-loaded with purpose, no redundant 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 tool with no output schema, description covers core functionality and threshold. Could mention pagination limits or update frequency for 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% with descriptions for both parameters. Description does not add meaning beyond schema, 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?

Description clearly states it provides real-time whale alerts on Hyperliquid with a specific threshold (>$1M), distinguishing it from sibling tools like getCoinglassHyperliquidWhalePosition and getCoinglassFuturesWhaleIndex.

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?

Implies usage for tracking large positions but lacks explicit when-to-use vs alternatives or what not to use it for. No guidance on context or exclusions.

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

getCoinglassHyperliquidWhalePositionCoinglass: getCoinglassHyperliquidWhalePositionB
Read-onlyIdempotent

Provides real-time whale position data on Hyperliquid

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.2/5.0
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, covering safety and idempotency. The description adds 'real-time,' but does not disclose pagination limits, data freshness boundaries, or how 'whale position' is defined. With strong annotation coverage, the description adds minimal behavioral context beyond 'real-time'.

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?

Single sentence is concise and front-loaded with the core action. However, it is somewhat vague and could elaborate on the tool's value in the same space.

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's simplicity (2 optional params, no output schema, clear annotations), the description is adequate but lacks context on what 'whale position data' entails (e.g., whether it returns tables, charts, or alerts). Could mention data source or usage scenarios.

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 both parameters (page, limit) with clear descriptions, achieving 100% coverage. The description adds no extra meaning about parameters, so baseline 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 it provides 'real-time whale position data on Hyperliquid,' specifying the resource (whale position data) and platform (Hyperliquid). It distinguishes from siblings like getCoinglassHyperliquidWhaleAlert, though could be more specific about what constitutes a whale position.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as getCoinglassHyperliquidWhaleAlert or getCoinglassFuturesWhaleIndex. There is no mention of context, prerequisites, or exclusions.

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

getCoinglassOnChainTransfersCoinglass: getCoinglassOnChainTransfersB
Read-onlyIdempotent

Provides on-chain transfer records (ERC-20) for exchanges

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

B3.1/5.0
Behavior2/5

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

Annotations already indicate read-only, idempotent, non-destructive behavior. The description adds only ERC-20 and exchange scope, omitting details about return format, pagination, or data freshness.

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?

One concise sentence with no redundant words. Could include more detail without sacrificing efficiency.

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?

Despite annotations covering safety, the description lacks information on the content of transfer records (e.g., amounts, addresses). No output schema to compensate, leaving agents with 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?

Input schema covers both parameters with descriptions (page, limit). The tool description adds no additional meaning, but schema coverage is 100%, meeting 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 clearly states the verb ('Provides'), resource ('on-chain transfer records'), and scope ('ERC-20 for exchanges'), distinguishing it from sibling tools.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives, such as other Coinglass tools. No when-not-to-use or explicit differentiation.

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

getCoinglassOpenInterestHistoryCoinglass: getCoinglassOpenInterestHistoryC
Read-onlyIdempotent

Provides historical open interest data for options across different exchanges

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe symbol of the cryptocurrency. example: BTC
pageNoPage number
limitNoNumber of items per page

TDQS

C2.9/5.0
Behavior2/5

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

Annotations already declare readOnlyHint=true, but the description adds no extra behavioral context such as data freshness, pagination behavior, or rate limits. It does not go 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 concise sentence that front-loads the key information. No unnecessary words.

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?

Despite a simple tool with 3 parameters and no output schema, the description lacks details on return format, pagination behavior, or how results are ordered. It does not fully compensate for the missing output schema.

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

Parameters3/5

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

The input schema has 100% description coverage, so the description adds no additional meaning beyond the schema. The tool name and description imply the symbol parameter is used for filtering, but no extra context is given.

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

Purpose4/5

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

The description clearly states it provides 'historical open interest data for options across different exchanges', using a specific verb and resource. It distinguishes itself from other Coinglass tools that focus on different metrics like ETF assets or options info.

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. Among many Coinglass tools, the description does not clarify scenarios where this particular open interest history is preferred over related tools like getCoinglassOptionsInfo.

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

getCoinglassOptionsInfoCoinglass: getCoinglassOptionsInfoB
Read-onlyIdempotent

Provides detailed information about open interest and trading volume for options across exchanges

ParametersJSON Schema
NameRequiredDescriptionDefault
symbolYesThe symbol of the cryptocurrency. example: BTC
pageNoPage number
limitNoNumber of items per page

TDQS

B3.4/5.0
Behavior2/5

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

Annotations already declare readOnlyHint, destructiveHint, and idempotentHint, but the description adds no behavioral context beyond that, such as rate limits, authentication, or error handling.

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 of 14 words that front-loads the purpose, with no unnecessary 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 data retrieval tool with good annotations and schema, the description covers core functionality. Minor missing context about output format but not critical given low 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% with clear descriptions for all three parameters, so the description adds no extra meaning. 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 provides detailed open interest and trading volume for options across exchanges, which is specific and distinguishes it from siblings like futures open interest or ETF tools.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives like getCoinglassOpenInterestHistory or getCoinglassBitcoinEtfList, nor any when-not-to-use conditions.

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

getCoinglassPremiumIndexCoinglass: getCoinglassPremiumIndexA
Read-onlyIdempotent

Provides the Coinbase Bitcoin Premium Index, indicating price difference between Coinbase Pro and Binance

ParametersJSON Schema
NameRequiredDescriptionDefault
pageNoPage number (starts from 1)
limitNoNumber of items per page

TDQS

A3.7/5.0
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 agent knows it's safe. The description adds no behavioral traits beyond what annotations provide, but it does not contradict them. A 3 is appropriate as the description adds minimal 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 a single, focused sentence that conveys the tool's purpose without superfluous words. It is front-loaded and efficient.

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 (2 optional parameters, no output schema, annotations covering behavior), the description adequately explains what the tool returns. No additional details are necessary 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 coverage is 100% with clear descriptions for page and limit parameters. The description does not add any additional meaning beyond the schema, so baseline 3 applies.

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

Purpose5/5

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

The description clearly states it provides the Coinbase Bitcoin Premium Index, which is a specific resource that distinguishes it from sibling Coinglass tools like getCoinglassBitcoinEtfList or getCoinglassFutureBasis. The verb 'Provides' is appropriate for a read operation.

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 or when not to use it. There is no mention of prerequisites, context, or exclusions, leaving the agent without decision-making support.

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

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').

TDQS

A4.3/5.0
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

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').

TDQS

A4.3/5.0
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

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')

TDQS

A4.1/5.0
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

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')

TDQS

A3.9/5.0
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

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'

TDQS

A4/5.0
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

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

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

TDQS

A4/5.0
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

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').

TDQS

A4/5.0
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

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
bitcoinAddressYesBitcoin address whose inscriptions to fetch.
pageNo1-indexed page number for paginating large inscription sets. Omit for the first page.

TDQS

A4.2/5.0
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

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').

TDQS

A4.2/5.0
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

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.

TDQS

A4.2/5.0
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

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

TDQS

A3.7/5.0
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

Emblem ecosystem trading leaderboard

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

TDQS

B3.4/5.0
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

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')

TDQS

A4.2/5.0
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

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.

TDQS

A4.4/5.0
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

Get detailed info for a specific Polymarket event by slug

ParametersJSON Schema
NameRequiredDescriptionDefault
slugYesEvent slug (from event.slug)

TDQS

A4/5.0
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.

getPolyMarketEventspolymarket: getPolyMarketEventsC
Read-onlyIdempotent

Get Polymarket events list. Returns compacted data optimized for efficiency.

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

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already indicate read-only and idempotent behavior. The description adds 'Returns compacted data optimized for efficiency,' which provides some behavioral context beyond annotations. However, it does not disclose pagination or other traits like sorting defaults.

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 very short: two sentences. The first sentence states the purpose clearly; the second adds minor efficiency info. It is concise but could be more structured with additional details without becoming verbose.

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 6 parameters and no output schema, the description is incomplete. It does not explain pagination (limit/offset), sorting (order/ascending), filtering (tag_id, featured), or when to use sibling tools. The 'compacted' note is vague.

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 limit and tag_id have descriptions). The description does not explain any parameters, failing to compensate for low schema coverage. Users must infer meaning from parameter names and defaults.

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 returns a list of Polymarket events, which is a specific verb and resource. However, it does not explicitly differentiate from sibling tools like getPolyMarketEvent (single event) or getPolyMarketEventsByTag (filtered by tag), though the name implies it.

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

Usage Guidelines2/5

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

No guidance on when to use this tool versus alternatives such as getPolyMarketEventsByTag or getPolyMarketEvent. The description lacks context about when it is appropriate 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.

getPolyMarketEventsByTagpolymarket: getPolyMarketEventsByTagB
Read-onlyIdempotent

Get Polymarket events filtered by tag/category

ParametersJSON Schema
NameRequiredDescriptionDefault
tagIdYesTag ID from getPolyMarketTags
limitNo

TDQS

B3.2/5.0
Behavior2/5

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

Annotations already provide safety info (readOnlyHint, etc.), but the description adds little behavioral context. It does not describe return format, pagination, ordering, or any side effects, beyond the fact that it filters by tag.

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 sentence with 6 words, highly concise. However, it may be too sparse for effective agent selection, but it is not verbose.

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's 2 parameters, no output schema, and many sibling tools, the description is insufficient. It does not explain what 'events' contain, how the tag filter works, or how it differs from searchPolyMarketEvents. Annotations cover safety but not functional completeness.

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 coverage is only 50% (tagId described, limit not). The description does not explain the limit parameter or add any meaning beyond what the schema provides. The tagId description from schema is referenced but not elaborated.

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', the resource 'Polymarket events', and the filter method 'by tag/category'. This distinguishes it from sibling tools like getPolyMarketEvents (unfiltered) and getPolyMarketTags (tags list).

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

Usage Guidelines3/5

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

The description implies usage when filtering by tag, but does not explicitly state when to use this tool versus alternatives like searchPolyMarketEvents. It lacks guidance on prerequisites (e.g., need tag IDs from getPolyMarketTags) and when not to use it.

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

getPolyMarketTagspolymarket: getPolyMarketTagsA
Read-onlyIdempotent

Get Polymarket categories/tags for filtering events

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
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, so the tool is clearly a safe, idempotent read. The description adds no additional behavioral context such as rate limits or data freshness, which is acceptable given 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?

A single, short sentence that is front-loaded and contains no extraneous words. Every part of the description is necessary and clear.

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, parameterless tool that returns a list of tags, the description provides the essential information. It could optionally describe the return format or example tags, but not required for basic completeness.

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

Parameters4/5

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

The tool has zero parameters and schema coverage is 100%, so the description need not add parameter details. The description implies no parameters, which is accurate and 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?

Description clearly states the verb 'Get' and resource 'Polymarket categories/tags' with the purpose 'for filtering events'. It distinguishes itself from sibling tools like getPolyMarketEventsByTag by focusing on the tags themselves.

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 retrieving tags to filter events, but does not explicitly state when to use this tool versus alternatives like getPolyMarketEventsByTag or getPolyMarketEvents. No exclusions or prerequisites mentioned.

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

Get user's Polymarket positions

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

TDQS

C2.4/5.0
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

Query PumpFun tokens (new, graduating, graduated)

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

TDQS

C2.9/5.0
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 covered. The description adds no additional behavioral context such as pagination, result ordering, data freshness, or filtering side effects. It is consistent with annotations, so no contradiction, but it contributes little beyond 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 a single front-loaded sentence with no filler or repetition. It is concise and to the point. However, it is somewhat under-sized relative to the tool's 25 parameters, which is why it does not earn a 5.

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 25 parameters, low schema coverage, and no output schema, the description is not complete enough. It never explains what the tool returns, how filters affect results, or what terms like 'graduating' mean precisely. An agent could make a minimal call with `type` alone, but would lack the context needed to use the full filter surface correctly.

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% and the description compensates very little. The parenthetical 'new, graduating, graduated' loosely clarifies the `type` enum, but it does not explain the many filter parameters (`volume_gte`, `holderCount_gte`, `insiderHoldPercent_gte`, etc.) or how they interact. The description adds marginal meaning 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 states a clear verb and resource: 'Query PumpFun tokens', and adds three categories (new, graduating, graduated) that map to the `type` enum. This is more specific than a bare resource name, though it does not explicitly distinguish this tool from sibling token-discovery 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?

The description provides no guidance on when to use this tool versus alternatives. Given many sibling tools for token discovery, trending tokens, and token searches, the agent receives no contextual signal about which scenario calls for getPumpFunTokens.

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

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.

TDQS

A4.1/5.0
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

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.

TDQS

A4.2/5.0
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

Get the user's Rune token balances.

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

TDQS

A3.5/5.0
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

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'.

TDQS

A3.8/5.0
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

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)

TDQS

A4.1/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault
bitcoinAddressYesBitcoin address whose rune activity to retrieve.
pageNo1-indexed page number for activity pagination.

TDQS

A4.2/5.0
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

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').

TDQS

A4.1/5.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

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.

TDQS

A4/5.0
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

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.

TDQS

A4.3/5.0
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

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.

TDQS

A4.2/5.0
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

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

TDQS

A4.3/5.0
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

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

TDQS

A4/5.0
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

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)

TDQS

A4.1/5.0
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

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)

TDQS

A4.1/5.0
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

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

TDQS

A4.1/5.0
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

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

TDQS

A4.3/5.0
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

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

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
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.

getUtxoRunesOrdiscan: getUtxoRunesA
Read-onlyIdempotent

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).

TDQS

A4.2/5.0
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

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

TDQS

A4.5/5.0
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

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').

TDQS

A3.9/5.0
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

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').

TDQS

A4.3/5.0
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

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

TDQS

A4.2/5.0
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

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.

TDQS

A4.4/5.0
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

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
fromTokenIdYesToken to swap from (0.0.000000 for HBAR)
toTokenIdYesToken to swap to
fromTokenDecimalsYesDecimals of from token
toTokenDecimalsYesDecimals of to token
amountNoAmount to swap (for exact input mode)
exactOutputAmountNoExact output amount (for exact output mode)
isExactOutputNoTrue for exact output mode

TDQS

A4.2/5.0
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

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').

TDQS

A3.8/5.0
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

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).

TDQS

A4.3/5.0
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

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).

TDQS

A4/5.0
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

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.

TDQS

A4/5.0
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

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
networkNoSpecific network to list positions for. If omitted, lists across all networks.
statusNoOptional: Filter by position status

TDQS

A3.8/5.0
Behavior3/5

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

Annotations already declare readOnlyHint and idempotentHint, so the description carries less burden. It explains the conditional listing behavior, which is already in schema descriptions. No additional behavioral traits (e.g., pagination, rate limits) 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?

Two short sentences, front-loaded with the core purpose. Every sentence adds value 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?

Given the tool's simplicity and rich annotations, the description covers the main behavior and filtering logic. However, no output schema is provided, and the description does not mention the return format, which 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 description coverage is 100%, so baseline is 3. The description adds no meaning beyond the schema; it repeats the network parameter behavior. No enrichment for the 'status' 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?

Description clearly states 'List conditional trade positions' and explains the conditional behavior based on network parameter. It also lists supported networks, making the tool's scope unambiguous. This differentiates it from siblings like 'getAllPositions' and 'findPositionById'.

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 explains when to use the network parameter but provides no explicit guidance on when to use this tool over siblings such as 'getAllPositions' or 'findPositionById'. Usage context is implied but not thoroughly directed.

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

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

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

TDQS

A3.7/5.0
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

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

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

TDQS

A3.8/5.0
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

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
token_addressYesToken contract address
date_fromYesStart date (YYYY-MM-DD)
date_toYesEnd date (YYYY-MM-DD)
per_pageNoResults per page

TDQS

A4/5.0
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

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

TDQS

A3.8/5.0
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

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)

TDQS

A3.8/5.0
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

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

TDQS

A4/5.0
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

Screen tokens by volume, smart money activity, and chain. Find trending tokens that smart money is trading.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainsYesChains to screen across
timeframeNoTimeframe (e.g. 24h, 7d)24h
smart_money_onlyNoFilter to show only smart money activity
per_pageNoResults per page

TDQS

A3.8/5.0
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

Profile a specific wallet โ€” trading activity, PnL, token trades over a date range.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain the wallet is on
wallet_addressYesWallet address to profile
date_fromYesStart date (YYYY-MM-DD)
date_toYesEnd date (YYYY-MM-DD)
per_pageNoResults per page

TDQS

A3.7/5.0
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

See which smart money wallets bought or sold a specific token in a date range.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainYesChain the token is on
token_addressYesToken contract address
date_fromYesStart date (YYYY-MM-DD)
date_toYesEnd date (YYYY-MM-DD)
label_typeNoTrader label filter (smart_money, all_traders)smart_money
per_pageNoResults per page

TDQS

A3.6/5.0
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

Get the cheapest (best) listings for an NFT collection. Use this for price discovery and finding deals.

ParametersJSON Schema
NameRequiredDescriptionDefault
collectionSlugYesCollection slug (e.g., 'pudgypenguins')
limitNoNumber of listings to return
nextNoPagination cursor for next page

TDQS

A4.3/5.0
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

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
collectionSlugYesCollection slug (e.g., 'boredapeyachtclub')
eventTypeNoFilter by event type (omit for all events)
limitNoNumber of events to return
nextNoPagination cursor for next page

TDQS

A3.9/5.0
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

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')

TDQS

A4/5.0
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

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
limitNoMaximum number of NFTs to return
nextNoPagination cursor for next page

TDQS

A4/5.0
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

Get active sell listings for an NFT on OpenSea

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdYesThe chain ID (1=Ethereum, 137=Polygon, 8453=Base)
contractAddressYesThe NFT contract address
tokenIdYesThe token ID of the NFT

TDQS

B3.4/5.0
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

Get buy offers for an NFT on OpenSea

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdYesThe chain ID (1=Ethereum, 137=Polygon, 8453=Base)
contractAddressYesThe NFT contract address
tokenIdYesThe token ID of the NFT

TDQS

A3.6/5.0
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

Find trending NFT collections by volume, market cap, or price changes. Use this for market research and discovering popular collections.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdNoChain ID (1=Ethereum, 137=Polygon, etc.)
orderByNoSort collections by this metricseven_day_volume
limitNoNumber of collections to return
nextNoPagination cursor for next page

TDQS

A3.5/5.0
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

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

TDQS

A4.5/5.0
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

Get swap quote for Polygon tokens. Uses Uniswap X or 0x. Use 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE for native MATIC.

ParametersJSON Schema
NameRequiredDescriptionDefault
fromTokenAddressYesToken address to swap from
toTokenAddressYesToken address to swap to
amountYesAmount to swap (human readable)

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false, idempotentHint=true. The description adds useful context about backend (Uniswap X or 0x) and the native MATIC address, but does not disclose potential estimate nature 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?

Two sentences with no unnecessary words. First sentence states core purpose, second provides critical detail about native token address. Efficient and front-loaded.

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?

No output schema exists, yet description does not explain the return format. It also lacks guidance on response fields or how to interpret the quote. For a tool among many swap quotes, this omission leaves the agent guessing.

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 baseline is 3. The description adds value by specifying the native MATIC address constant, aiding correct use of fromTokenAddress/toTokenAddress.

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 'Get swap quote for Polygon tokens,' which is a specific verb-resource pair. This distinguishes it from sibling swap quote tools for other networks like ethSwapQuote or baseSwapQuote.

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

Usage Guidelines2/5

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

No explicit guidance on when to use this tool versus alternatives. It does specify it is for Polygon tokens, but does not mention when to use e.g., ethSwapQuote or 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.

rareSatsForUTXOOrdiscan: rareSatsForUTXOA
Read-onlyIdempotent

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').

TDQS

A4/5.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

Check if token is a rug/scam. score_normalised: 0=safe, 100=risky.

ParametersJSON Schema
NameRequiredDescriptionDefault
tokenMintYesToken mint address

TDQS

A3.6/5.0
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

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)

TDQS

A4/5.0
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

Search for evm tokens on Birdeye. Supports multiple chains like eth, polygon, bsc, base, etc.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainIdYesChain ID to search tokens on
queryYesSearch query

TDQS

A3.5/5.0
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 no additional behavioral traits beyond that, but also doesn't 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, no extraneous information, front-loads the purpose effectively. Every sentence adds value.

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 2-param tool with no output schema, the description covers the basics but misses details like what fields are returned or search behavior (e.g., partial match). Additional context 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?

Schema coverage is 100% with both parameters described. The description adds the context of supporting multiple chains, aligning with chainId enum, but provides no extra semantics 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 for evm tokens on Birdeye' with specific verb and resource, and lists example chains distinguishing it from sibling tools like 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 alternatives like searchCryptoByName or birdeyeTrendingTokens. The description lacks explicit when-to-use or when-not-to-use context.

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

Search Polymarket events by keyword. Returns compacted results.

ParametersJSON Schema
NameRequiredDescriptionDefault
qYesSearch query string
pageNo
events_statusNoactive

TDQS

A3.6/5.0
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

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
queryNoFree-text query against SRC-20 ticker, creator notes, and metadata.
deployerNoFilter to SRC-20 tokens deployed by a specific Bitcoin address (26-62 chars).
sort_byNoSort field: 'deploy_timestamp' (newest deploys), 'holders' (most-held), 'percent_minted' (closest to fully minted).
sort_orderNoResult ordering: 'ASC' (ascending) or 'DESC' (descending).
pageNo1-indexed page number for paginating results (max 10000). Defaults to 5.
page_sizeNoItems per page (1-100). Defaults to API default.

TDQS

A4/5.0
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

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
queryNoFree-text query against stamp asset names, descriptions, and metadata.
creatorNoFilter to stamps issued by a specific Bitcoin/Counterparty creator address.
collection_idNoFilter to stamps belonging to a Stampchain collection ID.
cpidNoCounterparty asset ID (CPID), e.g. 'A12345...', identifying a specific stamp asset.
is_btc_stampNoIf true, only return canonical BTC Stamps; if false, exclude them.
is_cursedNoIf true, only return cursed stamps (out-of-spec issuances); if false, exclude them.
sort_orderNoResult ordering by stamp number: 'ASC' (oldest first) or 'DESC' (newest first).
pageNo1-indexed page number for paginating results.
page_sizeNoItems per page (1-100). Defaults to API default.
limitNoHard cap on total results returned. Use as an alternative to page_size for one-shot calls.

TDQS

A4.3/5.0
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

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.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A3.8/5.0
Behavior3/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, establishing this as a safe, read-only operation. The description adds that USD value is conditional on pricing availability, but does not disclose any behavioral traits beyond what annotations provide. 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 sentence that efficiently conveys the tool's purpose, scope, and output details. It front-loads the verb 'Return' and clearly lists the data fields, 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?

Given the tool has no parameters and no output schema, the description adequately explains what the tool returns (native SOL + SPL tokens with specific fields). It could mention that it uses the connected user wallet, but that is implied. Overall complete for a simple balance checking 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 zero parameters, so there is nothing to describe. Schema description coverage is 100% (trivially). Per guidelines, baseline for 0 parameters is 4, and the description does not need to compensate. It adds no unnecessary 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 the tool returns Solana wallet holdings including native SOL and all SPL tokens with specific fields (mint address, symbol, balance, decimals, USD value). It uses specific verbs ('Return') and resource ('user's Solana wallet holdings'), distinguishing it from sibling tools like solanaGetTokenPrices and solanaGetTokenPairPrice which focus on token prices rather than user 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?

The description provides no guidance on when to use this tool versus alternatives. It does not mention scenarios where it is appropriate or inappropriate, nor does it reference sibling tools like solanaGetTokenPairPrice for price-specific queries.

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

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.

TDQS

A4.2/5.0
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

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.

TDQS

A4/5.0
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

Get a token metadata and price info.

ParametersJSON Schema
NameRequiredDescriptionDefault
addressYesThe token address
networkYesThe network of the token

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already indicate readOnlyHint, idempotentHint, and openWorldHint, so the description only adds that it returns 'metadata and price info'. This adds marginal behavioral context beyond annotations. No side effects or limitations 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.

Conciseness4/5

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

The description is a single short sentence, which is concise and front-loaded. However, it could be slightly more informative without being overly verbose. It 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.

Completeness3/5

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

No output schema is provided, and the description does not explain return values. Given the simplicity of the inputs (2 required parameters with enums) and rich annotations, the description is adequate but could be more complete for a tool with many siblings.

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

Parameters3/5

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

Schema coverage is 100%, so baseline is 3. The description does not add any semantic meaning beyond the schema's 'address' and 'network' descriptions. It does not explain output format or any parameter nuances.

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 token metadata and price info, but it does not distinguish it from many sibling tools with similar purposes, such as 'getCryptoPrice' or 'solanaGetTokenPrices'. The verb 'Get' and resource 'token metadata and price info' are specific, but without differentiation, it scores a 4.

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 like 'getCryptoPrice' or 'birdeyeTradeData'. There is no mention of context or exclusions, leaving the agent without direction on tool selection.

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

Get the connected wallet and vault info across all networks

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4/5.0
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

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

TDQS

A4.2/5.0
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.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 130 tool updates
    • AddedbaseFindClankerTokens
    • AddedbaseGetBalances
    • AddedbaseSwapQuote
    • AddedbirdeyeTradeData
    • AddedbirdeyeTrendingTokens
    • AddedbscfindMemeCoinsViaFourMeme
    • AddedbscGetBalances
    • AddedbscSwapQuote
    • AddedcheckRuneUnlock
    • AddeddiscoverLaunchLabTokens
    • AddedemblemGetCollectionAssets
    • AddedemblemGetDepositAddress
    • AddedemblemListCollections
    • AddedemblemListMyVaults
    • AddedemblemResolveAsset
    • AddedethGetBalances
    • AddedethSwapQuote
    • AddedfindPositionById
    • AddedfindSolanaGems
    • AddedfindSolanaSwapToken
    • AddedfirecrawlExtract
    • AddedgetAlkaneAddressBalance
    • AddedgetAlkaneAddressUTXOs
    • AddedgetAlkaneInfo
    • AddedgetAllPositions
    • AddedgetBitcoinCollections
    • AddedgetBRC20Activity
    • AddedgetBRC20TokenInfo
    • AddedgetBTCBalances
    • AddedgetChangeNowSupportedCurrencies
    • AddedgetChangeNowSwapQuote
    • AddedgetCoinglassBitcoinEtfList
    • AddedgetCoinglassBitcoinETFNetAssetsHistory
    • AddedgetCoinglassBitfinexMarginData
    • AddedgetCoinglassBorrowInterestRate
    • AddedgetCoinglassCDRIIndex
    • AddedgetCoinglassCGDIIndex
    • AddedgetCoinglassEthereumEtfList
    • AddedgetCoinglassEthereumETFNetAssetsHistory
    • AddedgetCoinglassExchangeAssets
    • AddedgetCoinglassExchangeBalanceList
    • AddedgetCoinglassFutureBasis
    • AddedgetCoinglassFuturesWhaleIndex
    • AddedgetCoinglassGrayscaleHoldings
    • AddedgetCoinglassHyperliquidWhaleAlert
    • AddedgetCoinglassHyperliquidWhalePosition
    • AddedgetCoinglassOnChainTransfers
    • AddedgetCoinglassOpenInterestHistory
    • AddedgetCoinglassOptionsInfo
    • AddedgetCoinglassPremiumIndex
    • AddedgetCollectionInfo
    • AddedgetCollectionInscriptions
    • AddedgetCollectionMarketInfo
    • AddedgetCollectionVolume
    • AddedgetCryptoPrice
    • AddedgetInscriptionActivity
    • AddedgetInscriptionInfo
    • AddedgetInscriptionsByAddress
    • AddedgetInscriptionTraits
    • AddedgetLatestInscriptions
    • AddedgetLatestRunes
    • AddedgetLeaderboard
    • AddedgetMagicEdenRunePrice
    • AddedgetOwnedInscriptionIds
    • AddedgetPolyMarketEvent
    • AddedgetPolyMarketEvents
    • AddedgetPolyMarketEventsByTag
    • AddedgetPolyMarketTags
    • AddedgetPolyMarketUserPositions
    • AddedgetPumpFunTokens
    • AddedgetRareSats
    • AddedgetRecentStamps
    • AddedgetRuneBalances
    • AddedgetRuneInfo
    • AddedgetRuneMarketInfo
    • AddedgetRunesActivity
    • AddedgetSatRangesForUTXO
    • AddedgetSRC20Token
    • AddedgetStamp
    • AddedgetStampsByAddress
    • AddedgetTopBRC20ByMarketCap
    • AddedgetTopBRC20ByVolume
    • AddedgetTopCollectionsByFloor
    • AddedgetTopCollectionsByVolume
    • AddedgetTopRunesByMarketCap
    • AddedgetTopRunesByVolume
    • AddedgetTrendingCoins
    • AddedgetUtxoRunes
    • AddedgetXCPBalances
    • AddedhederaAccountIdToEvmAddress
    • AddedhederaContractIdToEvmAddress
    • AddedhederaFindMemeCoins
    • AddedhederaFindTokens
    • AddedhederaTokensSwapQuote
    • AddedinscriptionTransferActivity
    • AddedisFourMemeToken
    • AddedlistAlkanes
    • AddedlistBRC20Tokens
    • AddedlistPositions
    • Addednansen_defi_portfolio
    • Addednansen_perp_positions
    • Addednansen_pnl_leaderboard
    • Addednansen_smart_money_flows
    • Addednansen_smart_money_holdings
    • Addednansen_smart_money_trades
    • Addednansen_token_screener
    • Addednansen_wallet_profiler
    • Addednansen_who_bought_sold
    • AddedopenseaGetBestListings
    • AddedopenseaGetCollectionActivity
    • AddedopenseaGetCollectionStats
    • AddedopenseaGetMyNFTs
    • AddedopenseaGetNFTListings
    • AddedopenseaGetNFTOffers
    • AddedopenseaGetTrendingCollections
    • AddedpolygonGetBalances
    • AddedpolygonSwapQuote
    • AddedrareSatsForUTXO
    • Addedrugcheck
    • AddedsearchCryptoByName
    • AddedsearchEvmTokensBirdeye
    • AddedsearchPolyMarketEvents
    • AddedsearchSRC20Tokens
    • AddedsearchStamps
    • AddedsolanaBalances
    • AddedsolanaGetTokenPairPrice
    • AddedsolanaGetTokenPrices
    • AddedtokenMetadataInfo
    • Addedwallet
    • Addedwebsearch
  2. 130 tool updatesv1.1.0
    • RemovedbaseFindClankerTokens
    • RemovedbaseGetBalances
    • RemovedbaseSwapQuote
    • RemovedbirdeyeTradeData
    • RemovedbirdeyeTrendingTokens
    • RemovedbscfindMemeCoinsViaFourMeme
    • RemovedbscGetBalances
    • RemovedbscSwapQuote
    • RemovedcheckRuneUnlock
    • RemoveddiscoverLaunchLabTokens
    • RemovedemblemGetCollectionAssets
    • RemovedemblemGetDepositAddress
    • RemovedemblemListCollections
    • RemovedemblemListMyVaults
    • RemovedemblemResolveAsset
    • RemovedethGetBalances
    • RemovedethSwapQuote
    • RemovedfindPositionById
    • RemovedfindSolanaGems
    • RemovedfindSolanaSwapToken
    • RemovedfirecrawlExtract
    • RemovedgetAlkaneAddressBalance
    • RemovedgetAlkaneAddressUTXOs
    • RemovedgetAlkaneInfo
    • RemovedgetAllPositions
    • RemovedgetBitcoinCollections
    • RemovedgetBRC20Activity
    • RemovedgetBRC20TokenInfo
    • RemovedgetBTCBalances
    • RemovedgetChangeNowSupportedCurrencies
    • RemovedgetChangeNowSwapQuote
    • RemovedgetCoinglassBitcoinEtfList
    • RemovedgetCoinglassBitcoinETFNetAssetsHistory
    • RemovedgetCoinglassBitfinexMarginData
    • RemovedgetCoinglassBorrowInterestRate
    • RemovedgetCoinglassCDRIIndex
    • RemovedgetCoinglassCGDIIndex
    • RemovedgetCoinglassEthereumEtfList
    • RemovedgetCoinglassEthereumETFNetAssetsHistory
    • RemovedgetCoinglassExchangeAssets
    • RemovedgetCoinglassExchangeBalanceList
    • RemovedgetCoinglassFutureBasis
    • RemovedgetCoinglassFuturesWhaleIndex
    • RemovedgetCoinglassGrayscaleHoldings
    • RemovedgetCoinglassHyperliquidWhaleAlert
    • RemovedgetCoinglassHyperliquidWhalePosition
    • RemovedgetCoinglassOnChainTransfers
    • RemovedgetCoinglassOpenInterestHistory
    • RemovedgetCoinglassOptionsInfo
    • RemovedgetCoinglassPremiumIndex
    • RemovedgetCollectionInfo
    • RemovedgetCollectionInscriptions
    • RemovedgetCollectionMarketInfo
    • RemovedgetCollectionVolume
    • RemovedgetCryptoPrice
    • RemovedgetInscriptionActivity
    • RemovedgetInscriptionInfo
    • RemovedgetInscriptionsByAddress
    • RemovedgetInscriptionTraits
    • RemovedgetLatestInscriptions
    • RemovedgetLatestRunes
    • RemovedgetLeaderboard
    • RemovedgetMagicEdenRunePrice
    • RemovedgetOwnedInscriptionIds
    • RemovedgetPolyMarketEvent
    • RemovedgetPolyMarketEvents
    • RemovedgetPolyMarketEventsByTag
    • RemovedgetPolyMarketTags
    • RemovedgetPolyMarketUserPositions
    • RemovedgetPumpFunTokens
    • RemovedgetRareSats
    • RemovedgetRecentStamps
    • RemovedgetRuneBalances
    • RemovedgetRuneInfo
    • RemovedgetRuneMarketInfo
    • RemovedgetRunesActivity
    • RemovedgetSatRangesForUTXO
    • RemovedgetSRC20Token
    • RemovedgetStamp
    • RemovedgetStampsByAddress
    • RemovedgetTopBRC20ByMarketCap
    • RemovedgetTopBRC20ByVolume
    • RemovedgetTopCollectionsByFloor
    • RemovedgetTopCollectionsByVolume
    • RemovedgetTopRunesByMarketCap
    • RemovedgetTopRunesByVolume
    • RemovedgetTrendingCoins
    • RemovedgetUtxoRunes
    • RemovedgetXCPBalances
    • RemovedhederaAccountIdToEvmAddress
    • RemovedhederaContractIdToEvmAddress
    • RemovedhederaFindMemeCoins
    • RemovedhederaFindTokens
    • RemovedhederaTokensSwapQuote
    • RemovedinscriptionTransferActivity
    • RemovedisFourMemeToken
    • RemovedlistAlkanes
    • RemovedlistBRC20Tokens
    • RemovedlistPositions
    • Removednansen_defi_portfolio
    • Removednansen_perp_positions
    • Removednansen_pnl_leaderboard
    • Removednansen_smart_money_flows
    • Removednansen_smart_money_holdings
    • Removednansen_smart_money_trades
    • Removednansen_token_screener
    • Removednansen_wallet_profiler
    • Removednansen_who_bought_sold
    • RemovedopenseaGetBestListings
    • RemovedopenseaGetCollectionActivity
    • RemovedopenseaGetCollectionStats
    • RemovedopenseaGetMyNFTs
    • RemovedopenseaGetNFTListings
    • RemovedopenseaGetNFTOffers
    • RemovedopenseaGetTrendingCollections
    • RemovedpolygonGetBalances
    • RemovedpolygonSwapQuote
    • RemovedrareSatsForUTXO
    • Removedrugcheck
    • RemovedsearchCryptoByName
    • RemovedsearchEvmTokensBirdeye
    • RemovedsearchPolyMarketEvents
    • RemovedsearchSRC20Tokens
    • RemovedsearchStamps
    • RemovedsolanaBalances
    • RemovedsolanaGetTokenPairPrice
    • RemovedsolanaGetTokenPrices
    • RemovedtokenMetadataInfo
    • Removedwallet
    • Removedwebsearch
  3. 130 tool updatesv1.0.0
    • First observedbaseFindClankerTokens
    • First observedbaseGetBalances
    • First observedbaseSwapQuote
    • First observedbirdeyeTradeData
    • First observedbirdeyeTrendingTokens
    • First observedbscfindMemeCoinsViaFourMeme
    • First observedbscGetBalances
    • First observedbscSwapQuote
    • First observedcheckRuneUnlock
    • First observeddiscoverLaunchLabTokens
    • First observedemblemGetCollectionAssets
    • First observedemblemGetDepositAddress
    • First observedemblemListCollections
    • First observedemblemListMyVaults
    • First observedemblemResolveAsset
    • First observedethGetBalances
    • First observedethSwapQuote
    • First observedfindPositionById
    • First observedfindSolanaGems
    • First observedfindSolanaSwapToken
    • First observedfirecrawlExtract
    • First observedgetAlkaneAddressBalance
    • First observedgetAlkaneAddressUTXOs
    • First observedgetAlkaneInfo
    • First observedgetAllPositions
    • First observedgetBitcoinCollections
    • First observedgetBRC20Activity
    • First observedgetBRC20TokenInfo
    • First observedgetBTCBalances
    • First observedgetChangeNowSupportedCurrencies
    • First observedgetChangeNowSwapQuote
    • First observedgetCoinglassBitcoinEtfList
    • First observedgetCoinglassBitcoinETFNetAssetsHistory
    • First observedgetCoinglassBitfinexMarginData
    • First observedgetCoinglassBorrowInterestRate
    • First observedgetCoinglassCDRIIndex
    • First observedgetCoinglassCGDIIndex
    • First observedgetCoinglassEthereumEtfList
    • First observedgetCoinglassEthereumETFNetAssetsHistory
    • First observedgetCoinglassExchangeAssets
    • First observedgetCoinglassExchangeBalanceList
    • First observedgetCoinglassFutureBasis
    • First observedgetCoinglassFuturesWhaleIndex
    • First observedgetCoinglassGrayscaleHoldings
    • First observedgetCoinglassHyperliquidWhaleAlert
    • First observedgetCoinglassHyperliquidWhalePosition
    • First observedgetCoinglassOnChainTransfers
    • First observedgetCoinglassOpenInterestHistory
    • First observedgetCoinglassOptionsInfo
    • First observedgetCoinglassPremiumIndex
    • First observedgetCollectionInfo
    • First observedgetCollectionInscriptions
    • First observedgetCollectionMarketInfo
    • First observedgetCollectionVolume
    • First observedgetCryptoPrice
    • First observedgetInscriptionActivity
    • First observedgetInscriptionInfo
    • First observedgetInscriptionsByAddress
    • First observedgetInscriptionTraits
    • First observedgetLatestInscriptions
    • First observedgetLatestRunes
    • First observedgetLeaderboard
    • First observedgetMagicEdenRunePrice
    • First observedgetOwnedInscriptionIds
    • First observedgetPolyMarketEvent
    • First observedgetPolyMarketEvents
    • First observedgetPolyMarketEventsByTag
    • First observedgetPolyMarketTags
    • First observedgetPolyMarketUserPositions
    • First observedgetPumpFunTokens
    • First observedgetRareSats
    • First observedgetRecentStamps
    • First observedgetRuneBalances
    • First observedgetRuneInfo
    • First observedgetRuneMarketInfo
    • First observedgetRunesActivity
    • First observedgetSatRangesForUTXO
    • First observedgetSRC20Token
    • First observedgetStamp
    • First observedgetStampsByAddress
    • First observedgetTopBRC20ByMarketCap
    • First observedgetTopBRC20ByVolume
    • First observedgetTopCollectionsByFloor
    • First observedgetTopCollectionsByVolume
    • First observedgetTopRunesByMarketCap
    • First observedgetTopRunesByVolume
    • First observedgetTrendingCoins
    • First observedgetUtxoRunes
    • First observedgetXCPBalances
    • First observedhederaAccountIdToEvmAddress
    • First observedhederaContractIdToEvmAddress
    • First observedhederaFindMemeCoins
    • First observedhederaFindTokens
    • First observedhederaTokensSwapQuote
    • First observedinscriptionTransferActivity
    • First observedisFourMemeToken
    • First observedlistAlkanes
    • First observedlistBRC20Tokens
    • First observedlistPositions
    • First observednansen_defi_portfolio
    • First observednansen_perp_positions
    • First observednansen_pnl_leaderboard
    • First observednansen_smart_money_flows
    • First observednansen_smart_money_holdings
    • First observednansen_smart_money_trades
    • First observednansen_token_screener
    • First observednansen_wallet_profiler
    • First observednansen_who_bought_sold
    • First observedopenseaGetBestListings
    • First observedopenseaGetCollectionActivity
    • First observedopenseaGetCollectionStats
    • First observedopenseaGetMyNFTs
    • First observedopenseaGetNFTListings
    • First observedopenseaGetNFTOffers
    • First observedopenseaGetTrendingCollections
    • First observedpolygonGetBalances
    • First observedpolygonSwapQuote
    • First observedrareSatsForUTXO
    • First observedrugcheck
    • First observedsearchCryptoByName
    • First observedsearchEvmTokensBirdeye
    • First observedsearchPolyMarketEvents
    • First observedsearchSRC20Tokens
    • First observedsearchStamps
    • First observedsolanaBalances
    • First observedsolanaGetTokenPairPrice
    • First observedsolanaGetTokenPrices
    • First observedtokenMetadataInfo
    • First observedwallet
    • First observedwebsearch

TDQS

B3.1/5.0

Scored across 130 tools

Disambiguation4/5

While there are many tools covering similar domains (e.g., multiple getRune*, getCollection*, getInscription* tools), each has a clearly described distinct purpose. The detailed descriptions help an agent differentiate, but the sheer volume could still cause misselection.

Naming Consistency2/5

Naming conventions are highly inconsistent: mixed camelCase and snake_case (e.g., baseFindClankerTokens vs bscfindMemeCoinsViaFourMeme), varied verb prefixes (get, find, search, list, check, is), and some tools lack a verb entirely (e.g., solanaBalances, wallet, websearch). No consistent pattern.

Tool Count2/5

130 tools is far beyond the typical well-scoped range. While the server covers numerous blockchain domains, this count feels bloated and could be consolidated (e.g., merging similar chain-specific tools). It overwhelms the agent.

Completeness4/5

The server covers an impressively broad range: swaps, balances, token discovery, NFT marketplaces, derivatives, smart money analytics, Polymarket, Bitcoin protocols, etc. Gaps exist (e.g., no cross-chain transfer tool), but the surface is largely complete for its extensive scope.

Maintenance

ActivityInactive
ResponsivenessSlow

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A cryptocurrency price query service based on Model Context Protocol that provides tools for retrieving virtual currency prices, market trends, detailed information, and K-line data.
    3
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    A powerful toolkit that enables seamless interaction with EVM-compatible networks through natural language processing and AI assistance, allowing users to manage wallets, launch tokens, and interact with blockchain networks.
    21 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides AI agents with access to real-time cryptocurrency data from Coinbase's public API, including prices, market statistics, historical data, and technical analysis, plus simulated wallet transactions for educational purposes.
    3
    MIT
  • A
    license
    C
    quality
    C
    maintenance
    Enables AI agents to interact with any EVM-compatible blockchain through natural language, supporting token swaps, cross-chain bridges, staking, lending, governance, gas optimization, and portfolio tracking across networks like Ethereum, BSC, Polygon, Arbitrum, and more.
    100
    17 npm
    40
    -