Skip to main content
Glama

Restore an entry to an earlier revision

restore_entry_revision
Destructive

Put an entry back as it was at one of its revisions (get_entry_admin → history: a ref_id like "r123" with restorable: true; imported legacy revisions cannot be restored). It is a new revision, so it can itself be undone. Needs the right to edit the entry. To ask a reviewer instead, use propose_entry_revert. Audited. Dry run by default.

Input Schema

NameRequiredDescriptionDefault
entryYesThe entry: its VHID (11 digits), its short name (as in verifiedhandles.org/<short>), or its Wikidata QID (Q42).
dry_runNotrue (the default): write nothing — show the change and the exact request it would send. false: make the change.
summaryNoWhy you made this edit, in a few plain words; shown in the entry’s public history. At most 200 characters. Never an internal tracking ID (a backlog or ticket number); a VHID is fine.
revisionYesThe revision’s ref_id, e.g. "r123".

Output Schema

NameRequiredDescriptionDefault
noteNoA dry run: what to do next to make the change, in words.
resultNoA real run: the route’s own answer, where the tool adds facts of its own beside it.
confirmNoA dry run of a change that needs it: the exact target to send back as `confirm` with dry_run: false.
dry_runNotrue: a dry run, which wrote nothing. Absent from a real run.
replayedNoA real run with an idempotency_key already used for this change: the first call’s answer, given back; nothing was written now.
would_sendNoA dry run: the exact request the real run would send (`method`, `path`, any `headers` such as an Idempotency-Key, and its `body`, `form` or `query`), or the requests, in order.
may_edit_liveNoA dry run of a live edit: whether this key’s account may edit this entry live.
refused_becauseNoA dry run the real run would be refused for: why, in words.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well past the annotations (destructiveHint=true, idempotentHint=false) by explaining that the restore is itself a new revision and therefore undoable, that it requires edit rights, that it is audited, and that it defaults to a dry run. The 'imported legacy revisions cannot be restored' constraint is behavioral knowledge available nowhere else. No contradiction with the destructive hint — the write is real, just recoverable.

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?

Front-loaded with the core action, then preconditions, alternative, and defaults. Dense and every clause carries information, though the parenthetical dependency chain plus the trailing short sentences make it a touch cluttered rather than maximally tight.

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?

An output schema exists so return values need no explanation; the description covers everything else an agent needs — permission, revision precondition, restorability limits, alternative tool, dry-run default, and undoability. Nothing material is missing for a 4-param destructive mutation.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3, but the description adds meaning beyond the schema: where the `revision` value comes from (get_entry_admin history), its accepted shape and the `restorable: true` gating flag, and the dry-run/undo semantics of the operation. That is real value over the schema text.

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 precise verb+resource+scope: 'Put an entry back as it was at one of its revisions.' It distinguishes itself from the sibling propose_entry_revert and from the read-only get_entry_admin/history it depends on, so an agent can route correctly without opening any 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?

Gives the exact precondition chain (get_entry_admin → history, look for a ref_id with restorable: true), an explicit exclusion (imported legacy revisions cannot be restored), required permission (right to edit the entry), and a named alternative with its selecting condition ('To ask a reviewer instead, use propose_entry_revert').

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.