Skip to main content
Glama
simen
by simen

listBreakpoints

View all active debugging breakpoints in a Commodore 64 emulation session, displaying IDs, addresses, and status for monitoring program execution.

Instructions

List all active breakpoints.

Shows breakpoint IDs, addresses, and status for all breakpoints set in this session.

Note: This tracks breakpoints set through this MCP session. Breakpoints set through VICE's built-in monitor may not appear.

Related tools: setBreakpoint, deleteBreakpoint

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Implementation Reference

  • MCP tool handler for listBreakpoints: calls client.listBreakpoints(), formats the response with breakpoint details including ID, address, enabled/temporary status, and provides hints.
    async () => { const breakpoints = client.listBreakpoints(); if (breakpoints.length === 0) { return formatResponse({ count: 0, breakpoints: [], hint: "No breakpoints set. Use setBreakpoint() to add one.", }); } return formatResponse({ count: breakpoints.length, breakpoints: breakpoints.map((bp) => ({ id: bp.id, address: { value: bp.startAddress, hex: `$${bp.startAddress.toString(16).padStart(4, "0")}`, }, enabled: bp.enabled, temporary: bp.temporary, })), hint: `${breakpoints.length} breakpoint(s) active. Use deleteBreakpoint(id) to remove.`, }); }
  • src/index.ts:622-658 (registration)
    Registration of the listBreakpoints MCP tool using server.registerTool, including description (no inputSchema).
    server.registerTool( "listBreakpoints", { description: `List all active breakpoints. Shows breakpoint IDs, addresses, and status for all breakpoints set in this session. Note: This tracks breakpoints set through this MCP session. Breakpoints set through VICE's built-in monitor may not appear. Related tools: setBreakpoint, deleteBreakpoint`, }, async () => { const breakpoints = client.listBreakpoints(); if (breakpoints.length === 0) { return formatResponse({ count: 0, breakpoints: [], hint: "No breakpoints set. Use setBreakpoint() to add one.", }); } return formatResponse({ count: breakpoints.length, breakpoints: breakpoints.map((bp) => ({ id: bp.id, address: { value: bp.startAddress, hex: `$${bp.startAddress.toString(16).padStart(4, "0")}`, }, enabled: bp.enabled, temporary: bp.temporary, })), hint: `${breakpoints.length} breakpoint(s) active. Use deleteBreakpoint(id) to remove.`, }); } );
  • ViceClient method that returns the list of execution breakpoints (type 'exec') from local checkpoint tracking map.
    listBreakpoints(): CheckpointInfo[] { return Array.from(this.checkpoints.values()).filter((cp) => cp.type === "exec"); }
  • Type definition for CheckpointInfo used by listBreakpoints() to structure breakpoint data.
    export interface CheckpointInfo { id: number; startAddress: number; endAddress: number; enabled: boolean; temporary: boolean; type: CheckpointType; }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/simen/vice-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server