Skip to main content
Glama
Phygital-Brain

phygital-memory

Official

append_to_note

Append text to the end of an existing note while leaving the rest unchanged, identified by path or id. Use it for logs, journals, and running lists.

Instructions

Add text at the end of an existing note, leaving the rest unchanged. Name the note by path (best for several edits in a row) or by a search or handed id. Use it for logs, journals and running lists; use replace_in_note to change text already there, and create_note when the note does not exist yet (this tool fails then). Needs Allow edits; each save makes a version, and the person can undo it in the app. Returns the saved path.

Input Schema

NameRequiredDescriptionDefault
idNoA search_notes or handed note id. Or leave empty and give path.
pathNoThe note's path, like 'Projects/plan.md'. It stays valid after edits, unlike a search id.
textYesText to add at the end of the note.
folderNoWhich unlocked folder (its name, from status). Leave empty when only one is open.
privateNoTrue only when the person asked, in this chat, for something in a folder they keep private.

Output Schema

NameRequiredDescriptionDefault
resultYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.7/5.0
Behavior5/5

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

Goes well beyond the annotations by disclosing that the operation needs Allow edits, creates a version on each save, and can be undone by the person in the app. It also states the failure mode for missing notes and that the saved path is returned, which meaningfully informs safe invocation.

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?

The description is front-loaded with the core action and then packs usage, alternatives, permissions, versioning, and return value into a compact paragraph. Every sentence contributes useful selection or invocation context.

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?

Given a five-parameter mutation tool with annotations and an output schema, the description covers the key behavioral details an agent needs: permission requirements, versioning/undo behavior, failure when the note is missing, and return value. Nothing important is omitted for correct tool selection or invocation.

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 parameters are already well documented. The description adds a small amount of routing guidance by saying path is best for several edits in a row and that ids can come from search or handoff, but it does not explain folder or private semantics beyond what the schema provides.

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: add text at the end of an existing note while leaving the rest unchanged. It clearly distinguishes itself from replace_in_note and create_note, so an agent can identify the correct tool 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?

Explicitly names suitable use cases such as logs, journals, and running lists, and routes the agent to replace_in_note for editing existing text and create_note when the note does not exist. It also notes that this tool fails when the note is absent, which is a useful boundary condition.

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