Skip to main content
Glama

Stop a book

cancel_scan
DestructiveIdempotent

Stop a book that is converting or waiting to start. Use it only when the user asks to stop or cancel it. A cancelled book does not count as used.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "scan_id": "<scan_id>"
    },
    "name": "cancel_scan"
  }
}

Input Schema

NameRequiredDescriptionDefault
scan_idYesThe scan_id fix_scan or list_my_scans gave.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, idempotentHint=true, and readOnlyHint=false, so the safety profile is covered structurally. The description adds value beyond them by disclosing the states in which cancellation is valid and the business consequence that "a cancelled book does not count as used," which an agent could not infer from the annotations.

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?

Three short sentences, none redundant: the action and eligibility first, the invocation guardrail second, the outcome third. Front-loaded and free of filler.

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

Completeness4/5

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

For a single-parameter destructive mutation with rich annotations and no output schema, the description covers what the tool does, when it applies, and its downstream effect. The one gap is that it never explains what canceling does to already-converted output or how it differs from delete_scan.

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?

Schema description coverage is 100% and there is only one required parameter, whose regex pattern and origin (fix_scan or list_my_scans) are already documented in the schema. The description adds nothing about scan_id, so the baseline 3 is appropriate.

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

Purpose4/5

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

The description uses a specific verb ("stop") and resource ("a book") and narrows scope to books that are "converting or waiting to start," which is far more informative than the title alone. It does not, however, distinguish this from the sibling delete_scan, leaving the cancel-vs-delete boundary unresolved.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use it only when the user asks to stop or cancel it" gives an explicit precondition on user intent, which is real guidance. But the guidance is about conversational triggers rather than tool selection — an agent choosing between cancel_scan, delete_scan, and fix_scan gets no help here.

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