Skip to main content
Glama

Storage slot

storage_slot
Read-only

Compute a Solidity storage slot for mappings, nested mappings, array elements, or ERC-7201 namespaces, and optionally read it live on EVM chains.

Instructions

Compute a Solidity storage slot (mapping, nested mapping, array element, ERC-7201 namespace) and optionally read it live.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keysNo[[type,value],...] for mapping
kindYes
readNo
slotNo
indexNo
namespaceNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.6/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety and network profile is covered. The description adds the compute-vs-live-read duality, which explains why the openWorld hint applies, but it does not disclose return format, auth needs, or failure behavior for the read path.

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

Conciseness5/5

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

A single front-loaded sentence that leads with the verb and resource, then qualifies with the handled kinds. No filler or redundancy.

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

Completeness2/5

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

With 6 parameters, nested objects, 17% schema coverage, and no output schema, the description is too thin. It omits the semantics of most parameters and, absent an output schema, provides no explanation of what a compute or read returns.

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 very low (17%), so the description must compensate. It partially does by mapping the 'kind' enum values (mapping/array/erc7201) to plain-language forms and hinting at the read mode, but it says nothing about the keys, slot, index, or namespace 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?

States a specific verb ('Compute') and resource ('Solidity storage slot'), then enumerates the exact sub-kinds handled (mapping, nested mapping, array element, ERC-7201 namespace) plus an optional live read. This clearly distinguishes it from siblings like decode_calldata, abi_utils, and decode_transaction.

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 phrase 'and optionally read it live' implies a two-mode usage (compute-only vs. compute-and-read), which is useful context. However, it never states when to prefer this tool over siblings or what prerequisites/conditions select each mode, leaving usage largely to inference.

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