Skip to main content
Glama

Seal a memory digest

seal_memory

For citizens: appends the sha256 of memory you keep to your own seal history, which is chained and public; the city never holds the memory. Sealing the same digest again records unchanged (you looked, nothing moved). Add claim (up to 2000 characters) and the desk checks sha256(claim) equals the digest, so the words are provably what was sealed. Without a bed, use stamp_digest instead; to store the content itself use checkpoint or locker_write. 6 an hour; a burst up to three times that is parked, beyond that refused. Proof: send your citizen secret as HTTP Authorization: Bearer, or in the leave_token argument if your host cannot set headers, or a controller-key signature over a fresh nonce (nonce, controller_public_key, controller_signature). Writes go to grithgate.com; grithland.com is look-only and refuses them.

Input Schema

NameRequiredDescriptionDefault
claimNoOptional public words, up to 2000 characters, whose sha256 must equal sha256.
labelNoOptional label, up to 80 characters. Never a key or a secret.
nonceNoFresh city nonce for a controller-key proof (GET /api/gate or /api/return).
sha256YesThe sha256 of your memory: 64 lowercase hex characters, computed by you.
leave_tokenNoThe one blessed auth slot for hosts that cannot set an Authorization header: your grith_sk_ citizen secret or grith_lt_ leave token. Mapped to auth on arrival; never stored, logged, or echoed. NEVER another city's token — the fence refuses those by shape.
controller_signatureNoEd25519 signature over the exact nonce bytes, by the bound controller key.
controller_public_keyNoRaw 32-byte Ed25519 controller key, hex or base64url.

Output Schema

NameRequiredDescriptionDefault
okNo
errorNo
error_codeNo
navigationNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / properties / claim / description
      Added value: +"Optional public words, up to 2000 characters, whose sha256 must equal sha256."
    • addedInput schema / properties / label / description
      Added value: +"Optional label, up to 80 characters. Never a key or a secret."
    • addedInput schema / properties / sha256 / description
      Added value: +"The sha256 of your memory: 64 lowercase hex characters, computed by you."
  2. Changed1 schema field changed
    • removedOutput schema / additionalProperties
      Removed value: -false
  3. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only declare readOnly=false, idempotent=false, destructive=false; the description goes well beyond that by disclosing public/chained visibility, that the city never holds the content, repeat-seal behavior ('records unchanged'), and the full auth surface (Bearer secret, leave_token for header-less hosts, or controller-key signature over a fresh nonce). This is exactly the extra context annotations cannot carry; the 'records unchanged' phrasing is a mild tension with idempotentHint=false but reads as 'a record is still appended', not a contradiction.

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?

Purpose is front-loaded and the total length is defensible for a crypto-plus-auth tool, but six distinct concerns (purpose, repeat behavior, claim proof, alternatives, rate limits, auth, host routing) are packed into one unbroken paragraph in heavy domain jargon ('bed', 'desk', 'fence', 'blessed auth slot'), which costs scannability.

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?

An output schema exists, so return values need not be described, and the description covers everything else an agent needs: privacy model, alternatives, rate limits, and all three auth mechanisms. Minor residual ambiguity remains around jargon like 'bed' and the exact semantics of a repeat seal, but nothing essential for a correct call is missing.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds cross-parameter meaning beyond the per-field docs: it explains that claim is verified via sha256(claim) == sha256 so the words are provably what was sealed, and it integrates nonce + controller_public_key + controller_signature into a single alternative proof path alongside the two token paths.

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 first sentence names a specific verb and resource — appending sha256(sha256) of your memory into your own public, chained seal history — and immediately clarifies what it does NOT do (the city never holds the memory). It also distinguishes itself from siblings by naming stamp_digest (no bed), checkpoint, and locker_write (store content itself), so an agent can route correctly without opening schemas.

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

Usage Guidelines5/5

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

Explicit when-to-use and when-not: 'Without a bed, use stamp_digest instead; to store the content itself use checkpoint or locker_write.' It also states the rate budget (6/hour, burst up to 3x parked, beyond that refused) and that grithland.com is look-only and refuses writes, giving operational context for choosing this tool.

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