Skip to main content
Glama

Server Quality Checklist

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

  • Disambiguation5/5

    Each tool has a clearly distinct purpose with no overlap, as they map directly to standard Ethereum JSON-RPC methods. For example, eth_getBalance retrieves account balances, eth_getTransactionByHash fetches transaction details, and web3_clientVersion returns client info, all serving unique functions in the EVM ecosystem.

    Naming Consistency5/5

    The tool names follow a highly consistent pattern, using prefixes like 'eth_', 'net_', and 'web3_' followed by descriptive, standard method names in snake_case. This uniformity makes the tools predictable and easy to identify, aligning with Ethereum API conventions.

    Tool Count5/5

    With 19 tools, this server is well-scoped for an EVM interface, covering essential operations such as querying blocks, transactions, balances, network info, and executing calls. The count is appropriate, providing comprehensive coverage without being overwhelming for the domain.

    Completeness5/5

    The tool set offers complete coverage of core EVM functionalities, including reading data (e.g., blocks, balances, logs), writing transactions (e.g., eth_sendRawTransaction), and utility operations (e.g., gas estimation, hashing). There are no obvious gaps, enabling agents to handle typical blockchain interactions seamlessly.

  • Average 3.2/5 across 19 of 19 tools scored.

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

    • 0 of 1 community issues answered or closed in the last 6 months
    • 2 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
  • This repository is licensed under MIT License.

  • 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

  • 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 'Generates and returns an estimate,' implying a read-only, non-destructive operation, but doesn't clarify if it simulates transaction execution, requires network access, has rate limits, or what happens with invalid inputs. For a tool with 6 parameters and no annotation coverage, this leaves significant behavioral gaps.

    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 ('Generates and returns an estimate of how much gas is necessary') that front-loads the core purpose without unnecessary words. It earns its place by clearly stating the tool's function, making it appropriately sized 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 (6 parameters, no annotations, no output schema), the description is incomplete. It doesn't explain what the estimate is for (e.g., a transaction), how it's generated (e.g., via simulation), or what the return value looks like (e.g., a gas amount in hex). With no output schema and minimal behavioral context, the description fails to provide enough information for effective tool use.

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

    Parameters3/5

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

    The input schema has 100% description coverage, with each parameter documented (e.g., 'data' as 'Data to send (hex string)'). The description adds no parameter-specific information beyond what the schema provides. According to the rules, with high schema coverage (>80%), the baseline score is 3 even without param info in the description, as the schema adequately covers semantics.

    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 purpose ('Generates and returns an estimate of how much gas is necessary'), which is clear but vague. It specifies the verb ('Generates and returns') and resource ('estimate of how much gas'), but doesn't distinguish it from siblings like eth_gasPrice (which returns current gas price) or eth_call (which executes a call without sending a transaction). The description is adequate but lacks specificity about what transaction or operation is being estimated.

    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 siblings like eth_call (for simulating calls) or eth_gasPrice (for current gas prices), nor does it specify prerequisites or contexts (e.g., before sending a transaction). Without any usage context, the agent must infer from the tool name and schema 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 it 'Returns the balance' but doesn't specify units (e.g., wei, ether), error conditions, rate limits, or authentication needs. For a read operation with zero annotation coverage, 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, efficient sentence with zero waste. It's front-loaded with the core purpose, making it highly concise and well-structured for quick understanding.

    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 queries, no annotations, and no output schema, the description is incomplete. It lacks details on return format (e.g., numeric balance in wei), error handling, or dependencies. For a tool with 2 parameters and rich context signals, this minimal description is inadequate.

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

    Parameters3/5

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

    The schema description coverage is 100%, so the schema already documents both parameters (address and blockNumber) adequately. The description implies the address parameter but doesn't add syntax, format, or contextual details beyond what the schema provides. Baseline 3 is appropriate when the schema handles parameter documentation.

    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 ('Returns') and resource ('balance of the account'), making the purpose specific and understandable. It distinguishes from siblings like eth_getTransactionCount or eth_getCode by focusing on balance retrieval. However, it doesn't explicitly contrast with all siblings, 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?

    No guidance is provided on when to use this tool versus alternatives. The description doesn't mention prerequisites, context, or comparisons to other tools (e.g., eth_call for more complex queries). This leaves the agent without explicit 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?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns information but does not describe what information is returned, potential errors, rate limits, or authentication needs. For a read operation with no annotation coverage, this is a significant gap in behavioral context.

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

    Conciseness5/5

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

    The description is a single, efficient sentence: 'Returns information about a block by block number.' It is front-loaded with the core purpose and contains no unnecessary words, 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 data retrieval and the lack of annotations and output schema, the description is incomplete. It does not explain what specific block information is returned, how to interpret results, or handle edge cases like invalid block numbers. For a tool with rich data output and no structured output documentation, more context is needed.

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

    Parameters3/5

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

    Schema description coverage is 100%, with clear descriptions for both parameters in the input schema. The description does not add any additional meaning beyond what the schema provides, such as explaining the format of returned block information or transaction objects. Baseline 3 is appropriate as the schema handles parameter documentation 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 tool's purpose: 'Returns information about a block by block number.' It specifies the verb ('returns') and resource ('block'), but does not differentiate it from sibling tools like 'eth_getTransactionByHash' or 'eth_getTransactionReceipt', which also return block-related information. The purpose is clear but lacks 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. It does not mention sibling tools like 'eth_blockNumber' (which gets the current block number) or 'eth_getTransactionByHash' (which gets transaction details), nor does it specify use cases or prerequisites. Usage is implied from the purpose but not explicitly stated.

    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 states the action ('returns code') but lacks behavioral details like what 'code' entails (e.g., bytecode, runtime code), error conditions (e.g., invalid address), or performance aspects (e.g., response format, potential delays). This leaves significant gaps for a tool with no annotation support.

    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 zero waste. It is front-loaded and appropriately sized for its purpose, 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 does not explain what 'code' returns (e.g., bytecode string, hex data) or handle complexities like non-contract addresses, leaving the agent without sufficient context for reliable use.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents parameters ('address' as contract address, 'blockNumber' with defaults). The description adds no additional meaning beyond the schema, such as explaining parameter interactions or constraints, meeting the baseline for high 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 'Returns code at a given address' clearly states the verb ('returns') and resource ('code'), making the purpose understandable. However, it does not explicitly differentiate from siblings like 'eth_getStorageAt' (which returns storage data) or 'eth_getBalance' (which returns balance), missing 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?

    The description provides no guidance on when to use this tool versus alternatives. It lacks context such as use cases (e.g., verifying contract deployment, analyzing bytecode) or exclusions (e.g., not for non-contract addresses), leaving the agent with no usage 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 states the tool returns logs but doesn't mention critical behaviors like potential performance impacts for large block ranges, rate limits, or that it's a read-only query (implied by 'Returns' but not explicit). This leaves significant gaps for safe and effective use.

    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 functionality ('Returns an array of all logs') and specifies the key constraint ('matching a given filter object'). There is no wasted verbiage, making it highly concise and well-structured for quick comprehension.

    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 (filtering blockchain logs with 4 parameters), lack of annotations, and no output schema, the description is incomplete. It doesn't explain the structure of returned logs, error conditions, or performance considerations, leaving the agent under-informed for a non-trivial query operation in a blockchain 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 schema description coverage is 100%, with each parameter well-documented in the input schema (e.g., address as contract address, fromBlock/toBlock with hex or special values). The description adds no additional semantic context beyond implying a 'filter object' maps to these parameters, so it meets the baseline for high schema coverage without compensating value.

    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 ('Returns an array') and resource ('all logs matching a given filter object'), making the purpose unambiguous. However, it doesn't explicitly differentiate from sibling tools like eth_getTransactionReceipt or eth_getBlockByNumber, which also retrieve blockchain data, so it misses 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, such as eth_getTransactionReceipt for transaction-specific logs or eth_getBlockByNumber for block-level data. It lacks context about use cases like event monitoring or debugging, 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?

    No annotations are provided, so the description carries the full burden. It states the tool returns a value but lacks details on behavioral traits: it doesn't specify if this is a read-only operation (implied but not explicit), potential errors (e.g., invalid address), performance considerations, or the format of the returned value (e.g., hex string). This leaves significant gaps for an agent to understand how to handle the tool 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, clear sentence with no wasted words. It front-loads the core action ('Returns the value') and efficiently conveys the essential purpose, making it easy to parse and 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 the tool's complexity (EVM storage access) and lack of annotations or output schema, the description is insufficient. It doesn't explain the return value format, error conditions, or practical usage context (e.g., for debugging contracts). This leaves the agent with incomplete information to invoke the tool correctly and interpret results.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents parameters like 'address' as 'Contract address' and 'position' as 'Storage position (hex string)'. The description adds no additional semantic context beyond what the schema provides, such as explaining what a storage position represents in Ethereum or how to derive it. This meets the baseline for high schema coverage.

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

    Purpose4/5

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

    The description clearly states the action ('Returns the value') and target ('from a storage position at a given address'), making the purpose understandable. However, it doesn't explicitly differentiate this tool from similar siblings like eth_getBalance or eth_getCode, which also retrieve data from addresses but for different types of data.

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

    Usage Guidelines2/5

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

    The description provides no guidance on when to use this tool versus alternatives. It doesn't mention use cases like inspecting contract state variables, comparing it to eth_call for more complex queries, or specifying prerequisites such as needing a contract address with storage.

    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 it 'Returns the information about a transaction', which implies a read-only operation, but doesn't specify what information is included (e.g., sender, receiver, gas, status), whether it's real-time or historical, error conditions (e.g., invalid hash), or performance aspects like rate limits. For a tool with zero annotation coverage, this is a significant gap in behavioral context.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's purpose without any fluff. It's front-loaded with the core action and resource, making it easy to parse. Every word earns its place, and there's no redundancy or 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 the tool's complexity (querying blockchain transactions), lack of annotations, and no output schema, the description is incomplete. It doesn't explain what information is returned (e.g., transaction details like from, to, value), potential errors, or behavioral traits. For a tool in this context, more detail is needed to fully guide an AI agent, especially without structured output data.

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

    Parameters3/5

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

    The input schema has 100% description coverage, with the parameter 'txHash' documented as 'Transaction hash'. The description adds no additional meaning beyond this, as it only repeats 'transaction hash' without elaborating on format (e.g., hex string, length) or constraints. With high schema coverage, the baseline is 3, and the description doesn't compensate with extra details.

    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 ('Returns the information about a transaction') and the resource ('transaction'), specifying it's requested by 'transaction hash'. It distinguishes from siblings like eth_getTransactionReceipt (which returns receipt data) and eth_getTransactionCount (which counts transactions), though not explicitly. However, it doesn't fully differentiate from all siblings (e.g., eth_getBlockByNumber also returns transaction info within blocks), so it's not a perfect 5.

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

    Usage 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 it over eth_getTransactionReceipt (for receipt data) or eth_getBlockByNumber (for block-level transaction details), nor does it specify prerequisites like needing a valid hash. Usage is implied by the name and description alone, with no explicit context 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 returns a receipt but does not clarify what a receipt entails (e.g., success status, gas used, logs), whether it's read-only, or any rate limits or error conditions. 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 waste, clearly stating the tool's function without unnecessary details. It is appropriately sized and front-loaded, making it easy to understand at a glance.

    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 lack of annotations and output schema, the description is incomplete. It does not explain what a transaction receipt includes (e.g., success indicators, gas details) or potential errors, which are crucial for a tool in a complex domain like blockchain transactions. More context is needed for effective use.

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

    Parameters3/5

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

    The schema description coverage is 100%, with the parameter 'txHash' well-documented in the schema. The description adds no additional meaning beyond implying the hash is used to fetch the receipt, aligning with the baseline score when the schema handles parameter documentation effectively.

    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 ('Returns') and resource ('receipt of a transaction'), making the purpose evident. However, it does not explicitly differentiate from sibling tools like 'eth_getTransactionByHash', which might retrieve different transaction details, leaving room for slight 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?

    No guidance is provided on when to use this tool versus alternatives, such as 'eth_getTransactionByHash' for raw transaction data or other siblings for different blockchain queries. The description lacks context on prerequisites or exclusions, offering minimal usage 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 states the tool creates transactions, implying a write operation, but lacks critical details: it doesn't specify that this is a destructive/mutative action, mention authentication needs, rate limits, network effects, or error handling. This is inadequate for a tool that likely modifies blockchain state.

    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—a single, front-loaded sentence that directly states the tool's function without any fluff or redundancy. Every word earns its place, making it efficient for quick understanding.

    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 transaction creation tool in Ethereum, which is inherently mutative and high-stakes), the description is incomplete. With no annotations and no output schema, it fails to address key aspects like behavioral traits (e.g., irreversibility, gas costs), error responses, or return values, leaving significant gaps for an AI agent.

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

    Parameters3/5

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

    The description adds no parameter-specific information beyond what the input schema provides. Since schema description coverage is 100% (the single parameter 'signedTransactionData' is well-documented in the schema), the baseline score of 3 applies, as the schema already covers the parameter meaning 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 tool's purpose with specific verbs ('creates new message call transaction or a contract creation'), distinguishing it from read-only siblings like eth_getBalance or eth_call. However, it doesn't explicitly differentiate from other transaction-related tools like eth_estimateGas, which is why it doesn't reach 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 signed transaction data), exclusions, or compare it to siblings like eth_estimateGas for gas estimation or eth_call for simulation, leaving the agent with no contextual usage cues.

    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 basic function but lacks details on performance, error handling, or any constraints (e.g., input size limits, rate limits). For a cryptographic tool, 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, efficient sentence with zero waste. It's front-loaded with the core purpose and uses precise terminology ('Keccak-256'), 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.

    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 (single parameter, no output schema) and high schema coverage, the description is minimally adequate. However, it lacks context about the hash algorithm's specifics or common use cases, which would be helpful for an AI agent.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema already fully documents the single parameter 'data'. The description adds no additional parameter semantics beyond what's in the schema, resulting in a baseline score of 3.

    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 ('Returns') and resource ('Keccak-256 hash of the given data'), making the purpose immediately understandable. It doesn't explicitly differentiate from sibling tools like other hashing functions, but the specificity of 'Keccak-256' helps distinguish it from general hash operations.

    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 or suggest contexts where Keccak-256 hashing is appropriate, leaving the agent to infer usage 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?

    No annotations are provided, so the description carries the full burden. It mentions 'immediately without creating a transaction,' which hints at read-only behavior, but fails to disclose critical details like whether it requires authentication, rate limits, error handling, or what the return format looks like (e.g., hex data). For a tool with no annotation coverage, 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 key information ('executes a new message call immediately without creating a transaction'). There's 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 Ethereum RPC calls, no annotations, and no output schema, the description is insufficient. It lacks details on behavioral traits (e.g., side effects, error responses), return values, and practical usage context, making it incomplete for effective agent use.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema already documents all 7 parameters thoroughly. The description adds no additional parameter semantics beyond what's in the schema (e.g., it doesn't explain interactions between parameters like 'from' and 'gas'). Baseline 3 is appropriate as the schema does the heavy lifting.

    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 ('executes a new message call') and distinguishes it from creating a transaction, which helps differentiate it from sibling tools like eth_sendRawTransaction. However, it doesn't explicitly contrast with other read-only siblings like eth_getBalance or eth_getCode, which also don't create transactions.

    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 transaction creation, suggesting it's for read-only or simulation purposes. However, it doesn't provide explicit guidance on when to use this versus alternatives like eth_estimateGas (for gas estimation) or other query tools, leaving some ambiguity.

    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 returns a value, implying a read-only operation, but does not specify whether it requires authentication, has rate limits, or details about the return format (e.g., numeric ID, string). This leaves significant gaps in understanding the tool's behavior beyond its basic function.

    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 waste—it directly states the tool's function without fluff or redundancy. It is appropriately sized for a simple, parameterless tool and front-loads the essential information, making it easy for an agent to parse quickly.

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

    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 complete but lacks depth. It explains what the tool does but does not provide context on the return value format or how it differs from similar tools like 'eth_chainId'. For a basic read operation, this is adequate but leaves room for improvement in guiding 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 tool has 0 parameters, and the schema description coverage is 100%, so the description does not need to compensate for missing parameter documentation. The baseline for 0 parameters is 4, as there are no parameters to explain, and the description appropriately focuses on the tool's output without unnecessary parameter details.

    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 ('Returns') and the resource ('the current network id'), making the purpose immediately understandable. It distinguishes from siblings like 'eth_chainId' by specifying 'network id' rather than 'chain id', though the distinction could be more explicit. It avoids tautology by not just restating the tool name 'net_version'.

    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 'eth_chainId' or other network-related siblings. It lacks context on prerequisites, typical use cases, or any explicit when/when-not instructions, leaving the agent to infer usage 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?

    No annotations are provided, so the description carries the full burden of behavioral disclosure. It states the tool returns a value but doesn't specify the return format (e.g., string, object), potential errors, or any side effects. For a tool with zero annotation coverage, 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, efficient sentence that directly states the tool's function without any unnecessary words. It's front-loaded and wastes no space, making it easy for an agent to parse quickly.

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

    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 annotations, no output schema), the description is minimally adequate but lacks depth. It doesn't explain the return value format or potential use cases, which could help an agent understand how to interpret the result. However, for such a straightforward tool, it meets basic requirements.

    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 mention parameters, as there are none, which aligns with the schema and avoids redundancy.

    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 with a specific verb ('Returns') and resource ('the current client version'), making it immediately understandable. However, it doesn't explicitly differentiate this tool from sibling tools like 'net_version' or 'eth_chainId', which might also provide version-related information in different contexts.

    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 sibling tools like 'net_version' available, there's no indication of whether this tool is for general client version retrieval, debugging, or specific use cases, leaving the agent without context for selection.

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

  • 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 states the tool returns a count but does not disclose behavioral traits such as whether it requires authentication, rate limits, error conditions, or the format of the returned value (e.g., integer, hex). For a tool with no annotation coverage, this leaves significant gaps in understanding its operation.

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

    Conciseness5/5

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

    The description is a single, direct sentence with no wasted words, front-loading the core purpose. It is appropriately sized for a simple query tool and efficiently communicates the essential function 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 lacks details on return value format, error handling, or behavioral constraints, which are crucial for a tool that interacts with blockchain data. The description alone does not provide enough context for reliable agent use.

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

    Parameters3/5

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

    Schema description coverage is 100%, so the schema fully documents both parameters (address and blockNumber). The description does not add any meaning beyond what the schema provides, such as explaining parameter interactions or edge cases. Baseline 3 is appropriate as the schema handles parameter documentation adequately.

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

    Purpose5/5

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

    The description clearly states the specific action ('Returns the number of transactions sent') and the target resource ('from an address'), distinguishing it from siblings like eth_getBalance (returns balance) or eth_getTransactionByHash (returns transaction details). It uses precise terminology that matches the tool's name and domain.

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

    Usage Guidelines3/5

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

    The description implies usage for checking transaction counts from addresses, but provides no explicit guidance on when to use this tool versus alternatives like eth_getTransactionByHash (for specific transaction details) or eth_getLogs (for event logs). It lacks context on prerequisites or exclusions, leaving usage inferred rather than stated.

    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 return value (true/false) but doesn't explain what 'actively listening' means in practice, whether there are timing considerations, error conditions, or what false might indicate. For a diagnostic tool with zero annotation coverage, this leaves significant behavioral gaps.

    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 communicates the essential information without any wasted words. It's appropriately sized for a simple diagnostic tool and front-loads the key information (returns true if...).

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

    Completeness3/5

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

    For a zero-parameter diagnostic tool with no output schema, the description provides the basic return value but lacks context about interpretation, error handling, or typical usage scenarios. It's minimally adequate but doesn't give the agent enough guidance to use the tool effectively in various contexts.

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

    Parameters4/5

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

    The tool has zero parameters with 100% schema description coverage, so the baseline is 4. The description appropriately doesn't waste space discussing non-existent parameters and focuses on the tool's core functionality.

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

    Purpose5/5

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

    The description clearly states the specific action ('Returns true') and the resource being checked ('if client is actively listening for network connections'). It distinguishes itself from sibling tools by focusing on network listening status rather than blockchain queries or version information.

    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. While it's clear what the tool does, there's no mention of typical use cases, prerequisites, or how it differs from other network-related tools like net_peerCount or net_version.

    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 returns a count but does not specify the format (e.g., integer, hex), whether it's real-time or cached, potential errors, or rate limits. 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, clear sentence that directly states the tool's purpose with no wasted words. It is front-loaded and efficiently conveys the essential information without unnecessary elaboration, making it easy for an agent to parse quickly.

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

    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 (no parameters, no annotations, no output schema), the description is adequate as a basic read operation. However, it lacks details on output format (e.g., numeric or hex representation) and behavioral context (e.g., latency, reliability), which could help the agent use it more effectively in complex scenarios.

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

    Parameters4/5

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

    The tool has zero parameters, and the input schema has 100% description coverage (though empty). The description appropriately omits parameter details, as there are none to explain, making it efficient and avoiding redundancy. A baseline of 4 is justified since no parameters exist to document.

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

    Purpose5/5

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

    The description clearly states the specific action ('Returns') and resource ('number of peers currently connected to the client'), distinguishing it from sibling tools like net_listening (connection status) or net_version (network ID). It precisely defines what the tool does without 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 net_listening or other network-related tools. It lacks context about typical use cases (e.g., monitoring network health) or prerequisites, 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 returns a value but doesn't mention if it's read-only, requires authentication, has rate limits, or details the return format (e.g., numeric wei value). This leaves significant gaps for a tool in a blockchain context.

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

    Conciseness5/5

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

    The description is a single, efficient sentence with no wasted words. It front-loads the core functionality ('Returns the current price per gas in wei'), making it immediately clear and easy to parse.

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

    Completeness2/5

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

    Given the complexity of blockchain tools and lack of annotations or output schema, the description is insufficient. It doesn't explain the return value format (e.g., integer wei), potential errors, or behavioral traits like network dependencies, leaving the agent with incomplete context for reliable use.

    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 with 100% schema description coverage, so no parameter information is needed. The description appropriately omits parameter details, focusing on the tool's purpose, which aligns with the baseline for zero parameters.

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

    Purpose5/5

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

    The description clearly states the specific action ('Returns') and resource ('current price per gas in wei'), distinguishing it from siblings like eth_blockNumber or eth_estimateGas. It precisely defines what the tool does without being vague or tautological.

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

    Usage Guidelines3/5

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

    The description implies usage when needing the current gas price, but provides no explicit guidance on when to use this versus alternatives (e.g., eth_estimateGas for transaction-specific estimates) or any exclusions. It lacks named alternatives or contextual boundaries.

    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 return value but lacks information about potential errors, rate limits, network dependencies, or whether this is a read-only operation (though implied by 'Returns'). More behavioral context would be helpful given the absence of annotations.

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

    Conciseness5/5

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

    The description is a single, efficient sentence that directly states the tool's function without any wasted words. It's perfectly front-loaded and appropriately sized for a simple query tool with no parameters.

    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 completeness. It doesn't specify the return format (e.g., hex string, integer), potential errors, or blockchain context needed for proper use. More contextual information would improve agent understanding.

    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 with 100% schema description coverage, so the schema already fully documents the parameter situation. The description appropriately doesn't discuss parameters, maintaining focus on the tool's purpose. Baseline for 0 parameters is 4, as no parameter explanation is needed.

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

    Purpose5/5

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

    The description clearly states the specific action ('Returns') and resource ('the number of the most recent block'), distinguishing it from siblings like eth_getBlockByNumber (which returns full block details) or eth_chainId (which returns chain identifier). It precisely communicates what the tool does without redundancy.

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

    Usage Guidelines3/5

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

    The description implies usage for retrieving the latest block number, but provides no explicit guidance on when to use this versus alternatives like eth_getBlockByNumber (for detailed block data) or other blockchain query tools. Usage context is implied rather than stated, leaving some ambiguity.

    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 states the tool returns the chain ID, which implies a read-only operation, but does not disclose behavioral traits such as whether it requires authentication, has rate limits, or what format the return value takes (e.g., integer, hex string). 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 a single, efficient sentence with zero waste. It is front-loaded with the core purpose ('Returns the chain ID'), making it easy to parse and understand immediately. Every word earns its place.

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

    Completeness3/5

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

    Given the tool's simplicity (0 parameters, no output schema), the description is complete enough for basic understanding. However, without annotations or output schema, it lacks details on return format, error handling, or network-specific behaviors, which could be important for an AI agent in complex contexts.

    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% (empty schema). The description does not need to add parameter semantics beyond stating no inputs are required, which it implicitly does by focusing on the return value. Baseline for 0 parameters is 4, as there is nothing to compensate for.

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

    Purpose5/5

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

    The description clearly states the specific action ('Returns') and resource ('chain ID of the current network'), distinguishing it from siblings like eth_blockNumber (returns block number) or net_version (returns network ID). It precisely defines what the tool does without ambiguity.

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

    Usage Guidelines3/5

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

    The description implies usage for retrieving the chain ID, but provides no explicit guidance on when to use this tool versus alternatives like net_version (which returns network ID, a related but different concept). It lacks context on specific scenarios or exclusions, leaving usage to inference.

    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

evm-mcp MCP server

Copy to your README.md:

Score Badge

evm-mcp 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/JamesANZ/evm-mcp'

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