Skip to main content
Glama

Tabularium

Tabularium: write

tabularium_write

Paid ($0.003 USDC on Base, x402). Append a value under a key in the paying wallet's workspace. Agent memory: save a value under a key in a persistent key-value store owned by the paying wallet. The first write opens a 30-day workspace. Memory survives restarts, new machines and hand-offs between agents. Every write is hash-chained and signed (Ed25519), so the history verifies offline. Values up to 64 KB; failed writes are not charged.. Charged only if it succeeds. Call once without payment to get the price, then retry with params._meta["x402/payment"].

Input Schema

NameRequiredDescriptionDefault
keyYesKey, e.g. notes/today
valueYesUTF-8 string; store JSON as a string
idempotency_keyNoOptional retry id, kept 7 days

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond the sparse annotations (readOnlyHint=false, openWorldHint=true): price ($0.003 USDC on Base, x402), that the first write opens a 30-day workspace, 64 KB value cap, hash-chained Ed25519 signing verifiable offline, and that failed writes are not charged. These are exactly the mutation-cost and data-durability facts an agent needs before a write.

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?

Payment and price are front-loaded, which is right, but there is duplication: 'failed writes are not charged' is repeated as 'Charged only if it succeeds', and the append-to-workspace idea is restated in the 'Agent memory' sentence. A stray double period also signals it was not edited down.

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 paid mutation with no output schema, the description covers cost, payment handshake, durability, integrity, size limits and failure charging. What it omits is what a successful call returns (hash? version? workspace id?) and whether overwriting an existing key is allowed or creates a new version — a notable gap on a self-described append-only hash-chained store.

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 already 100%, so the baseline is 3; the description adds real value by disclosing an additional transport parameter, params._meta["x402/payment"], that the caller must supply on retry and that the schema does not contain. The 64 KB restatement is redundant with maxLength but the payment parameter is genuinely beyond-schema information.

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 and resource: 'Append a value under a key in the paying wallet's workspace', with scope tied to the paying wallet. The sibling set (read, head, export, snapshot_fetch) is clearly differentiated by the write/append framing and persistence semantics.

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

Usage Guidelines4/5

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

Gives the concrete invocation protocol — 'Call once without payment to get the price, then retry with params._meta["x402/payment"]' — and names the primary use case (agent memory across restarts and hand-offs). It stops short of stating when to prefer this over tabularium_read/head or how it relates to the workspace lifecycle siblings like renew.

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.