Skip to main content
Glama

Update Note

update_note
Destructive

Updates an existing note in Apple Notes. Change the title and/or body (the body accepts Markdown, converted to Apple Notes' native formatting). Find note_id with list_notes or search_notes. A new body keeps the current one first, in LMCP's own folder, and the answer says where (previous_version); without Full Disk Access no copy can be kept and the call returns a preview: pass confirm=true to replace the body anyway.

Input Schema

NameRequiredDescriptionDefault
bodyNoNew body, replacing the current one. Accepts Markdown, converted to Apple Notes' native formatting. Check body_format from read_note before writing a body back.
titleNoNew title. Leave it out to keep the current one.
confirmNoSet to true to actually apply the change. Defaults to false.
note_idNoId of the note to change, from list_notes or search_notes. Use this or note_name.
note_nameNoTitle of the note to change, when you do not have its id. Use this or note_id.

Output Schema

NameRequiredDescriptionDefault
idNo
nameNo
updatedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed5 schema fields changed
    • addedInput schema / properties / body / description
      Added value: +"New body, replacing the current one. Accepts Markdown, converted to Apple Notes' native formatting. Check body_format from read_note before writing a body back."
    • addedInput schema / properties / confirm / description
      Added value: +"Set to true to actually apply the change. Defaults to false."
    • addedInput schema / properties / note_id / description
      Added value: +"Id of the note to change, from list_notes or search_notes. Use this or note_name."
    • addedInput schema / properties / note_name / description
      Added value: +"Title of the note to change, when you do not have its id. Use this or note_id."
    • addedInput schema / properties / title / description
      Added value: +"New title. Leave it out to keep the current one."
  2. Changed5 schema fields changed
    • removedInput schema / properties / body / description
      Removed value: -"New body, replacing the current one. Accepts Markdown, converted to Apple Notes' native formatting. Check body_format from read_note before writing a body back."
    • removedInput schema / properties / confirm / description
      Removed value: -"Set to true to actually apply the change. Defaults to false."
    • removedInput schema / properties / note_id / description
      Removed value: -"Id of the note to change, from list_notes or search_notes. Use this or note_name."
    • removedInput schema / properties / note_name / description
      Removed value: -"Title of the note to change, when you do not have its id. Use this or note_id."
    • removedInput schema / properties / title / description
      Removed value: -"New title. Leave it out to keep the current one."
  3. Changed5 schema fields changed
    • addedInput schema / properties / body / description
      Added value: +"New body, replacing the current one. Accepts Markdown, converted to Apple Notes' native formatting. Check body_format from read_note before writing a body back."
    • addedInput schema / properties / confirm / description
      Added value: +"Set to true to actually apply the change. Defaults to false."
    • addedInput schema / properties / note_id / description
      Added value: +"Id of the note to change, from list_notes or search_notes. Use this or note_name."
    • addedInput schema / properties / note_name / description
      Added value: +"Title of the note to change, when you do not have its id. Use this or note_id."
    • addedInput schema / properties / title / description
      Added value: +"New title. Leave it out to keep the current one."
  4. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the annotations, the description discloses important behavior: Markdown is converted to native formatting, a previous body copy is kept in LMCP's own folder and referenced as previous_version, and missing Full Disk Access changes the outcome to a preview requiring confirm=true. These are exactly the side effects and permission-dependent behaviors an agent needs to know.

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 description is appropriately sized and front-loads the core action. The final sentence is dense but carries necessary edge-case behavior about versioning and confirm.

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 the available output schema, annotations, and 100% parameter description coverage, the description covers the critical behavioral gaps: Markdown conversion, version preservation, Full Disk Access limitations, and the confirm workflow.

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 parameter schema already explains note_id, note_name, title, body, and confirm. The description reinforces some semantics such as Markdown handling and note_id lookup, but adds only limited meaning beyond what is already in 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?

The description uses a specific verb and resource: it updates an existing note in Apple Notes. It clearly distinguishes an update operation from creation, deletion, and read/search operations by naming the resource and the intended action.

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?

It gives clear usage context: find the note_id with list_notes or search_notes, and use confirm=true when replacing a body without Full Disk Access. It does not explicitly mention create_note or delete_note as alternatives, but the update-only scope is clear.

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