Skip to main content
Glama

Server Quality Checklist

50%
Profile completionA complete profile improves this server's visibility in search results.
  • Latest release: v1.0.0

  • Disambiguation4/5

    Most tools have distinct purposes with clear boundaries, such as 'deploy-contract' vs. 'write-contract' for different contract interactions. However, 'call' and 'read-contract' could be slightly confusing as both involve read-only calls, though 'call' is more general and 'read-contract' is contract-specific. Overall, the descriptions help differentiate them, with only minor overlap.

    Naming Consistency3/5

    The naming follows a mostly consistent verb-noun pattern (e.g., 'get-account', 'send-transaction'), but there are deviations like 'call' (single verb), 'disconnect' (single verb), and 'wait-seconds' (verb-noun but unconventional). No camelCase mixing, but the pattern is not fully uniform, making it readable but not perfectly predictable.

    Tool Count2/5

    With 25 tools, the count feels heavy for an MCP server focused on blockchain interactions, suggesting potential over-scoping. While the domain is broad, many tools could be consolidated (e.g., multiple 'get-' functions) or are utility-based (e.g., 'wait-seconds'), making the set borderline excessive and less streamlined than ideal.

    Completeness5/5

    The tool set provides comprehensive coverage for blockchain and wallet operations, including account management, contract interactions (deploy, read, write), transaction handling, chain switching, and utilities like signing and waiting. No obvious gaps exist for the intended domain, offering a complete lifecycle from connection to execution.

  • Average 2.6/5 across 25 of 25 tools scored. Lowest: 1.6/5.

    See the Tool Scores section below for per-tool breakdowns.

    • No community issues in the last 6 months
    • 0 commits in the last 12 weeks
    • No stable releases found
    • No critical vulnerability alerts
    • No high-severity vulnerability alerts
    • No code scanning findings
    • CI status not available
  • Add a LICENSE file by following GitHub's guide. Once GitHub recognizes the license, the system will automatically detect it within a few hours.

    If the license does not appear after some time, you can manually trigger a new scan using the MCP server admin interface.

    MCP servers without a LICENSE cannot be installed.

  • This repository includes a README.md file.

  • No tool usage detected in the last 30 days. Usage tracking helps demonstrate server value.

    Tip: use the "Try in Browser" feature on the server page to seed initial usage.

  • Add a glama.json file to provide metadata about your server.

  • If you are the author, simply .

    If the server belongs to an organization, first add glama.json to the root of your repository:

    {
      "$schema": "https://glama.ai/mcp/schemas/server.json",
      "maintainers": [
        "your-github-username"
      ]
    }

    Then . Browse examples.

  • Add related servers to improve discoverability.

How to sync the server with GitHub?

Servers are automatically synced at least once per day, but you can also sync manually at any time to instantly update the server profile.

To manually sync the server, click the "Sync Server" button in the MCP server admin interface.

How is the quality score calculated?

The overall quality score combines two components: Tool Definition Quality (70%) and Server Coherence (30%).

Tool Definition Quality measures how well each tool describes itself to AI agents. Every tool is scored 1–5 across six dimensions: Purpose Clarity (25%), Usage Guidelines (20%), Behavioral Transparency (20%), Parameter Semantics (15%), Conciseness & Structure (10%), and Contextual Completeness (10%). The server-level definition quality score is calculated as 60% mean TDQS + 40% minimum TDQS, so a single poorly described tool pulls the score down.

Server Coherence evaluates how well the tools work together as a set, scoring four dimensions equally: Disambiguation (can agents tell tools apart?), Naming Consistency, Tool Count Appropriateness, and Completeness (are there gaps in the tool surface?).

Tiers are derived from the overall score: A (≥3.5), B (≥3.0), C (≥2.0), D (≥1.0), F (<1.0). B and above is considered passing.

Tool Scores

  • Behavior1/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. However, it only states the action ('Get') without any details about what the tool returns (e.g., format, structure), error conditions, rate limits, authentication needs, or side effects. For a tool with parameters and no output schema, this lack of behavioral context is a significant gap.

    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 extremely concise with just three words, which is efficient and front-loaded. However, this brevity borders on under-specification—it lacks necessary detail for a tool with parameters and no output schema. While there's no wasted text, the description fails to earn its place by omitting essential context.

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

    Completeness1/5

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

    Given the complexity (2 parameters, 0% schema coverage, no output schema, no annotations), the description is completely inadequate. It doesn't explain what token information is retrieved, how to use the parameters, what the return value looks like, or how this tool differs from siblings. For a tool in a blockchain context with multiple similar tools, this leaves too many unanswered questions.

    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?

    The schema description coverage is 0%, meaning parameters 'address' and 'chainId' are undocumented in the schema. The description adds no meaning beyond the schema—it doesn't explain what 'address' refers to (e.g., token contract address), what 'chainId' is used for, or how they interact. With two parameters and no compensation in the description, this leaves critical input semantics unclear.

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

    Purpose2/5

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

    The description 'Get the token information' is a tautology that essentially restates the tool name 'get-token'. While it indicates the tool retrieves token-related data, it lacks specificity about what 'token information' includes (e.g., metadata, balance, contract details) and doesn't distinguish this tool from sibling tools like 'get-token-balance' or 'get-native-currency-balance'. This creates ambiguity about the exact resource being accessed.

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

    Usage Guidelines1/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 prerequisites (e.g., needing a token address), differentiate from similar tools like 'get-token-balance' (which might retrieve balance rather than general information), or specify contexts where this tool is appropriate. Users are left to infer usage from the tool name alone.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. 'Sign messages' gives no information about whether this is a read or write operation, what permissions are required, whether it's destructive, what the output looks like, or any rate limits. This is inadequate for a tool that likely performs cryptographic operations.

    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 extremely concise at just two words, which could be appropriate if it were more informative. However, this brevity results in under-specification rather than efficient communication, though it's technically front-loaded with the core action.

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

    Completeness1/5

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

    Given the complexity of cryptographic signing operations, no annotations, no output schema, and 0% schema description coverage, the description is completely inadequate. It doesn't explain what signing algorithm is used, what keys are involved, what the output format is, or any error conditions.

    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?

    With 0% schema description coverage and 1 required parameter, the description provides no information about the 'message' parameter. It doesn't explain what format the message should be in, what encoding is expected, size limitations, or any constraints. The description fails to compensate for the complete lack of schema documentation.

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

    Purpose2/5

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

    The description 'Sign messages' is a tautology that restates the tool name 'sign-message' without adding specificity. It doesn't indicate what type of signing (cryptographic, blockchain, etc.), what resource is being signed, or how it differs from sibling tools like 'verify-message'.

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

    Usage Guidelines1/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. With sibling tools like 'verify-message' and 'send-transaction' that might be related, there's no indication of appropriate contexts, prerequisites, or exclusions for this signing operation.

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

  • Behavior1/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure but offers none. It doesn't indicate whether this is a read-only or destructive operation, what permissions are required, whether it changes global state, what happens on success/failure, or any side effects. 'Switch' implies mutation but without any safety or 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.

    Conciseness3/5

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

    The description is extremely concise (3 words) but this brevity comes at the cost of being under-specified rather than efficiently informative. While it's front-loaded with the core action, it lacks the necessary detail that would make it genuinely helpful. The structure is minimal but insufficient.

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

    Completeness1/5

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

    For a tool with 2 parameters (one complex nested object), no annotations, no output schema, and 0% schema description coverage, the description is completely inadequate. It doesn't explain what the tool does beyond the name, provides no parameter guidance, no behavioral context, and no usage instructions. This leaves the agent with insufficient information to use the tool 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?

    With 0% schema description coverage for both parameters (chainId and addEthereumChainParameter), the description provides zero information about what these parameters mean or how they should be used. The description doesn't mention parameters at all, leaving the agent to guess from the schema alone. This fails to compensate for the complete lack of schema documentation.

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

    Purpose2/5

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

    The description 'Switch the target chain' is essentially a tautology that restates the tool name 'switch-chain' without adding meaningful specificity. While it indicates a chain-switching action, it doesn't clarify what 'target chain' refers to, what system or context this switching affects, or how this differs from sibling tools like 'get-chain-id' or 'get-chains'.

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

    Usage Guidelines1/5

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

    The description provides absolutely no guidance on when to use this tool versus alternatives. There's no mention of prerequisites, appropriate contexts, or comparison to sibling tools like 'get-chain-id' (which retrieves current chain) or 'get-chains' (which might list available chains). The agent receives zero usage direction.

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

  • Behavior1/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It only states the action without detailing critical traits like required permissions, network effects, confirmation times, error handling, or whether it's destructive. This is inadequate for a transaction-sending tool with zero 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 extremely concise with a single sentence, 'Send transactions to networks', which is front-loaded and wastes no words. However, this brevity comes at the cost of under-specification, but for conciseness alone, it scores high.

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

    Completeness1/5

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

    Given the complexity of sending transactions, lack of annotations, 0% schema coverage, no output schema, and multiple sibling tools, the description is severely incomplete. It omits essential details like network targeting, transaction lifecycle, error scenarios, and return values, making it inadequate for safe and effective use.

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

    Parameters1/5

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

    Schema description coverage is 0%, meaning parameters 'to', 'value', and 'data' are undocumented in the schema. The description adds no information about these parameters, such as what 'to' represents (e.g., address format), what 'value' units are (e.g., wei), or what 'data' contains (e.g., encoded call data). It fails to compensate for the schema gap.

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

    Purpose2/5

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

    The description 'Send transactions to networks' restates the tool name 'send-transaction' with minimal elaboration, making it tautological. It specifies the action (send) and target (transactions to networks) but lacks specificity about what kind of transactions or which networks, failing to distinguish it from sibling tools like 'write-contract' or 'call'.

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

    Usage Guidelines1/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. With siblings like 'write-contract', 'call', and 'sign-message' that involve transaction-related operations, the description offers no context, prerequisites, or exclusions, leaving the agent without direction.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool retrieves a block number, implying a read-only operation, but doesn't disclose any behavioral traits such as error handling, performance characteristics, authentication needs, or rate limits. The description is minimal and adds little context beyond the basic action.

    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 sentence, which is appropriately sized for a simple tool. However, it contains a typo ('nunber'), and the structure is basic without front-loading critical information. It's concise but could be more polished and informative without adding unnecessary length.

    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 complexity (simple retrieval with 1 parameter), no annotations, no output schema, and low schema coverage, the description is incomplete. It doesn't explain what the tool returns (e.g., a numeric block number), how errors are handled, or provide enough context for reliable use. The minimal description leaves significant gaps in understanding the tool's behavior and output.

    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?

    The input schema has 1 parameter ('chainId') with 0% schema description coverage, meaning the schema provides no documentation. The description mentions 'of a chain', which loosely relates to 'chainId', but doesn't explain what 'chainId' is, its format, valid values, or how it affects the block number retrieval. The description adds minimal meaning beyond the schema, insufficient to compensate for the low coverage.

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

    Purpose2/5

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

    The description 'Get the block nunber of a chain' states a purpose but is vague and contains a typo ('nunber' instead of 'number'). It specifies a verb ('Get') and resource ('block number of a chain'), but doesn't clearly differentiate from sibling tools like 'get-block' (which might retrieve full block details) or 'get-chain-id' (which retrieves chain identifier). The purpose is somewhat clear but lacks specificity and distinction.

    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 prerequisites, context, or exclusions, and doesn't reference sibling tools like 'get-block' or 'get-chain-id' that might serve similar or overlapping purposes. Usage is implied only by the tool name, with no explicit instructions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool 'Get[s] the block information', implying a read-only operation, but doesn't specify if it requires authentication, has rate limits, returns historical or latest data, or what format the information is in (e.g., JSON object). For a tool with zero annotation coverage, this is a significant gap in transparency about its behavior and constraints.

    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 ('Get the block information of a chain'), which is appropriately concise and front-loaded with the core action. There's no wasted verbiage, making it easy to parse. However, it's overly terse, bordering on under-specified, which slightly reduces its effectiveness despite the efficient structure.

    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 complexity (blockchain data retrieval), lack of annotations, no output schema, and low parameter coverage, the description is incomplete. It doesn't explain what 'block information' includes (e.g., hash, timestamp, transactions), return format, error conditions, or dependencies (e.g., chain must be connected). For a tool in this context, more detail is needed to guide the agent 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?

    The input schema has 2 parameters (chainId, blockNumber) with 0% description coverage, meaning they are undocumented in the schema. The description doesn't mention any parameters, failing to compensate for this gap. It doesn't explain what 'chainId' refers to (e.g., network identifier) or 'blockNumber' (e.g., specific block or latest), leaving their semantics unclear. With low schema coverage, the description adds no value beyond the schema.

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

    Purpose3/5

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

    The description states the tool 'Get[s] the block information of a chain', which provides a basic verb+resource ('get' + 'block information'). However, it's vague about what 'block information' entails (e.g., header, transactions, state) and doesn't differentiate from siblings like 'get-block-number' (which might return just the number) or 'get-transaction' (which retrieves transaction details). The purpose is clear but lacks specificity.

    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. It doesn't mention prerequisites (e.g., needing a connected chain), exclusions (e.g., not for real-time data), or comparisons to siblings like 'get-block-number' (for just the number) or 'get-transaction' (for transaction details). The description offers no usage context, leaving the agent to infer based on the tool name alone.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It only states what the tool does ('Get the transactions'), without mentioning whether it's a read-only operation, what permissions are needed, how it handles multiple inputs, or what happens with invalid parameters. This leaves significant behavioral gaps for a tool that likely queries blockchain data.

    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, efficient sentence that gets straight to the point without unnecessary words. While it could be more informative, it's appropriately sized for what it communicates and doesn't waste space with redundant phrasing.

    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 blockchain transaction query tool with 2 parameters, no annotations, and no output schema, the description is inadequate. It doesn't explain return values, error conditions, or the relationship between hash and chainId parameters. Given the complexity of blockchain operations and lack of structured documentation, this leaves too many gaps for reliable tool 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?

    With 0% schema description coverage for 2 parameters, the description must compensate but only vaguely mentions 'hashes or chain identifiers'. It doesn't explain what format the hash should be (e.g., transaction hash, hex string), what the chainId represents, whether both parameters are required together, or provide examples. This adds minimal value beyond the bare schema.

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

    Purpose3/5

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

    The description states the tool's purpose as 'Get the transactions given hashes or chain identifiers', which is a clear verb+resource combination. However, it doesn't differentiate from sibling tools like 'get-transaction-receipt' or 'get-block', making it somewhat vague about its specific scope within the blockchain context.

    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 prerequisites, exclusions, or compare it to similar tools like 'get-transaction-receipt' or 'get-block', leaving the agent with no usage context beyond the basic purpose.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'write function' which hints at mutation, but fails to detail critical aspects like gas costs, transaction confirmation, error handling, or blockchain effects. This leaves significant gaps in understanding the tool's behavior and risks.

    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 with no wasted words, making it easy to parse. It's appropriately sized for a basic tool definition, though this conciseness comes at the cost of detail.

    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 complexity of blockchain interactions, no annotations, no output schema, and 0% schema coverage, the description is inadequate. It lacks information on return values, error cases, and operational context, making it incomplete for safe and effective use in this environment.

    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 but adds no parameter details. It doesn't explain what 'abi', 'address', 'functionName', or 'args' represent or how to format them (e.g., ABI as JSON string, address as hex). This results in poor semantic support for the 4 required parameters.

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

    Purpose3/5

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

    The description 'Execute a write function on a contract' states a verb ('execute') and resource ('contract'), but it's vague about what a 'write function' entails compared to siblings like 'read-contract' or 'send-transaction'. It doesn't specify that this modifies blockchain state or involves transactions, leaving the purpose somewhat ambiguous.

    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 'read-contract' (for read-only calls) or 'send-transaction' (for general transactions). The description implies usage for contract writes but doesn't clarify prerequisites, exclusions, or specific contexts, offering minimal practical direction.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions deployment but fails to describe critical behaviors like network effects (e.g., on-chain transaction, gas costs, irreversibility), error handling, or response format. This leaves significant gaps for a mutation tool with complex 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 a single, efficient sentence that directly states the tool's purpose with no wasted words. It is front-loaded and appropriately sized for the complexity, making it easy to parse quickly.

    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 complexity (contract deployment with 3 parameters), lack of annotations, and no output schema, the description is insufficient. It misses critical context such as deployment outcomes, error scenarios, network requirements, and how it differs from sibling tools, making it incomplete for safe and effective use.

    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?

    The schema description coverage is 0%, so the description must compensate by explaining parameters. It lists 'bytecode' and 'constructor arguments' but omits 'abi', and provides no details on formats, constraints, or examples. This adds minimal value beyond the schema's property names, failing to address the coverage gap adequately.

    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 action ('Deploy a contract') and the required inputs ('given bytecode, and constructor arguments'), distinguishing it from sibling tools like 'write-contract' or 'send-transaction'. However, it doesn't explicitly differentiate from 'write-contract' which might also involve contract interactions, leaving some ambiguity.

    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 'write-contract' or 'send-transaction', nor does it mention prerequisites such as network connectivity or account authorization. It simply states what the tool does without contextual usage information.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden but only states the basic action. It doesn't disclose behavioral traits such as whether this is a read-only operation, potential rate limits, error conditions, or what the output format might be (e.g., Ethereum address string).

    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 with no wasted words. It's appropriately sized and front-loaded, making it easy to parse quickly.

    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 complexity (3 parameters, 0% schema coverage, no annotations, no output schema), the description is incomplete. It doesn't provide enough context for the agent to understand how to use the tool effectively, missing details on parameters, behavior, and output.

    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 but adds no parameter information. It doesn't explain what 'name', 'chainId', or 'blockNumber' mean, their formats (e.g., ENS name string, numeric chain ID), or that 'name' is required while others are optional.

    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 verb ('Get') and resource ('ENS address for name'), making the purpose understandable. However, it doesn't differentiate from the sibling tool 'get-ens-name' which presumably does the reverse operation (get name for address), so it misses full sibling distinction.

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

    Usage Guidelines2/5

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

    No guidance is provided on when to use this tool versus alternatives. The description doesn't mention the sibling 'get-ens-name' or other related tools like 'get-account', leaving the agent without context for tool selection.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states what the tool does but doesn't cover critical aspects like whether it's a read-only operation, potential rate limits, error conditions, or what happens if no ENS name exists for the address. This is a significant gap for a tool with no 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 extremely concise at just one sentence with no wasted words. It's front-loaded with the core purpose and uses straightforward language. Every word earns its place, making it efficient despite its brevity.

    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 complexity of blockchain/ENS operations, three parameters with 0% schema coverage, no annotations, and no output schema, the description is inadequate. It doesn't explain what 'primary ENS name' means, how results are returned, or handle edge cases. The agent would struggle to use this tool correctly without additional context.

    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%, meaning none of the three parameters (address, chainId, blockNumber) are documented in the schema. The description only mentions 'address' without explaining its format or purpose, and completely omits chainId and blockNumber. It adds minimal value beyond what's implied by the tool name.

    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 verb 'Get' and the resource 'primary ENS name for address', making the purpose specific and understandable. However, it doesn't explicitly differentiate from sibling tools like 'get-ens-address' (which appears to do the reverse lookup), leaving room for potential confusion.

    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 'get-ens-address' or other address-related tools. It lacks context about prerequisites, typical use cases, or any exclusions, leaving the agent to infer usage from the tool name alone.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It states it's a read operation ('Get'), but doesn't describe what happens on invalid addresses/tokens, whether it requires network connectivity, rate limits, authentication needs, or what format the balance returns. For a tool with zero annotation coverage, this is insufficient 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 extremely concise at just 6 words, front-loading the core purpose without any wasted words. Every word contributes directly to understanding what the tool does. The structure is optimal for such a simple tool.

    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 2 required parameters with 0% schema coverage, no annotations, and no output schema, the description is incomplete. It doesn't explain what 'token' means in this context, what format the balance returns, error conditions, or dependencies. For a blockchain balance query tool, this leaves too many unanswered questions for effective agent use.

    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 undocumented parameters. It mentions 'address' and 'token' but provides no semantic details about what constitutes valid values (e.g., Ethereum address format, token contract address vs symbol), expected formats, or examples. The description adds minimal value beyond parameter names.

    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 action ('Get token balance') and target resource ('of an address'), making the purpose immediately understandable. It distinguishes from sibling tools like 'get-native-currency-balance' by specifying token balance rather than native currency. However, it doesn't explicitly mention what type of token or address context (e.g., blockchain, wallet), leaving some ambiguity.

    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 when to choose this over 'get-native-currency-balance' for native currency queries, or when to use 'get-account' for broader account information. There's no context about prerequisites, error conditions, or typical use cases.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden. It states the tool is 'read-only,' which implies no mutations, but lacks details on permissions, rate limits, error handling, or response format. This is insufficient for a tool with 4 parameters and no output schema.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with no wasted words. It's front-loaded with the core purpose, making it easy to understand quickly.

    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 4 parameters with 0% schema coverage, no annotations, no output schema, and complexity in blockchain interactions, the description is inadequate. It doesn't explain return values, error cases, or how parameters interact, leaving significant gaps for an AI agent to use the tool 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 0%, so the description must compensate. It mentions 'read-only function' and 'contract,' hinting at parameters like 'functionName' and 'address,' but doesn't explain what 'abi' or 'args' are, their formats, or how they relate to the contract call. This leaves key parameters undocumented.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Call a read-only function on a contract, and returning the response.' It specifies the verb ('call'), resource ('contract'), and scope ('read-only function'), though it doesn't explicitly distinguish it from sibling tools like 'call' or 'write-contract'.

    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 sibling tools like 'call' (which might handle general calls) or 'write-contract' (for write operations), nor does it specify prerequisites or contexts for usage.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool 'shows' a QR code, implying a read-only or display operation, but doesn't specify if this requires authentication, involves side effects (e.g., generating a new code), or details the output format (e.g., image data, URL). This leaves significant gaps for an agent to understand how to invoke it effectively.

    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 with no wasted words, making it easy to parse. It front-loads the key action and resource, though it could benefit from more detail given the context.

    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 complexity (a tool that likely generates or retrieves a QR code for blockchain connectivity), no annotations, no output schema, and low parameter coverage, the description is incomplete. It fails to explain what the tool returns (e.g., an image, a link), how it behaves, or how it fits with sibling tools, leaving the agent with inadequate information for reliable use.

    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?

    The input schema has 1 parameter with 0% description coverage, so the schema provides no semantic information. The description mentions 'for a given connect URI', which adds minimal meaning by indicating the parameter is a URI, but doesn't explain what a 'connect URI' is, its format, or where to obtain it. This insufficiently compensates for the low 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 action ('Show') and the resource ('connect QR code for a given connect URI'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get-connect-uri' or explain what a 'connect QR code' specifically is, preventing a perfect score.

    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 'get-connect-uri' or other blockchain-related tools in the sibling list. It lacks context about prerequisites, such as needing a valid URI from another source, or exclusions.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool waits and returns a receipt, but lacks details on timeout behavior, error handling, polling intervals, or what 'included on a block' entails (e.g., confirmation depth). For a tool that involves waiting and network interaction, this is a significant gap.

    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 core action and outcome. There's no wasted verbiage; every word contributes to understanding the tool's function. It's appropriately sized for its purpose.

    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 complexity (waiting for blockchain transactions), lack of annotations, no output schema, and incomplete parameter documentation, the description is insufficient. It doesn't cover behavioral aspects like timeouts or errors, return values, or parameter details, making it inadequate for safe and effective use.

    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?

    The input schema has 2 parameters with 0% description coverage, and the tool description adds no parameter semantics. It doesn't explain what 'hash' (transaction hash) or 'chainId' are, their formats, or why 'chainId' might be optional. With low schema coverage, the description fails to compensate, leaving parameters undocumented.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Waits for the transaction to be included on a block, and then returns the transaction receipt.' It specifies the verb ('waits'), resource ('transaction'), and outcome ('returns the transaction receipt'). However, it doesn't explicitly differentiate from sibling tools like 'get-transaction-receipt' or 'wait-seconds', which would require a 5.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention prerequisites (e.g., after sending a transaction), exclusions, or compare it to siblings like 'get-transaction-receipt' (which might fetch without waiting) or 'wait-seconds' (a generic delay). Usage is implied but not explicit.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. 'Get' implies a read-only operation, but it doesn't specify if this requires authentication, returns cached or live data, has rate limits, or what the output format might be. This is a significant gap for a tool with zero 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 extremely concise with just three words, front-loaded with the core action. There's no wasted language, making it efficient for quick understanding, though this brevity contributes to gaps in other dimensions.

    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 complexity of blockchain tools and the lack of annotations and output schema, the description is incomplete. It doesn't explain what 'current account' entails (e.g., address, balance, nonce) or the return values, leaving the agent with insufficient information to use the tool effectively in this context.

    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, and schema description coverage is 100%, so no parameter documentation is needed. The description doesn't add parameter semantics, but this is appropriate given the lack of inputs, warranting a baseline score above minimum viable.

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

    Purpose3/5

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

    The description 'Get current account' states a clear verb ('Get') and resource ('current account'), but it's vague about what 'current account' means in this blockchain context. It doesn't distinguish this tool from siblings like 'get-ens-address' or 'get-ens-name' which might also retrieve account-related information, leaving ambiguity about the specific type of account being retrieved.

    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. With siblings like 'get-ens-address' and 'get-ens-name' that might retrieve account details, there's no indication of whether this tool returns a wallet address, account metadata, or something else, nor any prerequisites or context for its use.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves balance information, implying a read-only operation, but doesn't specify if it requires network connectivity, has rate limits, returns data in a specific format (e.g., wei or ether), or handles errors. This leaves significant gaps in understanding how the tool behaves in practice.

    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, direct sentence with no unnecessary words, making it highly concise and front-loaded. Every word contributes to understanding the tool's purpose efficiently.

    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 complexity (a blockchain balance query with no output schema and no annotations), the description is incomplete. It doesn't explain what the output looks like (e.g., numeric balance, currency unit), error conditions, or dependencies like network state. This makes it inadequate for an AI agent to use the tool effectively without additional 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 has one parameter ('address') with 0% description coverage, meaning the schema provides no semantic details. The description adds minimal context by implying the address is for retrieving a balance, but doesn't clarify format (e.g., Ethereum address starting with '0x'), validation, or examples. This meets the baseline of 3 as it compensates slightly for the low 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 action ('Get') and resource ('native currency balance of an address'), making the purpose immediately understandable. However, it doesn't differentiate from sibling tools like 'get-account' or 'get-token-balance', which might also retrieve balance information but for different resources or currencies.

    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 like 'get-token-balance' for non-native currencies or 'get-account' for broader account information. The description lacks context about prerequisites, such as needing a valid blockchain address, or exclusions.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves a transaction receipt but doesn't clarify whether this is a read-only operation, what happens if the hash is invalid or the transaction is pending, or if there are rate limits or authentication requirements. This leaves significant behavioral gaps for a tool that likely interacts with blockchain 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, clear sentence with zero wasted words: 'Get the Transaction Receipt given a Transaction hash'. It is front-loaded and efficiently communicates the core function without unnecessary elaboration, making it highly concise and well-structured.

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

    Completeness2/5

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

    Given the complexity of blockchain interactions, no annotations, no output schema, and low parameter coverage, the description is incomplete. It doesn't address what a transaction receipt contains, error conditions, or how it differs from related tools. For a tool with two parameters and likely nuanced behavior, more context is needed to be fully helpful.

    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 description mentions the 'hash' parameter but not 'chainId', and with 0% schema description coverage, the schema provides no parameter details. The description adds minimal semantics by indicating 'hash' is a transaction hash, but it doesn't explain the format (e.g., hex string) or purpose of 'chainId' (e.g., for multi-chain contexts). This partial compensation warrants a baseline score.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Get the Transaction Receipt given a Transaction hash'. It specifies the verb ('Get'), resource ('Transaction Receipt'), and key input ('Transaction hash'), making the function unambiguous. However, it doesn't explicitly distinguish this tool from its sibling 'get-transaction' or 'wait-for-transaction-receipt', which prevents a perfect score.

    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 'get-transaction' (which retrieves transaction details) or 'wait-for-transaction-receipt' (which waits for and retrieves a receipt). It also doesn't mention prerequisites, such as needing a valid transaction hash from a confirmed transaction, leaving usage context implied rather than explicit.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the verification action but lacks details on what happens during execution (e.g., cryptographic method, error handling, output format). For a tool with security implications and no structured annotations, this is a significant gap in 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, clear sentence with no wasted words. It front-loads the core purpose efficiently, making it easy to parse and understand quickly. Every part of the sentence contributes directly to explaining what the tool does.

    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 complexity (cryptographic verification), lack of annotations, no output schema, and low schema coverage, the description is incomplete. It doesn't cover behavioral aspects like return values (e.g., success/failure indicators), error cases, or security considerations, leaving gaps for effective tool use in 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 0%, meaning parameters are undocumented in the schema. The description implies the parameters ('address', 'message', 'signature') but doesn't explain their formats, constraints, or relationships (e.g., that 'signature' corresponds to 'message' signed by 'address'). It adds minimal semantic value beyond naming, so it meets the baseline but doesn't compensate for the coverage gap.

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

    Purpose4/5

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

    The description clearly states the tool's purpose: 'Verify that a message was signed by the provided address.' It specifies the verb ('verify') and the resource/action ('message signed by address'), making the intent unambiguous. However, it doesn't explicitly differentiate from sibling tools like 'sign-message' beyond the obvious inverse relationship, which keeps it from a perfect score.

    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 prerequisites (e.g., needing a signed message from 'sign-message'), exclusions, or contextual cues. Without such information, users must infer usage from the purpose alone, which is insufficient for optimal tool selection.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden. It mentions 'wait' but doesn't disclose key behavioral traits such as whether it's blocking, if it affects other operations, error handling, or any side effects. This leaves the agent guessing about the tool's impact and safety.

    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 a single sentence, 'Wait the given seconds,' which is front-loaded and wastes no words. It efficiently conveys the core action without unnecessary details, making it 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's simplicity (1 parameter, no output schema, no annotations), the description is incomplete. It doesn't explain what happens during the wait, return values, or potential errors. For a tool that could impact execution flow, more context is needed to ensure safe and correct usage.

    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 description adds minimal meaning beyond the input schema, which has 0% description coverage. It clarifies that 'seconds' is the parameter for waiting time, but doesn't specify units, valid ranges, or constraints. With only 1 parameter and no schema descriptions, the baseline is high, but it could be more informative.

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

    Purpose3/5

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

    The description 'Wait the given seconds' states a clear action (wait) with a resource (seconds), but it's somewhat vague about what 'wait' means in this context—whether it's a blocking delay, a timer, or something else. It distinguishes from siblings like 'wait-for-transaction-receipt' by focusing on time-based waiting, but lacks specificity on the exact behavior.

    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. For example, it doesn't mention if this is for general delays, testing, or synchronization, nor does it compare to siblings like 'wait-for-transaction-receipt' for blockchain-specific waits. The description alone offers no context for usage decisions.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It mentions 'immediately without submitting a transaction', which hints at non-destructive, simulation-like behavior, but fails to detail critical aspects such as whether it requires authentication, has rate limits, returns specific data formats, or what happens on errors. This leaves significant gaps in understanding the tool's operational traits.

    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 key information ('Executing a new message call') and adds necessary context ('immediately without submitting a transaction'). There is no wasted text, making it highly concise and well-structured.

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

    Completeness2/5

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

    Given the complexity of blockchain operations, no annotations, no output schema, and 0% schema coverage, the description is incomplete. It lacks details on parameters, behavioral constraints, return values, and error handling, which are essential for an agent to use this tool effectively in a context with many sibling tools.

    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 provides no information about 'to', 'value', or 'data'. This leaves all three parameters undocumented, making it difficult for an agent to understand their purpose or usage beyond the basic schema types.

    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 action ('Executing a new message call') and distinguishes it from submitting a transaction, which differentiates it from sibling tools like 'send-transaction' and 'write-contract'. However, it doesn't explicitly name the resource being acted upon (e.g., a smart contract or blockchain), making it slightly less specific than a perfect 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 implies usage for immediate execution without network submission, suggesting it's for read-only or simulation purposes versus transactional siblings. However, it lacks explicit guidance on when to use this tool over alternatives like 'read-contract' or 'send-transaction', leaving some ambiguity for the agent.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states 'Get the configured chains' but doesn't clarify if this is a read-only operation, what format the output is in, or any constraints like rate limits. For a tool with zero annotation coverage, this is insufficient.

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

    Conciseness5/5

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

    The description is a single, clear sentence with no wasted words. It's front-loaded and efficiently conveys the core action, making it easy to parse without unnecessary elaboration.

    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 annotations and no output schema, the description is incomplete. It doesn't explain what 'configured chains' means, the return format, or any behavioral traits. For a tool in a complex blockchain context with many siblings, more detail is needed to guide the agent effectively.

    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 0 parameters with 100% coverage, so no parameter documentation is needed. The description doesn't add parameter details, which is appropriate, but it could have mentioned any implicit context (e.g., no filtering options). Baseline is 4 for zero 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 clearly states the verb ('Get') and resource ('configured chains'), making the purpose understandable. However, it doesn't differentiate from sibling tools like 'get-chain-id' or 'get-block', which also retrieve chain-related information, so it doesn't fully distinguish its specific 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 is provided on when to use this tool versus alternatives like 'get-chain-id' or 'get-block'. The description lacks context about its specific use case, such as retrieving all configured chains versus single-chain details, leaving the agent without clear usage instructions.

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

  • Behavior2/5

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

    With no annotations provided, the description carries full burden for behavioral disclosure. It states the action ('Disconnect') but doesn't explain what this entails—whether it terminates sessions, clears cached data, requires user confirmation, or has side effects like logging out from related services. This leaves significant gaps in understanding the tool's behavior.

    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, direct sentence with zero wasted words. It's front-loaded with the core action and resource, making it highly efficient and easy to parse at a glance.

    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 low complexity (0 parameters, no output schema, no annotations), the description is minimally adequate but incomplete. It states what the tool does but lacks context on behavior, usage scenarios, or effects, which is important for a mutation-like operation like disconnection. More detail would improve 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 input schema has 0 parameters with 100% coverage, so no parameter documentation is needed. The description appropriately doesn't discuss parameters, focusing instead on the tool's purpose. A baseline of 4 is applied since the schema fully handles parameter semantics.

    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 action ('Disconnect') and the target resource ('the metamaks wallet'), providing a specific verb+resource combination. However, it doesn't differentiate from sibling tools like 'get-connect-uri' or 'show-connect-qrcode' which are related to connection functionality, leaving room for improvement in sibling distinction.

    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 whether it should be used after certain operations or instead of other disconnection methods. There's no mention of prerequisites, exclusions, or contextual triggers for invocation.

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

  • Behavior2/5

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

    No annotations are provided, so the description carries full burden for behavioral disclosure. 'Get' implies a read-only operation, but it doesn't specify if this requires network connectivity, has latency, returns a numeric or string ID, or if it's cached. For a tool with zero annotation coverage, this leaves significant gaps in understanding its behavior.

    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 ('Get the current chain id') that front-loads the core purpose with zero wasted words. Every word earns its place, making it easy for an agent to parse quickly without unnecessary elaboration.

    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 (0 parameters, no output schema, no annotations), the description is minimally adequate but lacks depth. It doesn't explain what a 'chain id' represents in this context (e.g., Ethereum network ID), the return format, or error conditions, which could help an agent use it more effectively despite the low complexity.

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

    Parameters4/5

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

    The tool has 0 parameters, and schema description coverage is 100%, so there's no need for parameter documentation in the description. The baseline for zero parameters is 4, as the description appropriately doesn't waste space on non-existent parameters while remaining clear about the tool's function.

    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 the current chain id' clearly states the action (Get) and resource (current chain id), making the purpose immediately understandable. However, it doesn't differentiate from siblings like 'get-chains' or 'get-block-number' which might provide related blockchain information, so it doesn't reach the highest score.

    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 'get-chains' (which might list available chains) or 'get-block-number' (which retrieves a different blockchain property). There's no mention of prerequisites, context, or exclusions, leaving the agent to infer usage from the tool name alone.

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

  • Behavior2/5

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

    With no annotations provided, the description carries the full burden of behavioral disclosure. It states the tool retrieves a URI but does not explain what the URI is used for, whether it involves authentication, rate limits, or side effects. This leaves significant gaps in understanding the tool's behavior.

    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 directly states the tool's purpose without unnecessary words. It is front-loaded and appropriately sized for a simple tool.

    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 parameters and no output schema, the description is minimally adequate but lacks depth. It does not explain what the connect URI is, how it should be used, or what the expected outcome is, which could hinder an agent's ability to use it effectively in context.

    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 0 parameters with 100% coverage, so no parameter documentation is needed. The description does not add parameter details, which is acceptable here, but it could have clarified if any implicit inputs are required, such as wallet state.

    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 action ('Get') and the resource ('connect URI'), specifying its purpose to connect to a MetaMask wallet. However, it does not differentiate from sibling tools like 'show-connect-qrcode', which might serve a similar connection purpose, leaving some ambiguity.

    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 'show-connect-qrcode' or 'disconnect'. It lacks context on prerequisites or scenarios, leaving the agent to infer usage without explicit direction.

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

GitHub Badge

Glama performs regular codebase and documentation scans to:

  • Confirm that the MCP server is working as expected.
  • Confirm that there are no obvious security issues.
  • Evaluate tool definition quality.

Our badge communicates server capabilities, safety, and installation instructions.

Card Badge

mcpilot MCP server

Copy to your README.md:

Score Badge

mcpilot MCP server

Copy to your README.md:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Xiawpohr/mcpilot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server