Skip to main content
Glama

write_storage

Saves key-value entries into localStorage or sessionStorage for the active tab's origin and logs each to the changelog for visibility.

Instructions

Write entries into localStorage or sessionStorage of the active tab's origin. Params: area (required), entries ([{key, value}] as JSON-serializable strings). Every write is appended to the sidebar changelog so the user sees it.

Input Schema

NameRequiredDescriptionDefault
areaYes
entriesYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior3/5

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

No annotations exist, so the description carries the full load. It usefully discloses a side effect (every write is appended to the sidebar changelog so the user sees it) and the JSON-serializable string constraint, but says nothing about overwrite semantics for existing keys, permission/auth needs, or error behavior on a full quota.

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

Conciseness5/5

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

Three short sentences, front-loaded with the action and scope, then params, then the notable side effect. No filler and nothing misplaced.

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

Completeness4/5

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

For a 2-param mutation tool with no annotations and no output schema, the description covers purpose, both parameters, and the user-visible changelog effect. The main gap is what happens when a key already exists or when storage is full.

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?

With 0% schema description coverage, the description compensates well: it marks area as required, names the two enum values implicitly, and expands the opaque `items: object` schema into `[{key, value}]` with values as JSON-serializable strings. Only the exact shape of the entry objects is left slightly implicit.

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 (write) and resource (entries into localStorage/sessionStorage) plus a precise scope (active tab's origin). This clearly separates it from read_storage, clear_area, and delete_keys without needing their schemas.

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

Usage Guidelines2/5

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

There is no explicit guidance on when to use this versus siblings like clear_area or delete_keys, and no stated prerequisites or exclusions. The scope phrase implies when it applies, but no alternative routing or when-not conditions are given.

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