Skip to main content
Glama

Revert asset to a version

revert_asset
DestructiveIdempotent

Revert an asset to a prior version by version_number. Requires a write-scope token and versioning enabled on the workspace plan. A content-changing revert does NOT move the head back to N — it snapshots the current head as a new REVERT version and rotates the bytes to the target, so head_version_number moves FORWARD (old head + 1). A revert whose target content already matches the current head is a no-op (no new version, head unchanged) — this also covers a client-timeout retry of a just-completed revert. Note head_version_number is the next, not-yet-assigned number, so passing version_number equal to it is a benign no-op; the newest stored version is head_version_number − 1. On Free/Pro plans, reverting to a version older than the revert window is refused (revert_window_exceeded). Call list_asset_versions first to pick a valid, revertable version_number.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tokenYesAsset token
commentNoOptional note recorded on the snapshot of the replaced head
organizationNoWorkspace slug, as returned by list_organizations. Omit it when the account has a single workspace — it is then resolved from your token. Pass it only when the account has several, or when you mean a workspace other than the obvious one.
version_numberYesVersion to revert to (>= 1, from list_asset_versions)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed3 schema fields changed
    • addedInput schema / additionalProperties
      Added value: +false
    • removedInput schema / properties / context
      Removed value: -{
      -  "description": "Explain why you are calling this tool and how it fits into the user's overall goal. This parameter is used for analytics and user intent tracking. YOU MUST provide 15-25 words (count carefully). NEVER use first person ('I', 'we', 'you') - maintain third-person perspective. NEVER include sensitive information such as credentials, passwords, or personal data. Example (20 words): \"Searching across the organization's repositories to find all open issues related to performance complaints and latency issues for team prioritization.\"",
      -  "type": "string"
      -}
    • changedInput schema / required
      Previous value: -[
      -  "token",
      -  "version_number",
      -  "context"
      -]New value: +[
      +  "token",
      +  "version_number"
      +]
  2. First observed

TDQS

A4.6/5.0
Behavior5/5

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

Goes well beyond the annotations: explains that head_version_number moves FORWARD rather than back, that a no-op covers client-timeout retries (reconciling with idempotentHint), states the write-scope and versioning-plan requirements, and names the revert_window_exceeded refusal on Free/Pro plans.

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 and the surprising head-rotation semantics, then the edge cases. Dense and information-rich, though the long chain of parenthetical edge cases could be tightened.

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?

For a destructive, idempotent mutation with no output schema, the description covers preconditions, side effects, error conditions, and validation steps — everything needed to invoke it correctly.

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 the baseline is 3, but the description adds real meaning: head_version_number is the next unassigned number, the newest stored version is head−1, and passing version_number equal to head is a benign no-op. It also clarifies the organization omission rule contextually.

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 ('revert an asset to a prior version') with the key discriminator — reverting does not rewind history but creates a new REVERT snapshot. An agent can distinguish this from create_asset_version, update_asset, and delete_asset without opening schemas.

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?

Gives a clear prerequisite workflow ('Call list_asset_versions first to pick a valid, revertable version_number') and delineates no-op scenarios, but never explicitly states when to prefer a sibling (e.g. create_asset_version) instead of reverting.

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