Skip to main content
Glama

memory_admit

Check a new fact against an existing memory store before saving it. Returns accepted, requires_review, or rejected status, conflicting fact IDs, and a supersede edit to resolve conflicts.

Instructions

Write-path gate: check one incoming fact against a memory store before persisting it. Returns accepted / requires_review / rejected, the stable ids of the store facts it disagrees with, and the supersede edit that would resolve the conflict.

Input Schema

NameRequiredDescriptionDefault
factYesthe fact to admit; flexible keys (fact/text/claim, date/observed_at, entity/subject, source, slot/value)
storeYespath to the memory store file

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4/5.0
Behavior4/5

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

With no annotations, the description carries the full behavioral burden and does much of it well: it discloses the verdict vocabulary (accepted/requires_review/rejected) and the payload (conflicting stable ids, a supersede edit). It does not explicitly state whether 'accepted' means the tool itself persists the fact or the caller does, which is the one behavioral ambiguity left.

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?

Two sentences, zero filler. The role ('Write-path gate') is front-loaded, followed by the operation and then the return contract, which is exactly the order an agent needs.

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?

With no output schema, the description compensates by enumerating the three verdicts and the conflict/supersede payload, which is enough to act on the result. The only gap is the post-'accepted' workflow — whether it writes or hands off — which an agent calling this in a write path would want to know.

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% and both parameters (fact, store) are documented in the schema, including the flexible key set, so the description need not re-explain them. The description adds only that exactly one fact is checked per call, which is marginal beyond the schema baseline of 3.

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 precise verb+resource ('check one incoming fact against a memory store') and frames it as a 'write-path gate', which tells the agent the exact role this plays in a write flow. It does not, however, distinguish itself from the sibling memory_lint, so the agent must infer the boundary between the two.

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?

'check one incoming fact ... before persisting it' gives a clear condition of use: this is the pre-write validation step. There are no explicit exclusions or alternatives named (e.g. when to prefer memory_lint), so it stops short of full routing guidance.

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

Deploy Server

Other Tools