Skip to main content
Glama

Simpler.Asia

studio.restore_version

Bring back an earlier version of a studio project: it saves that version as a new version; history is never rewritten, so the version it replaces stays listed and restoring that one undoes this. Returns {version, restored_from, previous_version}. A person editing the project in the browser is told at their next save that a newer version is on the server and reloads. Refuses: a project_id outside your scope (NOT_FOUND): studio_project_list lists your projects; pass one of their ids; a version the project no longer stores (SIMPLER_STUDIO_VERSION_NOT_STORED): call studio.list_versions and pick a listed one; a stored version that no longer passes the composition schema (SIMPLER_STUDIO_VERSION_UNREADABLE): restore a different version; another save landing at the same moment (SIMPLER_STUDIO_RESTORE_CONFLICT): call again. Free.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
versionYesA version number studio.list_versions lists.
project_idYesThe studio project (vp_...) whose history to use.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.8/5.0
Behavior5/5

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

Annotations only declare readOnlyHint=false; the description goes well beyond that by disclosing that history is append-only and the restore is itself undoable, that a concurrent browser editor will be notified and reload at next save, the exact return triple, and per-error-code remedies including the retry for a concurrent save conflict. The 'Free' note adds cost context that no structured field carries; nothing here contradicts the write annotation.

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?

Purpose, semantics, return shape, and then a dense but ordered error catalog — front-loaded and waste-free. The error mappings are crammed into a long semicolon chain that is slightly harder to scan than a short list would be, which keeps it out of the top band.

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 two-parameter mutation with no output schema, the description covers everything an agent needs: what it does, what it returns, how collaborating editors are affected, and what to do for every documented refusal. No material gap remains.

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 constraints the schema cannot express: project_id must be within the caller's scope or the call returns NOT_FOUND, and version must be one the project still stores and that passes the composition schema, with distinct remedies for each case. That is genuine semantic value beyond the field docs.

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?

Opens with a specific verb+resource ('Bring back an earlier version of a studio project') and immediately clarifies the mechanics: the old version is re-saved as a new version and history is never rewritten. This operationally separates it from sibling mutations like studio.snapshot_version and studio.remove_snapshot, and the named restore counterpart ('restoring that one undoes this') makes the semantics unambiguous.

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?

Explicitly routes to alternatives by failure mode: use studio_project_list to obtain a valid project_id, and studio.list_versions to pick a version that is actually stored and readable. It also distinguishes restoring from snapshotting/removing history, so an agent knows when this tool is the right choice versus a sibling.

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