Skip to main content
Glama

chain_storage

Read a raw storage slot of any contract via eth_getStorageAt, with uint and address decodes. Example: {address:"0x8335…2913", slot:"0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc", chain:"base"} (EIP-1967 implementation slot). $0.001 USDC.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "address": "<address>",
      "slot": "<slot>"
    },
    "name": "chain_storage"
  }
}

Input Schema

NameRequiredDescriptionDefault
slotYes
blockNo
chainNo
walletNo
addressYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • addedInput schema / properties / wallet
      Added value: +{
      +  "type": "string"
      +}
  2. Added

TDQS

B3.4/5.0
Behavior3/5

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

No annotations are supplied, so the description carries the full burden. It does add real behavioral value by disclosing cost ('$0.001 USDC') and implying a read-only RPC operation, but it omits important traits such as supported chains, default block behavior, whether the wallet is the payer, and what happens on invalid slots.

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?

Front-loaded with the core operation and RPC method, then a concrete example, then cost. Dense but nearly every element earns its place; the long hex slot inflates length but is pedagogically useful as a correct-format reference.

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

Completeness3/5

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

For a read tool with no annotations and no output schema, the agent still lacks knowledge of block semantics, the wallet parameter's role, default chain behavior, and how the uint/address decodes are actually presented in the response. Adequate but with clear gaps for a 5-parameter tool.

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

Parameters3/5

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

Schema description coverage is 0%, so the description should compensate and it only partly does: the example demonstrates address, slot, and chain (including the 32-byte slot format), but block and wallet remain completely unexplained even though one of them likely controls historical lookup and payment. Partial compensation for a 5-parameter, undocumented schema.

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

Purpose4/5

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

States a specific verb and resource ('Read a raw storage slot of any contract') and names the underlying RPC call eth_getStorageAt, plus the decode behaviors (uint/address). It is clearly not a generic contract call, but it never names sibling tools like chain_proxy or chain_call, which read similar proxy/contract data, so sibling differentiation rests on the agent's inference.

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 EIP-1967 implementation-slot example implies a canonical use case (reading proxy implementation pointers), which is genuinely helpful context. However, there is no explicit when-to-use versus chain_proxy/chain_call guidance and no statement of when this tool is the wrong choice.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources