Skip to main content
Glama

recover_lost_session

Idempotent

Recover an uncertain Balatro session by checking action status, confirming record loss, and retiring it with a durable receipt.

Instructions

First query action_status and observe. Retire only after actual session change and confirmed record loss, with known current profile, fresh observation and ready. Requires a pending intent or, with all checkpoints clear, an unambiguous missing-record status previously delivered by this service in the lost session. A missing record alone never proves non-submission. The original remains UNKNOWN; RETIRED is not success or a normal loss. No game action, replay or save read. Identical recovery_id/parameters query the durable receipt. Reject live old sessions, stale observations or unknown profiles.

Input Schema

NameRequiredDescriptionDefault
action_idYes
recovery_idYes
observation_idYes

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.4.0

TDQS

C2.9/5.0
Behavior4/5

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

Annotations already declare readOnly=false, idempotent=true, destructive=false, openWorld=false, and the description meaningfully extends these: identical recovery_id/parameters hit the durable receipt (explaining idempotency), no game action/replay/save read occurs, and RETIRED is explicitly not success. It also states the authoritative rejection cases. It stops short of explaining what state is written or how the receipt is returned.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness2/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The text is a dense, run-on block of jargon-heavy conditions with no front-loaded statement of purpose; the reader must parse every clause before knowing what the tool does. Several sentences ('A missing record alone never proves non-submission', 'RETIRED is not success or a normal loss') are important but buried rather than structured.

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

Completeness3/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 not be explained, and the description does supply substantial precondition and semantics context. However, it omits any clear statement of the tool's own operation and leaves all three parameters undocumented, which is insufficient for a 3-required-parameter mutation tool with 0% schema coverage.

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% for all three required parameters, so the description must carry the burden and largely does not. It hints that recovery_id is the key that makes calls idempotent and that observation_id must be a 'fresh observation', but action_id is never explained and no format or provenance is given for any parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose2/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description never plainly states what the tool does (e.g., 'records a retirement decision for a lost session and returns the durable receipt'). Almost every sentence is a precondition, warning, or exclusion, so the agent must infer the core operation from phrases like 'Retire only after...' and 'query the durable receipt'. The name recover_lost_session is not clarified or distinguished from siblings such as action_status or observe.

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?

It gives explicit gating conditions: 'Retire only after actual session change and confirmed record loss, with known current profile, fresh observation and ready', plus exclusions ('Reject live old sessions, stale observations or unknown profiles') and a mandated prerequisite step ('First query action_status and observe'). Alternatives are named only as precondition steps, not as competing tools, so it stops short of a full when/when-not/alternative map.

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