Skip to main content
Glama

undo document changes

undo_studio_document_changes
DestructiveIdempotent

Undo these exact applied changes. Disjoint later edits survive; overlapping newer edits return a conflict. Only undo when requested. Use workspace_id from the authorized Film, Series or GenAds directory. Reuse request_key only for the same exact request.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "document_id": "<document_id>",
      "change_ids": "<change_ids>",
      "workspace_id": "<workspace_id>",
      "request_key": "<request_key>"
    },
    "name": "undo_studio_document_changes"
  }
}

Input Schema

NameRequiredDescriptionDefault
season_idNo
change_idsYes
document_idYes
request_keyYes
workspace_idYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true and idempotentHint=true, but the description goes further with non-obvious semantics: disjoint later edits survive while overlapping newer edits raise a conflict. That is exactly the kind of partial-failure behavior an agent cannot infer from annotations. It leaves the failure shape (conflict surfaced as error vs. partial response) to the output schema.

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?

Four short sentences, front-loaded with the operation and its conflict semantics before the guardrail and parameter notes. No filler. The workspace_id sentence is slightly vague about what makes a directory "authorized," but nothing is wasted.

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?

An output schema exists, so return values need not be described, and annotations cover the destructive/idempotent profile. The description supplies the conflict model and key-reuse rule that make a destructive multi-change rollback safe to invoke. Remaining gap is scoping detail for change_ids and season_id on a five-parameter tool.

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 coverage is 0%, so the description carries the burden and it only partially meets it: it explains where workspace_id must come from (the authorized Film, Series or GenAds directory) and the reuse contract for request_key. document_id, change_ids and especially season_id receive no explanation at all, so an agent still has to guess at ordering, scoping and why season scoping exists.

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?

"Undo these exact applied changes" gives a specific verb plus a specific resource, and the tool name disambiguates it from the apply/edit siblings in the same family. It does not explicitly name apply_studio_document_edits as the counterpart operation, so an agent must infer the pairing from naming convention.

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?

"Only undo when requested" is an explicit when-not clause that prevents speculative rollbacks, which is the main misuse risk for this tool. Guidance on reusing request_key only for the identical request is also actionable. It stops short of naming which sibling to use when a change was never applied or when a plain re-edit is preferred.

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