Skip to main content
Glama

Agent memory, list keys: what a namespace holds

memory_list
Read-only

List up to 100 keys saved in your namespace, optionally only those starting with a prefix, with their size, save time and expiry; pass the returned cursor for the next page. Values are not included (read them with /memory/get). Values are kept until they expire (at most 30 days) or are deleted; reads anywhere may lag a write made elsewhere by up to a minute. Use to see what an agent has saved. Example: namespace=demo-agent-memory-7f3c9a21. Price $0.002/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input Schema

NameRequiredDescriptionDefault
cursorNoThe cursor from the previous page of this list
prefixNoOnly keys that start with this text
namespaceYesYour namespace: a secret of 16 to 128 letters, digits, - or _ that you choose and reuse. Anyone who knows it can read and write it, so treat it like a password; send it in a POST body to keep it out of URLs.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: page size cap (100), cursor chaining, fields returned (size, save time, expiry), a 30-day TTL, and a read-after-write lag of up to a minute. It also explains the billing model and that repeat calls are charged, which is exactly the context an agent needs to avoid wasteful polling, and it is consistent with readOnlyHint=true and idempotentHint=false.

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

Conciseness4/5

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

Front-loads what is listed and what is excluded, then pagination, then lifetime/lag, then pricing — a sensible order. The pricing clause is long and somewhat dense ('$0.002/call via x402 USDC or a card key...') but each sentence carries operational information.

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

Completeness5/5

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

There is no output schema, and the description compensates by naming the returned fields and explicitly stating values are omitted. With pagination, TTL, consistency lag, and cost all covered, an agent has everything needed to call this repeatedly and correctly.

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 behavior not in the schema: prefix restricts keys to those starting with the text, and the cursor is explicitly 'the returned cursor for the next page', clarifying the pagination contract. Namespace semantics (secret, password-like) remain in the schema only.

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+scope: 'List up to 100 keys saved in your namespace', and immediately distinguishes itself from memory_get by stating values are not included. An agent can tell it apart from memory_set/memory_get/memory_delete without opening any schema.

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?

'Use to see what an agent has saved' gives a positive trigger and it explicitly routes to /memory/get for values, which is the main alternative an agent would consider. It lacks an explicit 'do not use this for X' exclusion (e.g., content retrieval versus deletion), so it is clear but not fully exhaustive.

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.