Skip to main content
Glama

tool_manage_saves

List, clear, or remove stale Ren'Py saves to fix return label errors after script refactors.

Instructions

List, clear, or clear-stale Ren'Py save files.

Ren'Py stores saves under game/saves/. Stale saves (_reload-, _tracesave-) can retain old call stacks that cause 'Could not find return label' errors after script refactors.

Args: project_path: Absolute path to the Ren'Py project root directory. action: One of: - "list": list all save files with size + mtime - "clear": delete ALL save files (game restarts from 'start') - "clear_stale": delete only _reload-* and _tracesave-* files

Returns: dict with {ok, action, saves|deleted, message}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
actionNolist
project_pathYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A4.6/5.0
Behavior4/5

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

No annotations are provided, so the description carries the full burden, and it does disclose the critical destructive behavior ('delete ALL save files', game restarts from 'start') versus the narrower stale-only deletion. It also outlines the return dict shape. Missing detail on whether deletion is reversible or needs confirmation, which keeps it at 4.

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?

Front-loaded with the core purpose, then a brief rationale paragraph, then structured Args/Returns. Every sentence adds information; nothing is repeated from the schema verbatim.

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?

Although there is no output schema, the Returns section names the response keys (ok, action, saves|deleted, message), and the destructive semantics plus param meanings are fully covered. Nothing an agent needs in order to invoke it safely is absent.

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

Parameters5/5

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

Schema coverage is 0%, so the description must compensate entirely, and it does: 'project_path' is defined as the absolute project root and 'action' is enumerated with list/clear/clear_stale plus the meaning of each mode. An agent can fill both params correctly from the prose alone.

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 set and resource: 'List, clear, or clear-stale Ren'Py save files.' The three action semantics are spelled out precisely enough that an agent can distinguish this from the lint/compile/run siblings without opening the schema.

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 clear context for when 'clear_stale' is the right choice (leftover _reload-*/_tracesave-* causing 'Could not find return label' after refactors) and warns that 'clear' restarts the game from 'start'. No explicit when-not or pointer to a sibling alternative, so it falls short of a 5.

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