Skip to main content
Glama

Search memories with filters

memory_search_advanced
Read-onlyIdempotent

Searches saved memories with several filters at once: projects, types, minimum importance and a date range (date_from / date_to, ISO dates). An empty query returns the filtered memories sorted by importance. limit caps the results (max 30).

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "memory_search_advanced"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNo
queryNo
typesNo
date_toNo
projectsNo
date_fromNo
importance_minNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.7/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, destructiveHint=false and openWorldHint=false, so the safety profile is covered. The description adds real behavioral value beyond that: the empty-query fallback behavior, the importance-based sort order, and the hard cap of 30 on `limit`. It still omits whether filters combine as AND or OR and what fields each returned memory contains.

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?

Three compact sentences with the resource and filter list front-loaded and no filler. Minor redundancy between the title-echoing opening and the tool name, but every sentence contributes concrete 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?

For a 7-parameter search tool with no output schema and 0% schema coverage, the definition covers most parameters but leaves two important gaps: filter combination logic (AND vs OR) and what a returned memory looks like or how results are ranked when a query is non-empty. Adequate to call correctly in the common case, but not complete.

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 carries the full burden and largely meets it: it names projects, types, importance_min, date_from/date_to, and `limit`, adds the ISO date format convention and the max-30 ceiling, and explains the empty-string `query` default. What remains unexplained is the interaction between `query` and the filters, and whether `types` values are free-form or from a fixed vocabulary.

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 gives a specific verb and resource ("Searches saved memories") and names the filter dimensions it accepts: projects, types, importance_min, date_from/date_to. The phrase "with several filters at once" hints at how it differs from the simpler memory_search sibling, but it never names that sibling or states the dividing line explicitly.

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 context is only implied by "several filters at once" and "empty query returns the filtered memories" — an agent can infer this is for multi-filter retrieval, but there is no explicit when-to-use statement, no exclusion, and no pointer to memory_search or memory_list for simpler cases.

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.

Resources