Skip to main content
Glama

Recall

recall
Read-only

Search persistent project memory by keywords to retrieve decisions, conventions, related entities, and dated global facts before starting tasks.

Instructions

Search memory by keywords: graph entities with their dated facts, linked entities as related, and matching notes. Matching ignores accents, finds word starts and stems, and falls back to parts of words; it is not meaning-based, so search with the words, synonyms and both languages the facts would use. Includes global facts. Start work with this.

Input Schema

NameRequiredDescriptionDefault
limitNoDefault 10
queryYes
entity_typeNo
all_projectsNoSearch every project, not just this one

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.2.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnlyHint true, openWorldHint false), and the description goes further by disclosing matching behavior — accent-insensitive, word-prefix and stem matching, parts-of-word fallback, and that it is not meaning-based. It also notes global facts are included, which materially affects result expectations. It stops short of describing result volume or ranking.

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 dense sentences, front-loaded with what the tool returns and followed by matching semantics and usage advice; every sentence carries information. The 'Start work with this' directive would land better at the front than buried at the end, but nothing is wasted.

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?

For a search tool with no output schema, the description adequately characterizes the return shape (entities with dated facts, related entities, notes) and the matching model an agent must understand to get useful results. Only the entity_type filter remains unexplained, a minor gap in an otherwise self-sufficient definition.

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?

With only 50% schema coverage, the description does compensate for the undocumented required 'query' parameter by explaining how to formulate it (words, synonyms, both languages). However, the 'entity_type' parameter with its eight enum values is never addressed, and the relationship of 'all_projects' to the stated 'Includes global facts' scope is left implicit.

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 and resource ('Search memory by keywords') and spells out what the result set contains: graph entities with dated facts, linked entities as related, and matching notes, plus global facts. It does not explicitly differentiate itself from plausible siblings such as what_do_i_know or get_context, which keeps it off a 5.

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?

It gives clear entry-point guidance ('Start work with this') and explains the query strategy needed because matching is lexical, not semantic ('search with the words, synonyms and both languages the facts would use'). That is actionable context, though no explicit 'use X instead when Y' routing against the sibling tools is provided.

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