MCP debug_breakpoint_set
Description
Sets a breakpoint, routed by the file's extension: .ts/.tsx/.js/.jsx go to the TypeScript/CDP debugger, .brs/.xml go to the BrightScript/DAP debugger (Roku's own socket-based debug protocol on port 8081 -- NOT Microsoft DAP).
For BrightScript files, the local path you pass is converted into the pkg:/ URI the device requires -- never pass a pkg:/ string yourself, pass the same local path you'd use for any other tool in this session.
IMPORTANT: for a BrightScript breakpoint, a success response (this call returning at all) is NOT the same as the breakpoint actually being armed. The response's own "verified" field is the only thing that means it will fire -- BREAKPOINT_VERIFIED is the device's only async confirmation, and a breakpoint that never receives it (e.g. a duplicate of an already-set line) can still return an id, still show up in debug_breakpoints_list, and never fire. Always check "verified" before assuming a breakpoint is live; if it's false, try a different line or check debug_breakpoints_list for a duplicate.
Parameters:
- file (string, required): local file path (.ts, .tsx, .js, .jsx, .brs, or .xml). For .ts/.tsx/.js/.jsx it may be absolute or relative to the session project root (exact match, no suffix matching); .brs/.xml paths are unchanged.
- line (number, required): 1-based line number.
- condition (string, optional): for BrightScript, this uses a separate device command (ADD_CONDITIONAL_BREAKPOINTS) from a plain breakpoint; for TypeScript, a JS expression gating when it triggers.
- ignoreCount (number, optional, BrightScript only): number of hits to skip before the breakpoint actually stops execution.
- sessionId (string, optional): defaults to the active debug session.
Aliases
Aliases: cdp_breakpoint_set.
See also
- HTTP debugSetBreakpoint (
POST /api/debug/breakpoint/set) - rk debug breakpoint set
Parameters
additionalProperties: false
| Name | Type | Required | Values |
|---|---|---|---|
| file | string | Yes | |
| line | number | Yes | |
| condition | string | No | |
| ignoreCount | number | No | |
| sessionId | string | No |
file
Local file path (.ts, .js, .brs, or .xml). Source files: absolute, or relative to the session project root.
line
1-based line number.
condition
Condition gating when the breakpoint triggers.
ignoreCount
BrightScript only: hits to skip before actually stopping.
sessionId
Debug session id; defaults to the active session.
Updated about 3 hours ago