Skip to main content
Glama

scratchpad_set

Write ephemeral state or JSON payloads to a shared agent blackboard with automatic TTL expiration, enabling multi-agent data exchange without dedicated databases.

Instructions

    [Cost: $0.0005 USDC on Base & Solana] Writes an ephemeral state key or JSON payload to the shared agent blackboard with automatic TTL expiration.
    Supports hierarchical namespace paths (e.g. 'swarm/task-1/data') and optional write-keys to prevent unauthorized overwrites.
    Ideal for multi-agent workflows passing intermediate state without spinning up dedicated databases.

    Args:
        key: State key or namespace path (e.g., 'research/summary_01').
        value: Any data payload (string, number, list, or JSON dict).
        ttl_seconds: Time to live in seconds before automatic deletion (default: 3600, max: 604800).
        write_key: Optional secret passphrase to protect the key from being overwritten or deleted by other agents.
        payment_signature: Optional x402 Base USDC transaction hash or developer mock key.
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyYes
valueYes
write_keyNo
ttl_secondsNo
payment_signatureNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.3.0

TDQS

A4.5/5.0
Behavior4/5

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

No annotations exist, so the description carries the full burden, and it delivers: it discloses the $0.0005 USDC cost on Base & Solana, automatic deletion via TTL expiration, write-key protection against "overwritten or deleted by other agents," and the payment_signature as an x402 transaction hash or developer mock key. It falls short of disclosing overwrite-on-conflict semantics for existing keys that lack a write_key, or how the tool behaves under scratchpad_lock, and it never mentions what the tool returns.

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?

The description is front-loaded with cost and the core action in the first sentence, followed by feature context and a tight use-case line. The Args block is dense and necessary given the schema has zero descriptions. There is no filler; every sentence earns its place.

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?

Given the moderate complexity (5 params, 2 required) and zero annotations, the description covers purpose, cost, TTL lifecycle, namespace conventions, write protection, and use cases commendably. However, there is no output schema and the description never states the return value or error behavior (e.g., what happens on a write-key mismatch or locked key), and it does not address interaction with the sibling scratchpad_lock tool.

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

Parameters5/5

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

Schema description coverage is 0%, so the description must compensate — and it fully does. The Args section documents all five parameters with type guidance (value accepts string, number, list, or JSON dict), defaults (ttl_seconds default 3600), bounds (max 604800), and behavioral purpose (write_key protects from unauthorized overwrites/deletes). This is exactly the value the bare schema fails to provide.

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?

Opens with a specific verb+resource: "Writes an ephemeral state key or JSON payload to the shared agent blackboard with automatic TTL expiration." The ephemeral/TTL framing and the write verb clearly distinguish it from sibling tools scratchpad_get, scratchpad_lock, and scratchpad_unlock without needing to inspect their schemas. The hierarchical namespace and write-key mentions add further scope precision.

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 clear context: "Ideal for multi-agent workflows passing intermediate state without spinning up dedicated databases." This tells an agent when to reach for the tool, but it never explicitly names alternatives or exclusion conditions (e.g., use scratchpad_get to read back, or scratchpad_lock for strict single-writer access), so the routing guidance is left partially to inference.

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