Skip to main content
Glama
AstralVoidZ
by AstralVoidZ

ppsspp_batch_cancel

Cancel a queued or running background batch job to halt execution and free the session for subsequent commands.

Instructions

PURPOSE: Request cancellation of a queued or running background batch job.

USAGE: batch_id from ppsspp_batch_step(background=true).

BEHAVIOR: STATE-CHANGE. Cancels the detached task; the job's own finally block releases the session lock, so subsequent tool calls are free to use the session immediately. The abort happens at the current step boundary (a press finishes, a mid-wait cuts within ~1s). Cancelling an already-finished job is an error — check ppsspp_batch_status first if unsure.

RETURNS: {batch_id, status, note} — poll ppsspp_batch_status for the terminal state.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
batch_idYesJob id returned by ppsspp_batch_step(background=true).

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
noteYes
statusYes
batch_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

The description goes beyond annotations by detailing the asynchronous abort behavior: the job's finally block releases the session lock, enabling immediate use. It specifies timing ('step boundary', 'mid-wait cuts within ~1s') and error conditions (cancelling finished job is error). This adds significant behavioral context that annotations do not capture, such as the non-instant cancellation and lock release semantics.

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 tightly structured with clear sections (PURPOSE, USAGE, BEHAVIOR, RETURNS). Every sentence contributes: purpose states the action, usage gives the source of the parameter, behavior explains side effects and timing, and returns tells what to poll. No filler or redundancy.

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?

The tool is a cancel operation with one parameter and a well-defined output schema. The description provides all necessary context: what to pass, what happens on cancellation (lock release, timing), error conditions, and guidance to poll status. Since output schema is present, return values don't need elaboration. The description fully compensates for the tool's complexity.

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

Parameters3/5

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

The schema already provides 100% coverage for the single parameter (batch_id) with a clear description. The tool description repeats the same source ('batch_id from ppsspp_batch_step(background=true)'), adding no new meaning. Since schema does the heavy lifting, a baseline of 3 is appropriate.

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 uses a precise verb ('cancel') with a specific resource ('queued or running background batch job'). It clearly distinguishes from siblings by stating the scope ('background batch job') and referencing the providing tool 'ppsspp_batch_step(background=true)'. This prevents confusion with other batch tools like status or list.

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 explicitly states when to use it: to cancel a queued or running background job, and how to obtain the batch_id. It also mentions a caveat: cancelling an already-finished job is an error, and advises checking ppsspp_batch_status first. However, it does not explicitly state when NOT to use it or name alternatives, though the sibling list is large and the specific scope is clear.

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