Skip to main content
Glama

smart_memory

Purpose: Team-scoped long-term memory (add, search, get, delete). When to use: Persist or retrieve facts for this team/user across sessions. When NOT to use: World knowledge, one-off page content (use fetch/search), or global encyclopedic answers. Returns: JSON string; shape depends on action. Composes with: smart_search for grounding; smart_pipe template remember.

Input Schema

NameRequiredDescriptionDefault
textNoContent when action=add.
queryNoSearch query when action=search.
top_kNoMax results for search.
actionYesOne of: add, search, get, delete (team-scoped memory).
user_idNoUser scope for memory operations.
messagesNoOptional messages payload for add.
metadataNoOptional metadata for add.
memory_idNoMemory id for get/delete.
thresholdNoSimilarity threshold for search.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4/5.0
Behavior3/5

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

Annotations only declare readOnlyHint=false, so the description must carry the rest. It does state the return type is action-dependent JSON and that memory is team-scoped and cross-session, but it never says that `delete` is irreversible, that writes persist beyond the session, or how scoping interacts with user_id — the highest-risk behaviors go unstated.

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?

Five labeled lines (Purpose / When to use / When NOT to use / Returns / Composes with) with zero filler and the scoping constraint front-loaded. The exclusion and composition lines each earn their place by preventing a specific misuse.

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 the description needn't explain return shapes, and it correctly just flags them as action-dependent. The remaining gap is that only `action` is required, yet the description never says which fields each action demands (e.g., delete needs memory_id, search needs query), leaving room for malformed calls.

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 the schema already documents every parameter including per-action applicability (text for add, query for search, memory_id for get/delete). The description adds nothing about parameters beyond restating the action list, which is the baseline for a fully documented 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?

Opens with a concrete resource and scope ("Team-scoped long-term memory") and enumerates the four supported actions, so the agent knows exactly what surface it operates over. It is distinguishable from smart_fetch/smart_search only indirectly, via the exclusion line, rather than in the purpose statement itself.

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

Usage Guidelines5/5

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

Explicit "When to use" (persist/retrieve facts across sessions) and "When NOT to use" (world knowledge, one-off page content → use fetch/search, global encyclopedic answers), plus a named composition partner (smart_search for grounding). This is exactly the routing guidance an agent needs to avoid misusing a memory tool.

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.