Skip to main content
Glama

search_memory

Retrieve semantically similar past documents or scenarios from a vector database by query, with optional payload filters and collection targeting.

Instructions

Search the vector DB for past documents/scenarios semantically similar to a query.

filter is an optional payload filter, as a JSON string or object (e.g.
'{"tags": ["x"]}' — only items whose tags field contains "x").
List values use MatchAny, scalars use exact match, and multiple
conditions are AND-ed. On parse failure the search runs without a filter
and a warning is returned alongside the results.
If collection is given, the search runs there (default: the
server-configured collection).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNo
queryYes
filterNo
collectionNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.7/5.0
Behavior4/5

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

With no annotations, the description carries the behavioral burden and does so well: it discloses that a filter parse failure degrades to an unfiltered search with a warning returned alongside results, and that an omitted collection falls back to the server-configured one. It does not state the read-only nature explicitly or discuss result ordering/pagination, but for a search operation the disclosed failure-mode behavior is the valuable part.

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?

The core purpose is front-loaded in one sentence, followed by tightly scoped paragraphs on filter and collection. The filter explanation is dense but every clause adds operative detail; nothing reads as filler, though the parenthetical example is slightly verbose.

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?

An output schema exists, so return values need not be described, and the description covers the two parameters whose semantics are non-obvious plus the error path. The only meaningful gap is the undocumented 'limit' behavior, which an agent would have to guess from the default of 3.

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 0%, so the description must compensate. It does an excellent job on 'filter' (JSON string or object, MatchAny for lists, exact match for scalars, AND-ed conditions) and covers the 'collection' default, but 'limit' is never explained and 'query' is left to the obvious. Roughly half the parameters get added meaning beyond the bare schema.

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 opens with a specific verb and resource: 'Search the vector DB for past documents/scenarios semantically similar to a query.' That is unambiguous and clearly distinct from the save/delete/update siblings. It does not explicitly name an alternative for the list_collections style use case, so it stops short of full sibling differentiation.

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

Usage Guidelines3/5

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

Usage is implied through the filter and collection mechanics, which tells an agent when those parameters matter, but there is no explicit 'use this instead of X when Y' guidance and no exclusions. An agent must infer that this is the retrieval entry point rather than being told.

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