Skip to main content
Glama

memory_search

Read-only

Find memories using hybrid vector and keyword search, with filters for scope, department, tags, date range, and temporal decay.

Instructions

Search memories using hybrid vector+keyword search. Finds semantically similar content and exact keyword matches, with optional filters for scope, department, tags, date range, and temporal decay.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
queryYesSearch query — supports natural language for semantic search and keywords for exact matching
scopeNoMemory scope for isolation
namespaceNoNamespace within scope (e.g., project name, team name)
departmentNoDepartment (e.g., legal, engineering, hr, sales, finance)
document_typeNoType of document (e.g., contract, policy, code, incident, decision)
access_levelNoAccess classification level
languageNoContent language (ISO 639-1 code)
tagsNoFilter to memories containing ALL specified tags
limitNoMaximum results to return
offsetNoSkip this many results for pagination
search_modeNoSearch mode: hybrid (vector+keyword), vector only, or keyword onlyhybrid
temporal_decayNoApply time-based decay to favor recent memories
date_fromNoFilter: only memories created at/after this full ISO-8601 timestamp (e.g. 2026-03-01T00:00:00Z)
date_toNoFilter: only memories created at/before this full ISO-8601 timestamp (e.g. 2026-03-31T23:59:59Z)
min_confidenceNoMinimum confidence score threshold (0-1)
min_groundednessNoMinimum TRUST threshold (0-1), distinct from min_confidence (relevance). Drops results whose groundedness — stored confidence_score + provenance tier + recency — is below this. Use to demand well-sourced memories.
as_ofNoISO 8601 point-in-time: return memories that were valid at this instant (bi-temporal). Defaults to currently-valid memories when omitted. Must be a full ISO-8601 timestamp (date + time + zone); a date-only or non-padded value is rejected to avoid a silently-wrong lexicographic slice.
use_graphNoEnable HippoRAG multi-hop recall: seed the entity graph from the query and fuse Personalized PageRank as a third ranker, surfacing memories connected through entities (associative recall) that pure vector+keyword search misses. Default false.
rerankNoEnable local cross-encoder reranking: reorder the top candidates by joint (query, document) relevance using a cross-encoder model — the biggest precision win over the bi-encoder base embedder. Slower (runs a model per candidate) and lazy-loads the model on first use. Defaults ON at the MCP server (precision matters more than latency for agent recall); pass false to skip. Left unset, programmatic callers do not rerank.
rerank_top_nNoHow many top candidates to rerank when "rerank" is true (default 50). Higher = better recall coverage but slower.
detail_levelNoControls response detail: "summary" returns titles + snippets (default, saves tokens), "full" returns complete content, "ids_only" returns just IDs and titles for browsingsummary
max_tokensNoApproximate maximum response size in tokens (~4 chars per token). Results are truncated to fit within budget. Applies after detail_level projection.
Behavior5/5

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

The description discloses key behaviors beyond the annotations (readOnlyHint, openWorldHint): it mentions the hybrid search strategy, optional filters (scope, department, tags, date range, temporal decay), and the fact that it uses vector and keyword matching. This is comprehensive given the tool's complexity, with no contradictions to annotations.

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 description is two short sentences that immediately state the tool's core function and then list major filtering dimensions. It is front-loaded and efficient, but could be slightly more structured (e.g., bullet points) to improve readability for the agent. No extraneous information.

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

Completeness3/5

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

Given the high schema coverage, the description adequately covers the primary purpose and major filters. However, it omits mention of important advanced features like graph-based recall (use_graph), reranking, and detail levels, which are defined only in the schema. Without output schema, the description could also clarify return format. It is sufficient but not exhaustive.

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 every parameter has a schema description. The tool description adds minimal parameter-specific value beyond listing categories of filters. It does not elaborate on less obvious parameters like min_groundedness, as_of, or use_graph, which are well-documented in the schema. Baseline 3 is appropriate.

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 clearly states the tool searches memories using hybrid vector+keyword search. It specifies the capabilities (semantic and keyword matching) and optional filters. However, it does not distinguish this tool from sibling search tools like memory_query or memory_query_structured, which could cause ambiguity for an AI agent.

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?

No explicit guidance is provided on when to use this tool versus the many sibling tools (e.g., memory_query, memory_query_structured). The description only lists capabilities but does not include contextual clues like 'use this for ad-hoc semantic search' or 'prefer memory_query for structured queries'. This forces the agent to infer usage from the name alone.

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

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/YonasValentin/mcp-memory-graph'

If you have feedback or need assistance with the MCP directory API, please join our Discord server