Skip to main content
Glama
ZMC1011

Keil5 MCP Server

by ZMC1011

set_breakpoint

Pause program execution at a specified symbol or address by setting a hardware breakpoint, enabling targeted debugging of STM32 code.

Instructions

Set a hardware breakpoint by symbol name or address.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
symbolNo
addressNo
probe_idNodefault

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

C2.7/5.0
Behavior2/5

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

No annotations are provided, so the description carries the full burden. It states that a hardware breakpoint is set, but it doesn't disclose whether the target must be halted, whether the breakpoint replaces an existing one, how many can be set, whether probe_id affects the target, or what happens on invalid symbols/addresses.

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?

The description is a single efficient sentence with no filler. It front-loads the action and then specifies the targeting mechanisms. However, brevity comes at the cost of omitting useful behavioral and usage context.

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?

Given there is no output schema, no annotations, and three parameters with 0% schema coverage, the description is too thin. It does not mention prerequisites, return/confirmation behavior, error conditions, or how this interacts with sibling debug control tools, leaving an agent under-informed for correct invocation.

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%, and the description must compensate. It does clarify that 'symbol' and 'address' are alternative ways to specify the breakpoint location, but it leaves 'probe_id' unexplained and doesn't specify whether symbol and address are mutually exclusive or how defaults behave.

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 ('Set') with a clear resource ('hardware breakpoint') and states the two selection mechanisms ('by symbol name or address'). It is immediately understandable and clearly distinct from the listed siblings, none of which manage breakpoints, though it doesn't explicitly differentiate itself from any alternative.

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

Usage Guidelines2/5

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

There is no guidance about when to use this tool versus stepping, resuming, or other debug control tools. The description implies the breakpoint is set before continuing execution, but it never states this or mentions that a debug session/probe must be active.

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