Skip to main content
Glama

set_breakpoint

Destructive

Pause matching requests or responses so you can inspect and edit them before they continue. Pair with wait_for_breakpoint and resume_breakpoint to control live traffic.

Instructions

Pause matching requests (before the server) or responses (before the app); then wait_for_breakpoint and resume_breakpoint. Unanswered flows continue after timeout.

Input Schema

NameRequiredDescriptionDefault
ttlNo1h
urlYesURL pattern with * wildcards
nameNo
phaseNorequest
methodsNo
timeoutNoHow long a flow waits for your decision, e.g. "60s" (max 30m)60s
graphql_operationNoOnly this GraphQL operation

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, openWorldHint=true and non-idempotent, so the safety profile is covered. The description adds genuinely new behavior beyond them: the request-vs-response interception point and, critically, that unanswered flows continue after timeout, which prevents an agent from fearing a permanent hang.

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?

Two sentences, zero filler, and the action plus the required follow-up sequence are front-loaded. No sentence could be removed without losing load-bearing information.

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?

For a 7-parameter, no-output-schema, destructive-intercept tool the description covers the invocation workflow but leaves lifecycle gaps: it never says how to undo or clear a breakpoint, that breakpoints persist for the ttl window (default 1h), or how concurrent breakpoints are keyed by name/url. Adequate to start, insufficient for confident full use.

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 coverage is only 43%, so the description needs to compensate and largely does not: url, methods, name, ttl and timeout get no explanation beyond what the sparse schema gives. The only added meaning is implicit — "before the server" vs "before the app" hints at the request/response values of the undocumented phase enum.

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?

States a specific verb and effect — pause matching requests before the server or responses before the app — which is more precise than the name alone and pins down where in the pipeline the pause occurs. It also names the two follow-up siblings (wait_for_breakpoint, resume_breakpoint), so an agent can distinguish this from the waiting/resuming tools without opening any 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?

The description establishes a clear workflow context: set the breakpoint, then call wait_for_breakpoint and resume_breakpoint, which is exactly the sequencing an agent needs. It stops short of exclusions — nothing is said about when to prefer set_throttle, wait_for_request, or remove_rule instead.

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