c64-debug-mcp 0.1.10 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -91,6 +91,6 @@ AI assistant will:
91
91
 
92
92
  MIT - see [LICENSE](LICENSE) file
93
93
 
94
- **Made with ❤️ for retro computing enthusiasts and AI-assisted development**
94
+ **Made with ❤️ for C64 developers and AI-assisted retro coding**
95
95
 
96
96
  *"The C64 never gets old, it just gets smarter" 🎮*
package/dist/http.cjs CHANGED
@@ -1709,7 +1709,7 @@ var ViceSession = class {
1709
1709
  };
1710
1710
  }
1711
1711
  async readMemory(start, end, bank = 0) {
1712
- await this.#ensurePausedForDebug("memory_read");
1712
+ await this.#ensureReady();
1713
1713
  this.#validateRange(start, end);
1714
1714
  const response = await this.#client.readMemory(start, end, bank);
1715
1715
  return {
@@ -3262,14 +3262,14 @@ var getMonitorStateTool = createViceTool({
3262
3262
  });
3263
3263
  var getSessionStateTool = createViceTool({
3264
3264
  id: "get_session_state",
3265
- description: "Returns richer emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint when known.",
3265
+ description: "Returns emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint.",
3266
3266
  inputSchema: noInputSchema,
3267
3267
  dataSchema: sessionStateResultSchema,
3268
3268
  execute: async () => c64Session.snapshot()
3269
3269
  });
3270
3270
  var getRegistersTool = createViceTool({
3271
3271
  id: "get_registers",
3272
- description: "Returns the current C64 register snapshot. This requires the emulator to already be stopped.",
3272
+ description: 'Returns the current C64 register snapshot. Requires emulator to be stopped - call execute(action="pause") first if running.',
3273
3273
  inputSchema: noInputSchema,
3274
3274
  dataSchema: import_zod4.z.object({
3275
3275
  registers: c64RegisterValueSchema
@@ -3278,7 +3278,7 @@ var getRegistersTool = createViceTool({
3278
3278
  });
3279
3279
  var setRegistersTool = createViceTool({
3280
3280
  id: "set_registers",
3281
- description: "Sets one or more C64 registers by field name.",
3281
+ description: 'Sets one or more C64 registers by field name. Requires emulator to be stopped - call execute(action="pause") first if running.',
3282
3282
  inputSchema: import_zod4.z.object({
3283
3283
  registers: c64PartialRegisterValueSchema
3284
3284
  }),
@@ -3314,7 +3314,7 @@ var readMemoryTool = createViceTool({
3314
3314
  });
3315
3315
  var writeMemoryTool = createViceTool({
3316
3316
  id: "memory_write",
3317
- description: "Writes raw byte values into the active C64 memory space.",
3317
+ description: 'Writes raw byte values into the active C64 memory space. Requires emulator to be stopped - call execute(action="pause") first if running.',
3318
3318
  inputSchema: import_zod4.z.object({
3319
3319
  address: address16Schema.describe("Start address in the 16-bit C64 address space"),
3320
3320
  data: byteArraySchema.min(1).describe("Raw bytes to write into memory")
@@ -3430,7 +3430,7 @@ var programLoadTool = createViceTool({
3430
3430
  });
3431
3431
  var captureDisplayTool = createViceTool({
3432
3432
  id: "capture_display",
3433
- description: "Captures the current screen to a PNG file and returns the saved image path. If the emulator was running, the server restores running state before returning, subject to timeout.",
3433
+ description: "Captures the current screen to a PNG file and returns the saved image path.",
3434
3434
  inputSchema: import_zod4.z.object({
3435
3435
  useVic: import_zod4.z.boolean().default(true).describe("Whether to capture the VIC-II display when supported")
3436
3436
  }),
@@ -3439,21 +3439,21 @@ var captureDisplayTool = createViceTool({
3439
3439
  });
3440
3440
  var getDisplayStateTool = createViceTool({
3441
3441
  id: "get_display_state",
3442
- description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors. If the emulator was running, the server restores running state before returning, subject to timeout.",
3442
+ description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors.",
3443
3443
  inputSchema: noInputSchema,
3444
3444
  dataSchema: displayStateResultSchema,
3445
3445
  execute: async () => await c64Session.getDisplayState()
3446
3446
  });
3447
3447
  var getDisplayTextTool = createViceTool({
3448
3448
  id: "get_display_text",
3449
- description: "Returns the current text screen as readable text when the C64 is in a text mode. If the emulator was running, the server restores running state before returning, subject to timeout.",
3449
+ description: "Returns the current text screen as readable text when the C64 is in a text mode.",
3450
3450
  inputSchema: noInputSchema,
3451
3451
  dataSchema: displayTextResultSchema,
3452
3452
  execute: async () => await c64Session.getDisplayText()
3453
3453
  });
3454
3454
  var writeTextTool = createViceTool({
3455
3455
  id: "write_text",
3456
- description: "Types text into the C64 while it is running. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names; limit each request to 64 bytes.",
3456
+ description: 'Types text into the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names. Limit 64 bytes per request.',
3457
3457
  inputSchema: import_zod4.z.object({
3458
3458
  text: import_zod4.z.string()
3459
3459
  }),
@@ -3465,7 +3465,7 @@ var writeTextTool = createViceTool({
3465
3465
  });
3466
3466
  var keyboardInputTool = createViceTool({
3467
3467
  id: "keyboard_input",
3468
- description: "Sends one to four keys or PETSCII tokens to the C64 while it is running. Use this for key presses, releases, and taps. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3468
+ description: 'Sends one to four keys or PETSCII tokens to the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Use for key presses, releases, and taps.',
3469
3469
  inputSchema: import_zod4.z.object({
3470
3470
  action: inputActionSchema.describe("Use tap for a single key event or press/release for repeated buffered input"),
3471
3471
  keys: import_zod4.z.array(import_zod4.z.string().min(1)).min(1).max(4).describe("One to four literal keys or PETSCII token names such as RETURN, CLR, HOME, PI, LEFT, RED, or F1"),
@@ -3476,7 +3476,7 @@ var keyboardInputTool = createViceTool({
3476
3476
  });
3477
3477
  var joystickInputTool = createViceTool({
3478
3478
  id: "joystick_input",
3479
- description: "Sends joystick input to C64 joystick port 1 or 2 while the C64 is running. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3479
+ description: 'Sends joystick input to C64 joystick port 1 or 2. Requires emulator to be running - call execute(action="resume") first if stopped.',
3480
3480
  inputSchema: import_zod4.z.object({
3481
3481
  port: joystickPortSchema.describe("Joystick port number"),
3482
3482
  action: inputActionSchema.describe("Joystick action to apply"),
package/dist/http.js CHANGED
@@ -1686,7 +1686,7 @@ var ViceSession = class {
1686
1686
  };
1687
1687
  }
1688
1688
  async readMemory(start, end, bank = 0) {
1689
- await this.#ensurePausedForDebug("memory_read");
1689
+ await this.#ensureReady();
1690
1690
  this.#validateRange(start, end);
1691
1691
  const response = await this.#client.readMemory(start, end, bank);
1692
1692
  return {
@@ -3239,14 +3239,14 @@ var getMonitorStateTool = createViceTool({
3239
3239
  });
3240
3240
  var getSessionStateTool = createViceTool({
3241
3241
  id: "get_session_state",
3242
- description: "Returns richer emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint when known.",
3242
+ description: "Returns emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint.",
3243
3243
  inputSchema: noInputSchema,
3244
3244
  dataSchema: sessionStateResultSchema,
3245
3245
  execute: async () => c64Session.snapshot()
3246
3246
  });
3247
3247
  var getRegistersTool = createViceTool({
3248
3248
  id: "get_registers",
3249
- description: "Returns the current C64 register snapshot. This requires the emulator to already be stopped.",
3249
+ description: 'Returns the current C64 register snapshot. Requires emulator to be stopped - call execute(action="pause") first if running.',
3250
3250
  inputSchema: noInputSchema,
3251
3251
  dataSchema: z3.object({
3252
3252
  registers: c64RegisterValueSchema
@@ -3255,7 +3255,7 @@ var getRegistersTool = createViceTool({
3255
3255
  });
3256
3256
  var setRegistersTool = createViceTool({
3257
3257
  id: "set_registers",
3258
- description: "Sets one or more C64 registers by field name.",
3258
+ description: 'Sets one or more C64 registers by field name. Requires emulator to be stopped - call execute(action="pause") first if running.',
3259
3259
  inputSchema: z3.object({
3260
3260
  registers: c64PartialRegisterValueSchema
3261
3261
  }),
@@ -3291,7 +3291,7 @@ var readMemoryTool = createViceTool({
3291
3291
  });
3292
3292
  var writeMemoryTool = createViceTool({
3293
3293
  id: "memory_write",
3294
- description: "Writes raw byte values into the active C64 memory space.",
3294
+ description: 'Writes raw byte values into the active C64 memory space. Requires emulator to be stopped - call execute(action="pause") first if running.',
3295
3295
  inputSchema: z3.object({
3296
3296
  address: address16Schema.describe("Start address in the 16-bit C64 address space"),
3297
3297
  data: byteArraySchema.min(1).describe("Raw bytes to write into memory")
@@ -3407,7 +3407,7 @@ var programLoadTool = createViceTool({
3407
3407
  });
3408
3408
  var captureDisplayTool = createViceTool({
3409
3409
  id: "capture_display",
3410
- description: "Captures the current screen to a PNG file and returns the saved image path. If the emulator was running, the server restores running state before returning, subject to timeout.",
3410
+ description: "Captures the current screen to a PNG file and returns the saved image path.",
3411
3411
  inputSchema: z3.object({
3412
3412
  useVic: z3.boolean().default(true).describe("Whether to capture the VIC-II display when supported")
3413
3413
  }),
@@ -3416,21 +3416,21 @@ var captureDisplayTool = createViceTool({
3416
3416
  });
3417
3417
  var getDisplayStateTool = createViceTool({
3418
3418
  id: "get_display_state",
3419
- description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors. If the emulator was running, the server restores running state before returning, subject to timeout.",
3419
+ description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors.",
3420
3420
  inputSchema: noInputSchema,
3421
3421
  dataSchema: displayStateResultSchema,
3422
3422
  execute: async () => await c64Session.getDisplayState()
3423
3423
  });
3424
3424
  var getDisplayTextTool = createViceTool({
3425
3425
  id: "get_display_text",
3426
- description: "Returns the current text screen as readable text when the C64 is in a text mode. If the emulator was running, the server restores running state before returning, subject to timeout.",
3426
+ description: "Returns the current text screen as readable text when the C64 is in a text mode.",
3427
3427
  inputSchema: noInputSchema,
3428
3428
  dataSchema: displayTextResultSchema,
3429
3429
  execute: async () => await c64Session.getDisplayText()
3430
3430
  });
3431
3431
  var writeTextTool = createViceTool({
3432
3432
  id: "write_text",
3433
- description: "Types text into the C64 while it is running. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names; limit each request to 64 bytes.",
3433
+ description: 'Types text into the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names. Limit 64 bytes per request.',
3434
3434
  inputSchema: z3.object({
3435
3435
  text: z3.string()
3436
3436
  }),
@@ -3442,7 +3442,7 @@ var writeTextTool = createViceTool({
3442
3442
  });
3443
3443
  var keyboardInputTool = createViceTool({
3444
3444
  id: "keyboard_input",
3445
- description: "Sends one to four keys or PETSCII tokens to the C64 while it is running. Use this for key presses, releases, and taps. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3445
+ description: 'Sends one to four keys or PETSCII tokens to the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Use for key presses, releases, and taps.',
3446
3446
  inputSchema: z3.object({
3447
3447
  action: inputActionSchema.describe("Use tap for a single key event or press/release for repeated buffered input"),
3448
3448
  keys: z3.array(z3.string().min(1)).min(1).max(4).describe("One to four literal keys or PETSCII token names such as RETURN, CLR, HOME, PI, LEFT, RED, or F1"),
@@ -3453,7 +3453,7 @@ var keyboardInputTool = createViceTool({
3453
3453
  });
3454
3454
  var joystickInputTool = createViceTool({
3455
3455
  id: "joystick_input",
3456
- description: "Sends joystick input to C64 joystick port 1 or 2 while the C64 is running. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3456
+ description: 'Sends joystick input to C64 joystick port 1 or 2. Requires emulator to be running - call execute(action="resume") first if stopped.',
3457
3457
  inputSchema: z3.object({
3458
3458
  port: joystickPortSchema.describe("Joystick port number"),
3459
3459
  action: inputActionSchema.describe("Joystick action to apply"),
package/dist/stdio.cjs CHANGED
@@ -1706,7 +1706,7 @@ var ViceSession = class {
1706
1706
  };
1707
1707
  }
1708
1708
  async readMemory(start, end, bank = 0) {
1709
- await this.#ensurePausedForDebug("memory_read");
1709
+ await this.#ensureReady();
1710
1710
  this.#validateRange(start, end);
1711
1711
  const response = await this.#client.readMemory(start, end, bank);
1712
1712
  return {
@@ -3259,14 +3259,14 @@ var getMonitorStateTool = createViceTool({
3259
3259
  });
3260
3260
  var getSessionStateTool = createViceTool({
3261
3261
  id: "get_session_state",
3262
- description: "Returns richer emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint when known.",
3262
+ description: "Returns emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint.",
3263
3263
  inputSchema: noInputSchema,
3264
3264
  dataSchema: sessionStateResultSchema,
3265
3265
  execute: async () => c64Session.snapshot()
3266
3266
  });
3267
3267
  var getRegistersTool = createViceTool({
3268
3268
  id: "get_registers",
3269
- description: "Returns the current C64 register snapshot. This requires the emulator to already be stopped.",
3269
+ description: 'Returns the current C64 register snapshot. Requires emulator to be stopped - call execute(action="pause") first if running.',
3270
3270
  inputSchema: noInputSchema,
3271
3271
  dataSchema: import_zod4.z.object({
3272
3272
  registers: c64RegisterValueSchema
@@ -3275,7 +3275,7 @@ var getRegistersTool = createViceTool({
3275
3275
  });
3276
3276
  var setRegistersTool = createViceTool({
3277
3277
  id: "set_registers",
3278
- description: "Sets one or more C64 registers by field name.",
3278
+ description: 'Sets one or more C64 registers by field name. Requires emulator to be stopped - call execute(action="pause") first if running.',
3279
3279
  inputSchema: import_zod4.z.object({
3280
3280
  registers: c64PartialRegisterValueSchema
3281
3281
  }),
@@ -3311,7 +3311,7 @@ var readMemoryTool = createViceTool({
3311
3311
  });
3312
3312
  var writeMemoryTool = createViceTool({
3313
3313
  id: "memory_write",
3314
- description: "Writes raw byte values into the active C64 memory space.",
3314
+ description: 'Writes raw byte values into the active C64 memory space. Requires emulator to be stopped - call execute(action="pause") first if running.',
3315
3315
  inputSchema: import_zod4.z.object({
3316
3316
  address: address16Schema.describe("Start address in the 16-bit C64 address space"),
3317
3317
  data: byteArraySchema.min(1).describe("Raw bytes to write into memory")
@@ -3427,7 +3427,7 @@ var programLoadTool = createViceTool({
3427
3427
  });
3428
3428
  var captureDisplayTool = createViceTool({
3429
3429
  id: "capture_display",
3430
- description: "Captures the current screen to a PNG file and returns the saved image path. If the emulator was running, the server restores running state before returning, subject to timeout.",
3430
+ description: "Captures the current screen to a PNG file and returns the saved image path.",
3431
3431
  inputSchema: import_zod4.z.object({
3432
3432
  useVic: import_zod4.z.boolean().default(true).describe("Whether to capture the VIC-II display when supported")
3433
3433
  }),
@@ -3436,21 +3436,21 @@ var captureDisplayTool = createViceTool({
3436
3436
  });
3437
3437
  var getDisplayStateTool = createViceTool({
3438
3438
  id: "get_display_state",
3439
- description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors. If the emulator was running, the server restores running state before returning, subject to timeout.",
3439
+ description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors.",
3440
3440
  inputSchema: noInputSchema,
3441
3441
  dataSchema: displayStateResultSchema,
3442
3442
  execute: async () => await c64Session.getDisplayState()
3443
3443
  });
3444
3444
  var getDisplayTextTool = createViceTool({
3445
3445
  id: "get_display_text",
3446
- description: "Returns the current text screen as readable text when the C64 is in a text mode. If the emulator was running, the server restores running state before returning, subject to timeout.",
3446
+ description: "Returns the current text screen as readable text when the C64 is in a text mode.",
3447
3447
  inputSchema: noInputSchema,
3448
3448
  dataSchema: displayTextResultSchema,
3449
3449
  execute: async () => await c64Session.getDisplayText()
3450
3450
  });
3451
3451
  var writeTextTool = createViceTool({
3452
3452
  id: "write_text",
3453
- description: "Types text into the C64 while it is running. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names; limit each request to 64 bytes.",
3453
+ description: 'Types text into the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names. Limit 64 bytes per request.',
3454
3454
  inputSchema: import_zod4.z.object({
3455
3455
  text: import_zod4.z.string()
3456
3456
  }),
@@ -3462,7 +3462,7 @@ var writeTextTool = createViceTool({
3462
3462
  });
3463
3463
  var keyboardInputTool = createViceTool({
3464
3464
  id: "keyboard_input",
3465
- description: "Sends one to four keys or PETSCII tokens to the C64 while it is running. Use this for key presses, releases, and taps. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3465
+ description: 'Sends one to four keys or PETSCII tokens to the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Use for key presses, releases, and taps.',
3466
3466
  inputSchema: import_zod4.z.object({
3467
3467
  action: inputActionSchema.describe("Use tap for a single key event or press/release for repeated buffered input"),
3468
3468
  keys: import_zod4.z.array(import_zod4.z.string().min(1)).min(1).max(4).describe("One to four literal keys or PETSCII token names such as RETURN, CLR, HOME, PI, LEFT, RED, or F1"),
@@ -3473,7 +3473,7 @@ var keyboardInputTool = createViceTool({
3473
3473
  });
3474
3474
  var joystickInputTool = createViceTool({
3475
3475
  id: "joystick_input",
3476
- description: "Sends joystick input to C64 joystick port 1 or 2 while the C64 is running. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3476
+ description: 'Sends joystick input to C64 joystick port 1 or 2. Requires emulator to be running - call execute(action="resume") first if stopped.',
3477
3477
  inputSchema: import_zod4.z.object({
3478
3478
  port: joystickPortSchema.describe("Joystick port number"),
3479
3479
  action: inputActionSchema.describe("Joystick action to apply"),
package/dist/stdio.js CHANGED
@@ -1683,7 +1683,7 @@ var ViceSession = class {
1683
1683
  };
1684
1684
  }
1685
1685
  async readMemory(start, end, bank = 0) {
1686
- await this.#ensurePausedForDebug("memory_read");
1686
+ await this.#ensureReady();
1687
1687
  this.#validateRange(start, end);
1688
1688
  const response = await this.#client.readMemory(start, end, bank);
1689
1689
  return {
@@ -3236,14 +3236,14 @@ var getMonitorStateTool = createViceTool({
3236
3236
  });
3237
3237
  var getSessionStateTool = createViceTool({
3238
3238
  id: "get_session_state",
3239
- description: "Returns richer emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint when known.",
3239
+ description: "Returns emulator session state including transport/process status, auto-resume state, and the most recent hit checkpoint.",
3240
3240
  inputSchema: noInputSchema,
3241
3241
  dataSchema: sessionStateResultSchema,
3242
3242
  execute: async () => c64Session.snapshot()
3243
3243
  });
3244
3244
  var getRegistersTool = createViceTool({
3245
3245
  id: "get_registers",
3246
- description: "Returns the current C64 register snapshot. This requires the emulator to already be stopped.",
3246
+ description: 'Returns the current C64 register snapshot. Requires emulator to be stopped - call execute(action="pause") first if running.',
3247
3247
  inputSchema: noInputSchema,
3248
3248
  dataSchema: z3.object({
3249
3249
  registers: c64RegisterValueSchema
@@ -3252,7 +3252,7 @@ var getRegistersTool = createViceTool({
3252
3252
  });
3253
3253
  var setRegistersTool = createViceTool({
3254
3254
  id: "set_registers",
3255
- description: "Sets one or more C64 registers by field name.",
3255
+ description: 'Sets one or more C64 registers by field name. Requires emulator to be stopped - call execute(action="pause") first if running.',
3256
3256
  inputSchema: z3.object({
3257
3257
  registers: c64PartialRegisterValueSchema
3258
3258
  }),
@@ -3288,7 +3288,7 @@ var readMemoryTool = createViceTool({
3288
3288
  });
3289
3289
  var writeMemoryTool = createViceTool({
3290
3290
  id: "memory_write",
3291
- description: "Writes raw byte values into the active C64 memory space.",
3291
+ description: 'Writes raw byte values into the active C64 memory space. Requires emulator to be stopped - call execute(action="pause") first if running.',
3292
3292
  inputSchema: z3.object({
3293
3293
  address: address16Schema.describe("Start address in the 16-bit C64 address space"),
3294
3294
  data: byteArraySchema.min(1).describe("Raw bytes to write into memory")
@@ -3404,7 +3404,7 @@ var programLoadTool = createViceTool({
3404
3404
  });
3405
3405
  var captureDisplayTool = createViceTool({
3406
3406
  id: "capture_display",
3407
- description: "Captures the current screen to a PNG file and returns the saved image path. If the emulator was running, the server restores running state before returning, subject to timeout.",
3407
+ description: "Captures the current screen to a PNG file and returns the saved image path.",
3408
3408
  inputSchema: z3.object({
3409
3409
  useVic: z3.boolean().default(true).describe("Whether to capture the VIC-II display when supported")
3410
3410
  }),
@@ -3413,21 +3413,21 @@ var captureDisplayTool = createViceTool({
3413
3413
  });
3414
3414
  var getDisplayStateTool = createViceTool({
3415
3415
  id: "get_display_state",
3416
- description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors. If the emulator was running, the server restores running state before returning, subject to timeout.",
3416
+ description: "Returns screen RAM, color RAM, the current graphics mode, screen memory addresses, and the current border and background colors.",
3417
3417
  inputSchema: noInputSchema,
3418
3418
  dataSchema: displayStateResultSchema,
3419
3419
  execute: async () => await c64Session.getDisplayState()
3420
3420
  });
3421
3421
  var getDisplayTextTool = createViceTool({
3422
3422
  id: "get_display_text",
3423
- description: "Returns the current text screen as readable text when the C64 is in a text mode. If the emulator was running, the server restores running state before returning, subject to timeout.",
3423
+ description: "Returns the current text screen as readable text when the C64 is in a text mode.",
3424
3424
  inputSchema: noInputSchema,
3425
3425
  dataSchema: displayTextResultSchema,
3426
3426
  execute: async () => await c64Session.getDisplayText()
3427
3427
  });
3428
3428
  var writeTextTool = createViceTool({
3429
3429
  id: "write_text",
3430
- description: "Types text into the C64 while it is running. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names; limit each request to 64 bytes.",
3430
+ description: 'Types text into the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Supports escaped characters and PETSCII brace tokens like {RETURN}, {CLR}, {HOME}, {PI}, and color names. Limit 64 bytes per request.',
3431
3431
  inputSchema: z3.object({
3432
3432
  text: z3.string()
3433
3433
  }),
@@ -3439,7 +3439,7 @@ var writeTextTool = createViceTool({
3439
3439
  });
3440
3440
  var keyboardInputTool = createViceTool({
3441
3441
  id: "keyboard_input",
3442
- description: "Sends one to four keys or PETSCII tokens to the C64 while it is running. Use this for key presses, releases, and taps. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3442
+ description: 'Sends one to four keys or PETSCII tokens to the C64. Requires emulator to be running - call execute(action="resume") first if stopped. Use for key presses, releases, and taps.',
3443
3443
  inputSchema: z3.object({
3444
3444
  action: inputActionSchema.describe("Use tap for a single key event or press/release for repeated buffered input"),
3445
3445
  keys: z3.array(z3.string().min(1)).min(1).max(4).describe("One to four literal keys or PETSCII token names such as RETURN, CLR, HOME, PI, LEFT, RED, or F1"),
@@ -3450,7 +3450,7 @@ var keyboardInputTool = createViceTool({
3450
3450
  });
3451
3451
  var joystickInputTool = createViceTool({
3452
3452
  id: "joystick_input",
3453
- description: "Sends joystick input to C64 joystick port 1 or 2 while the C64 is running. If the emulator transiently stops, the server restores running state before returning, subject to timeout.",
3453
+ description: 'Sends joystick input to C64 joystick port 1 or 2. Requires emulator to be running - call execute(action="resume") first if stopped.',
3454
3454
  inputSchema: z3.object({
3455
3455
  port: joystickPortSchema.describe("Joystick port number"),
3456
3456
  action: inputActionSchema.describe("Joystick action to apply"),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "c64-debug-mcp",
3
- "version": "0.1.10",
3
+ "version": "1.0.1",
4
4
  "description": "Model Context Protocol server for C64 debugging via VICE emulator",
5
5
  "type": "module",
6
6
  "keywords": [