Skip to main content
Glama

memory_append

Append an event record to JOURNAL.jsonl with optional tags. By default, merges near-duplicate entries (≥90% similar or contained) to consolidate memory instead of adding a new one.

Instructions

往 JOURNAL.jsonl 追加一条事件记录。tags 可选,是标签列表。默认先做「巩固」:如果今天已有条目与新内容相似度 ≥90%(或新内容被旧条目包含),就不再新增,而是把新信息并进那条(保留原时间戳、tags 取并集)。merge=False 可强制新增。

Input Schema

NameRequiredDescriptionDefault
tagsNo
textYes
mergeNo

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.1.1
    • addedInput schema / properties / merge
      Added value: +{
      +  "default": true,
      +  "title": "Merge",
      +  "type": "boolean"
      +}
  2. First observedv0.1.0

TDQS

A3.7/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 burden and does well: it discloses that the default path may NOT create a record at all, applies a 90% similarity / substring containment threshold, preserves the original timestamp, and unions tags. These are non-obvious side effects an agent could not infer from the schema. It omits error/failure behavior and file-locking concerns, keeping it below 5.

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?

The purpose is front-loaded in the first clause, then the non-default behavior follows. Roughly three sentences with no filler; the parenthetical about timestamp and tag union is dense but earns its place.

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 mutating append tool with no annotations and an output schema available, the description covers the one genuinely surprising behavior (silent consolidation) and the escape hatch. Return values need not be explained since an output schema exists; only edge-case failure modes are unaddressed.

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 0%, so the description must compensate. It genuinely adds value for 'merge' (spelling out what merging does and how to opt out) and restates that tags is an optional label list, but the required 'text' parameter is never characterized in either place. Partial compensation justifies a middling score.

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?

States a specific verb (追加) and resource (JOURNAL.jsonl 事件记录) with the exact target file, which is concrete and actionable. It does not distinguish itself from the sibling 'memory_update', so an agent must infer the append-vs-update boundary from the name alone.

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?

The description clearly defines the two modes (default consolidation vs merge=False forcing a new entry), which is usable guidance for choosing parameter values. However, it never says when this tool should be chosen over memory_update or memory_search, and no conditions for avoiding the tool are given.

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