Skip to main content
Glama

update

Destructive

Replace an existing fact or page metadata, or repair a repairable page using its current version. Apply changes in a batch and reuse returned snapshots and receipts without extra verification.

Instructions

Replace an exact Fact with an optional page description, update page metadata alone, or mechanically repair a repairable page using its latest version. On applied, reuse returned Page Snapshots and receipts; do not verify with read or list.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
operationsYesExact updates validated as one batch; each path must be unique.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.7.2
    • addedInput schema / $defs / UpdateFactOperation / properties / description
      Added value: +{
      +  "anyOf": [
      +    {
      +      "maxLength": 80,
      +      "type": "string"
      +    },
      +    {
      +      "type": "null"
      +    }
      +  ],
      +  "default": null,
      +  "description": "Replacement page description to apply with the Fact update.",
      +  "title": "Description"
      +}
  2. Changed10 schema fields changedv0.7.0
    • changedInput schema / $defs / Fact / properties / basis / description
      Previous value: -"Evidence basis: stated for the user's explicit statement; observed only where the Agent Contract permits a repeated behavioral observation."New value: +"Evidence basis: stated for the user's explicit statement; observed for Agent derivation or inference from current visible material."
    • changedInput schema / $defs / Fact / properties / content / maxLength
      Previous value: -4096New value: +800
    • addedInput schema / $defs / FactSelector
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "basis": {
      +      "description": "Evidence basis: stated for the user's explicit statement; observed for Agent derivation or inference from current visible material.",
      +      "enum": [
      +        "stated",
      +        "observed"
      +      ],
      +      "title": "Basis",
      +      "type": "string"
      +    },
      +    "content": {
      +      "description": "Exact basis and content copied from an existing Page Snapshot.",
      +      "maxLength": 4096,
      +      "title": "Content",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "basis",
      +    "content"
      +  ],
      +  "title": "FactSelector",
      +  "type": "object"
      +}
    • addedInput schema / $defs / RepairPageOperation
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "if_version": {
      +      "description": "Opaque version from the latest Page Snapshot of this page; pass unchanged.",
      +      "title": "If Version",
      +      "type": "string"
      +    },
      +    "path": {
      +      "description": "Canonical existing page path from the current Route Catalog.",
      +      "title": "Path",
      +      "type": "string"
      +    },
      +    "target": {
      +      "const": "repair",
      +      "description": "Mechanically canonicalize one repairable page without semantic edits.",
      +      "title": "Target",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "path",
      +    "if_version",
      +    "target"
      +  ],
      +  "title": "RepairPageOperation",
      +  "type": "object"
      +}
    • changedInput schema / $defs / UpdateFactOperation / properties / old_fact / $ref
      Previous value: -"#/$defs/Fact"New value: +"#/$defs/FactSelector"
    • changedInput schema / $defs / UpdatePageOperation / properties / aliases / anyOf
      Previous value: -[
      -  {
      -    "items": {
      -      "type": "string"
      -    },
      -    "maxItems": 8,
      -    "type": "array"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "items": {
      +      "type": "string"
      +    },
      +    "maxItems": 6,
      +    "type": "array"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • changedInput schema / $defs / UpdatePageOperation / properties / description / anyOf
      Previous value: -[
      -  {
      -    "type": "string"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]New value: +[
      +  {
      +    "maxLength": 80,
      +    "type": "string"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / operations / items / discriminator / mapping / repair
      Added value: +"#/$defs/RepairPageOperation"
    • changedInput schema / properties / operations / items / oneOf
      Previous value: -[
      -  {
      -    "$ref": "#/$defs/UpdateFactOperation"
      -  },
      -  {
      -    "$ref": "#/$defs/UpdatePageOperation"
      -  }
      -]New value: +[
      +  {
      +    "$ref": "#/$defs/UpdateFactOperation"
      +  },
      +  {
      +    "$ref": "#/$defs/UpdatePageOperation"
      +  },
      +  {
      +    "$ref": "#/$defs/RepairPageOperation"
      +  }
      +]
    • changedInput schema / properties / operations / maxItems
      Previous value: -20New value: +15
  3. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

The description adds behavior beyond the destructiveHint annotation: replacements are exact and version-based, repair is mechanical, and returned receipts/snapshots are authoritative so read/list verification is discouraged. It avoids contradicting the annotation set.

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 dense sentences with no filler. The first sentence front-loads the three operation modes and the second adds a concise workflow directive. Every clause earns its place.

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?

The description orients the agent to all three operation types and the post-invocation behavior, while the rich schema and output schema cover parameter detail and return values. No critical calling information is missing for an agent to invoke update correctly.

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 schema already documents parameters and operation discriminators in detail. The description reinforces 'exact Fact', 'latest version', and optional description, but adds no new parameter-level constraints; baseline 3 is appropriate.

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 names specific operations and resources: replacing an exact Fact, updating page metadata, and mechanically repairing a page. This clearly separates the tool's three target modes and distinguishes it from generic sibling names like create, rename, or delete.

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?

The description gives clear operational context: updates target existing exact Facts/page metadata, and after success the agent should reuse returned Page Snapshots and receipts rather than verify with read or list. It does not explicitly contrast update with create/add/rename/delete, but the post-invocation guidance and mode list make the intended usage fairly clear.

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