Skip to main content
Glama

debugger_pause

Destructive

Pause a running program without closing its session; optionally set a timeout in seconds to control how long the pause request waits.

Instructions

Request a running program to stop without closing its session.

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": {
      "session_id": "<session_id>"
    },
    "name": "debugger_pause"
  }
}

Input Schema

NameRequiredDescriptionDefault
timeoutNo
session_idYes

Output Schema

NameRequiredDescriptionDefault
snapshotYes
executionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.1

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false and destructiveHint=true, so safety is covered. The description adds real value by clarifying that the session survives the pause, but it does not explain whether the call is asynchronous or blocks until the program actually stops, nor what the destructive aspect means in practice (e.g., interrupting in-flight execution).

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

Conciseness4/5

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

A single front-loaded sentence with no filler or redundancy. It is efficient, though arguably too sparse for the amount of unexplained behavior.

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?

The presence of an output schema removes the need to describe return values, but for a debugger control operation marked destructive, the definition omits blocking semantics, required session state, and the role of timeout. Given 0% parameter coverage, the description should do more.

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%: session_id carries only a title, and the Timeout $ref describes bounds but not how the timeout relates to pausing. The description never mentions either parameter, so it does not compensate for the coverage gap—it is left to the agent to infer that timeout means 'wait this long for the stop to be confirmed'.

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?

States a specific action (stop a running program) and a key scope constraint (the session is not closed), which distinguishes it from debugger_close. It is clear without opening a schema, though it never names the sibling it contrasts with by name.

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?

The phrase 'without closing its session' implies when to pause rather than close or terminate, but there is no explicit when-to-use guidance, no mention of preconditions (session must be running/paused state), and no comparison to debugger_wait, debugger_continue, or debugger_step.

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