Skip to main content
Glama

memory_search

Search memories semantically or via graph in the active provider to retrieve relevant context for coding agents. Filter by bank or user ID and limit results.

Instructions

Semantic or graph search over memories in the active provider.

Input Schema

NameRequiredDescriptionDefault
bankNoOptional bank / user_id scope
limitNoMax results where supported
queryYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.3

TDQS

C2.7/5.0
Behavior2/5

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

With no annotations, the description carries full burden, and it discloses almost nothing behavioral: not whether the call is read-only (implied only by the verb 'search'), not whether 'active provider' must be configured first, not what happens when the provider doesn't support limits, and not what result shape to expect. One clause about the two search modes is the only added context.

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?

A single front-loaded sentence with no filler or redundancy. It is tight, though the brevity edges into under-specification rather than optimal density.

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

Completeness2/5

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

No output schema and no annotations, so the description must cover more: it should say what a result contains, whether ordering/relevance scores are returned, and how provider selection and limits interact. For a search tool in a nine-sibling memory family, this leaves the agent guessing on core call semantics.

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

Parameters2/5

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

Schema description coverage is only 67%, and the undocumented parameter is the required one: 'query'. The description says search may be 'semantic or graph' but never explains how the query string is interpreted differently in each mode, nor what 'active provider' means for scoping alongside the 'bank' parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific verb (search) and a specific resource (memories), and adds the useful qualifier that it can be semantic or graph-based and operates against the active provider. That distinguishes it from mutating siblings like memory_add or memory_forget, though it doesn't explicitly contrast with the closest alternative, memory_recall.

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

Usage Guidelines2/5

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

There is no guidance on when to choose this over memory_recall, or over memory_reflect/memory_project_scope. The only usage signal is implicit — that it's a query tool — and nothing says when-not to use it or what prerequisites (an active provider, a populated bank) are required.

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