Skip to main content
Glama

Save a fact to the user’s memory

cortex_remember
Idempotent

Persist a fact, decision or conclusion into the memory, attributed to you. It becomes retrievable via cortex_ask immediately, in this session and every future one, from any agent the user has connected. Provenance: pass source_universal_ids from a previous cortex_ask so the fact links to its evidence. Keep each memory to ONE self-contained fact. Use this whenever the conversation produces a durable conclusion the user would want remembered — a decision, a preference, an outcome, a commitment. If the result carries choice.choice_required: true, the memories source is waiting for the user’s enrichment choice: ask choice.question, offer exactly "Standard" or "Describe your goal", and record the answer with cortex_choose_enrichment.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
kindNoe.g. 'decision', 'observation', 'task-outcome'.
textYesThe fact or conclusion itself — one self-contained statement.
confidenceNo0..1, weights the provenance edges.
source_universal_idsNoUniversal ids from a previous cortex_ask that this fact came from.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond the annotations: it discloses immediate retrievability ('in this session and every future one, from any agent the user has connected'), the provenance-linking expectation, the one-fact-per-memory constraint, and the conditional `choice.choice_required` follow-up flow with required answer options. This is rich behavioral context an annotation-only view would miss.

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?

Front-loaded with the core action, then usage, then the edge-case flow in a logical order. Every sentence carries information, though the final enrichment-handling sentence is dense and slightly extends the length.

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

Completeness5/5

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

For a mutation tool with no output schema but full annotation coverage and 100% schema descriptions, the description compensates by documenting cross-session/cross-agent effects, provenance, and the choice_required return behavior. Nothing critical is left implicit.

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 coverage is 100%, so the baseline is 3, but the description adds real meaning: it explains the purpose of source_universal_ids (link the fact to evidence from cortex_ask) and reinforces the 'one self-contained fact' constraint on text. It stops short of clarifying kind/confidence semantics beyond the schema.

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 and resource ('Persist a fact, decision or conclusion into the memory') with scope (attributed to you) and distinguishes itself from cortex_ask/cortex_recall by describing persistence semantics. An agent can tell exactly what this does without opening the schema.

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?

Gives explicit when-to-use criteria ('whenever the conversation produces a durable conclusion — a decision, a preference, an outcome, a commitment'), names the alternative path for provenance via a previous cortex_ask, and routes the conditional enrichment case to cortex_choose_enrichment.

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