Skip to main content
Glama

save_copy

Destructive

Preserve the current live revision as a JSON file in outputs/mcp-exports, writing to a new file without overwriting existing exports or marking the editor saved.

Instructions

Save a JSON copy of the exact live revision to a NEW file under outputs/mcp-exports. Does not overwrite files or mark the editor saved.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYes
sessionIdYes
expectedRevisionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already mark the tool as readOnly=false, idempotent=false, and destructive=true, so the baseline is set. The description adds meaningful side-effect context by stating it does not overwrite files and does not mark the editor saved, which is beyond what the annotations convey. It does not disclose every failure mode (e.g., behavior when the target file already exists or when expectedRevision mismatches), but it meaningfully supplements the structured metadata. No contradiction with annotations is present.

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?

The description is two precise sentences with zero filler. The core action is front-loaded ('Save a JSON copy...'), followed by the destination and the two key non-side-effects. Every word earns its place, and the structure makes it easy for an agent to grasp the behavior at a glance.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the clear core behavior, the description is incomplete for a tool with 0% parameter schema coverage, no output schema, and no descriptions for sessionId, expectedRevision, or name. The agent is not told how to obtain or validate expectedRevision, what name should represent, what the tool returns, or what happens when the target file already exists. The description alone is insufficient to invoke the tool reliably in all cases.

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

Parameters2/5

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

Schema description coverage is 0%, and the description does not explain any of the three parameters. While 'sessionId', 'expectedRevision', and 'name' are somewhat self-explanatory from their names and patterns, the description never maps them to the tool's behavior or states where values come from. The task of making these parameters usable is almost entirely left to the schema, which lacks descriptions. This does not meet the compensation burden for low schema coverage.

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 states a specific verb ('Save'), a precise resource ('a JSON copy of the exact live revision'), and a specific destination ('a NEW file under outputs/mcp-exports'). It also clarifies key non-behaviors ('Does not overwrite files or mark the editor saved'), which distinguishes it from related operations like export_map or capture_view. The purpose is unambiguous and immediately actionable.

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 context for when to use the tool: to capture an exact JSON snapshot of the live revision into a newly created file without altering the editor's saved state. It does not explicitly name sibling alternatives or state when not to use them, but the 'NEW file' and 'does not overwrite' constraints implicitly rule out overwrite-style exports and revision-editing operations. This is better than no guidance, but explicit exclusions are missing.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.