Skip to main content
Glama

search_memories

Search memories for exact terms like hostnames, ports, or file paths using BM25 keyword matching. Filter by sector and require all query words.

Instructions

Keyword (BM25) search over all memories: best for exact terms such as hostnames, ports, file paths, names. Works regardless of embedding provider; no side effects.

query: words to look for. sector: optional filter (episodic, semantic, procedural, emotional, reflective). require_all: if true, every query word must appear.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kNo
queryYes
sectorNo
require_allNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A4.4/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 address the key trait by declaring 'no side effects' (a read-only guarantee) plus provider independence. It omits any note on result ordering, scoring, or how k interacts with the result set, which keeps it short of a 5.

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?

Purpose and the key differentiator are front-loaded in the first sentence, followed by a tight per-parameter walkthrough. No filler sentences; every line adds information the agent needs.

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?

Return shape is covered by the existing output schema, so the description only needs selection and invocation guidance, which it largely provides. The only gap is the meaning of k and whether results are ranked or truncated.

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 description coverage is 0%, so the description must compensate, and it documents three of four parameters — query, sector (including the valid enum values not present in the schema), and require_all. Only k is left undocumented, a minor gap for an obvious result-count parameter.

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?

States a specific verb+resource ('Keyword (BM25) search over all memories') and immediately scopes it against the embedding-based sibling by noting it works regardless of embedding provider. An agent can distinguish it from semantic_search without opening either 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?

Gives clear when-to-use guidance ('best for exact terms such as hostnames, ports, file paths, names'), which is a precise trigger condition. It does not explicitly name semantic_search as the contrasting alternative, but the BM25 framing makes the routing obvious.

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