Skip to main content
Glama

configure_debug_freeze

Destructive

Freeze IWDG, WWDG, RTC, and timers via DBGMCU registers while the core is halted, preventing watchdog resets from disrupting STM32 debugging sessions.

Instructions

Freezes peripherals (IWDG, WWDG, RTC, timers) while the core is halted via the DBGMCU freeze registers, so the watchdog cannot reset the target out from under the debugger. Family is taken from the debug profile MCU if omitted.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
applyNoIf false, only return the planned register writes (default true).
familyNoSTM32 family or part number. Known: ['stm32f4', 'stm32l4'].
sessionNoOptional debug-session name. Omit for the default target.
peripheralsYesPeripherals to freeze, e.g. ['iwdg', 'wwdg', 'rtc', 'tim2'].

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.15.1

TDQS

A4.2/5.0
Behavior4/5

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

Annotations declare the mutation profile (readOnlyHint=false, destructiveHint=true), and the description adds genuinely useful context beyond them: it explains the register mechanism and the resulting target behavior (watchdog freeze while the core is halted), which clarifies what the side effect actually is. It does not, however, say whether the freeze is reverted on session close or how to undo it.

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 tightly packed sentences, front-loaded with the action and rationale, with zero filler. The trailing default-resolution note is short and useful.

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?

Given no output schema and a four-parameter mutation tool whose annotations already carry the safety profile, the description covers purpose, mechanism, consequence and the family default adequately. It stops short of describing the reversion/unfreeze story, which would matter for a tool that alters target watchdog behavior.

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

Parameters4/5

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

Schema description coverage is 100%, so the baseline is 3. The description adds one meaningful default-resolution rule not in the schema: 'Family is taken from the debug profile MCU if omitted,' which tells the agent it can safely omit family. It adds nothing further about the peripherals list syntax or session semantics.

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 precise verb and resource ('Freezes peripherals (IWDG, WWDG, RTC, timers)') and names the exact mechanism (DBGMCU freeze registers) plus the concrete outcome ('watchdog cannot reset the target out from under the debugger'). An agent can immediately tell this apart from generic siblings like halt_execution or debug_config.

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 tool's purpose implies its usage scenario (halting debugging sessions where watchdogs would otherwise reset the target), and the 'apply=false' dry-run path hints at a safe pre-check workflow. However, it never states when to reach for this versus siblings such as debug_config or debug_profile, nor any exclusions or prerequisites.

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