Skip to main content
Glama

Search memory

search_memory
Read-only

Search the user's Working Memory for relevant past notes and facts. Use this when the user references something they may have stored earlier, or to find related context before answering. Always include your conversation id in client.conversation_id.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kNoMax results (1–20). Defaults to a sensible value.
queryYesSemantic query.
clientNoContext about the CURRENT client session. Pass your conversation/thread id as `conversation_id` — it identifies this session for cross-session memory instrumentation and does NOT filter results (use the top-level `conversation_id` parameter for filtering).
dedupe_recentNoOptional. When false, semantic matches that are also recent are still returned in `relevant` (raw semantic results rather than RAG-deduped). Defaults to true.
conversation_idNoOptional. Restrict results to notes stamped with this conversation_id at save_memory time. Empty / whitespace-only values are treated as absent.

TDQS

A4.2/5.0
Behavior4/5

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

The description adds a key behavioral requirement: 'Always include your conversation id in client.conversation_id.' This goes beyond the readOnlyHint annotation, which already signals safety. The description also clarifies the tool operates on 'past notes and facts' in Working Memory. No contradiction with annotations.

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?

Two concise sentences that front-load the purpose and usage. Every sentence adds value: the first states what it does, the second gives when-to-use and a critical parameter instruction. No redundancy or filler.

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 read-only search tool with full schema coverage and no output schema, the description covers purpose, usage, and the required conversation_id. It doesn't explain return format or dedup behavior, but these are secondary given the tool's simplicity and the readOnlyHint annotation.

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

Parameters3/5

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

Schema description coverage is 100%, so each parameter is fully described in the schema. The description reinforces the importance of client.conversation_id but doesn't provide additional semantic detail beyond the schema (e.g., query syntax, format of conversation_id).

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 description clearly states the verb 'Search' and the resource 'the user's Working Memory' for relevant past notes and facts. It distinguishes itself from sibling tools (capture_memory, save_memory, manage_memory) which are write-oriented, by explicitly focusing on retrieval.

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?

It provides explicit guidance on when to use the tool: 'Use this when the user references something they may have stored earlier, or to find related context before answering.' It doesn't explicitly mention when not to use or alternatives, but the context is clear enough for an agent to differentiate.

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.

TDQS

A4.4/5.0
Disambiguation4/5

Each tool has a distinct primary purpose: capture for automated extraction, save for explicit storing, search for retrieval, and manage for deletion. However, capture_memory and save_memory both write to memory and could be confused, though their descriptions clarify the different use cases.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern with 'memory' as the object (capture_memory, manage_memory, save_memory, search_memory). This makes the API predictable and easy to navigate.

Tool Count5/5

Four tools is well-scoped for a working memory server. Each tool covers a necessary operation (write, search, manage) without bloat or redundancy.

Completeness4/5

The core memory lifecycle is covered: saving, searching, and deleting. A notable gap is the lack of an update/edit operation, but users can work around it by saving a new memory and deleting the old one.

Resources