c64bridge 0.8.1 → 0.9.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.
Files changed (92) hide show
  1. package/.github/prompts/steer.prompt.md +55 -0
  2. package/AGENTS.md +9 -7
  3. package/README.md +192 -154
  4. package/data/embeddings_asm.json +1 -1
  5. package/data/embeddings_basic.json +1 -1
  6. package/data/embeddings_hardware.json +1 -1
  7. package/data/embeddings_mixed.json +1 -1
  8. package/data/embeddings_other.json +1 -1
  9. package/data/graphics/petscii-style-guide.md +4 -4
  10. package/data/graphics/sprite-charset-best-practices.md +9 -9
  11. package/data/vice/vice-binary-monitor-spec.md +938 -0
  12. package/dist/.tsbuildinfo +1 -1
  13. package/dist/c64Client.js +76 -2
  14. package/dist/device.js +129 -13
  15. package/dist/mcp-server.js +1 -1
  16. package/dist/prompts/registry.js +27 -25
  17. package/dist/rag/indexer.js +18 -8
  18. package/dist/rag/knowledgeIndex.js +112 -79
  19. package/dist/rag/resourceUris.js +93 -0
  20. package/dist/sidwaveCompiler.js +1 -1
  21. package/dist/{assemblyConverter.js → tools/assember.js} +10 -1
  22. package/dist/tools/audio.js +11 -11
  23. package/dist/{basicConverter.js → tools/basicTokenizer.js} +1 -1
  24. package/dist/tools/debug.js +159 -6
  25. package/dist/tools/developer.js +13 -13
  26. package/dist/tools/disassembler.js +478 -0
  27. package/dist/tools/graphics.js +10 -10
  28. package/dist/tools/input.js +338 -0
  29. package/dist/tools/machineControl.js +5 -5
  30. package/dist/tools/memory.js +336 -12
  31. package/dist/tools/meta/index.js +1 -1
  32. package/dist/tools/printer.js +11 -12
  33. package/dist/tools/programRunners.js +61 -22
  34. package/dist/tools/rag.js +9 -9
  35. package/dist/tools/registry/batch.js +167 -0
  36. package/dist/tools/registry/config.js +1 -1
  37. package/dist/tools/registry/disk.js +1 -1
  38. package/dist/tools/registry/drive.js +1 -1
  39. package/dist/tools/registry/extract.js +1 -1
  40. package/dist/tools/registry/graphics.js +102 -2
  41. package/dist/tools/registry/index.js +4 -0
  42. package/dist/tools/registry/input.js +2 -0
  43. package/dist/tools/registry/memory.js +62 -2
  44. package/dist/tools/registry/platform.js +1 -1
  45. package/dist/tools/registry/printer.js +1 -1
  46. package/dist/tools/registry/program.js +1 -1
  47. package/dist/tools/registry/rag.js +1 -1
  48. package/dist/tools/registry/sound.js +1 -1
  49. package/dist/tools/registry/stream.js +1 -1
  50. package/dist/tools/registry/system.js +1 -1
  51. package/dist/tools/schema.js +4 -5
  52. package/dist/tools/storage.js +15 -15
  53. package/dist/tools/streaming.js +3 -3
  54. package/dist/tools/symbolRegistry.js +49 -0
  55. package/dist/tools/types.js +56 -4
  56. package/dist/tools/vice.js +2 -5
  57. package/dist/vice/process.js +120 -2
  58. package/dist/vice/readiness.js +35 -0
  59. package/dist/vice/smokeOptions.js +44 -0
  60. package/dist/vice/viceClient.js +5 -1
  61. package/dist/viceRunner.js +2 -0
  62. package/doc/plans/prompts/README.md +7 -7
  63. package/mcp/prompts.json +42 -59
  64. package/mcp/protocol-examples.json +2 -2
  65. package/mcp/resources.json +179 -166
  66. package/mcp/schemas/c64_batch.schema.json +53 -0
  67. package/mcp/schemas/c64_config.schema.json +525 -283
  68. package/mcp/schemas/c64_debug.schema.json +763 -304
  69. package/mcp/schemas/c64_disk.schema.json +499 -243
  70. package/mcp/schemas/c64_drive.schema.json +165 -90
  71. package/mcp/schemas/c64_extract.schema.json +533 -274
  72. package/mcp/schemas/c64_graphics.schema.json +607 -295
  73. package/mcp/schemas/c64_input.schema.json +136 -0
  74. package/mcp/schemas/c64_memory.schema.json +637 -128
  75. package/mcp/schemas/c64_printer.schema.json +393 -196
  76. package/mcp/schemas/c64_program.schema.json +699 -340
  77. package/mcp/schemas/c64_rag.schema.json +100 -54
  78. package/mcp/schemas/c64_select_backend.schema.json +49 -23
  79. package/mcp/schemas/c64_sound.schema.json +1092 -577
  80. package/mcp/schemas/c64_stream.schema.json +89 -47
  81. package/mcp/schemas/c64_system.schema.json +351 -185
  82. package/mcp/schemas/c64_vice.schema.json +85 -47
  83. package/mcp/server.json +1 -1
  84. package/mcp/tools.json +7299 -3346
  85. package/mcp.json +3 -3
  86. package/package.json +17 -14
  87. package/scripts/fetch-external-sources.mjs +1 -2
  88. package/scripts/run-coverage.mjs +33 -1
  89. package/scripts/run-tests.mjs +2 -2
  90. package/scripts/run-tests.ts +275 -52
  91. package/scripts/update-readme.ts +132 -3
  92. package/server.json +2 -2
@@ -2,11 +2,11 @@
2
2
  "resources": [
3
3
  {
4
4
  "name": "Workflow Rules & Best Practices",
5
- "uri": "c64://context/bootstrap",
5
+ "uri": "c64://guide/bootstrap",
6
6
  "description": "CRITICAL: Mandatory workflow rules for all C64 programming",
7
7
  "mimeType": "text/markdown",
8
8
  "_meta": {
9
- "domain": "orientation",
9
+ "domain": "guide",
10
10
  "priority": "critical",
11
11
  "summary": "Step-by-step rules for safe automation, verification, and rollback on the C64.",
12
12
  "prompts": [
@@ -29,8 +29,8 @@
29
29
  "safety"
30
30
  ],
31
31
  "bundle": {
32
- "id": "orientation",
33
- "title": "Workflow & Orientation",
32
+ "id": "guide",
33
+ "title": "Guides & Orientation",
34
34
  "summary": "Mandatory workflow and safety guidance before issuing any C64 commands.",
35
35
  "order": 0
36
36
  },
@@ -40,11 +40,11 @@
40
40
  },
41
41
  {
42
42
  "name": "Fast Path Workflows",
43
- "uri": "c64://context/fast-paths",
43
+ "uri": "c64://guide/fast-paths",
44
44
  "description": "Shortest reliable workflows for common C64U and VICE tasks, including dual-backend demos.",
45
45
  "mimeType": "text/markdown",
46
46
  "_meta": {
47
- "domain": "orientation",
47
+ "domain": "guide",
48
48
  "priority": "critical",
49
49
  "summary": "Condensed routing guide for one-call demos, backend switching, and when to prefer orchestration over manual tool composition.",
50
50
  "prompts": [
@@ -67,21 +67,68 @@
67
67
  "routing"
68
68
  ],
69
69
  "bundle": {
70
- "id": "orientation",
71
- "title": "Workflow & Orientation",
70
+ "id": "guide",
71
+ "title": "Guides & Orientation",
72
72
  "summary": "Mandatory workflow and safety guidance before issuing any C64 commands.",
73
73
  "order": 0
74
74
  },
75
75
  "order": 1,
76
76
  "relatedResources": [
77
- "c64://context/bootstrap",
77
+ "c64://guide/bootstrap",
78
+ "c64://platform/status"
79
+ ]
80
+ }
81
+ },
82
+ {
83
+ "name": "VICE Binary Monitor Specification",
84
+ "uri": "c64://vice/binary-monitor-spec",
85
+ "description": "Critical VICE Binary Monitor reference for emulator-backed workflows and debugger operations.",
86
+ "mimeType": "text/markdown",
87
+ "_meta": {
88
+ "domain": "vice",
89
+ "priority": "critical",
90
+ "summary": "Transport framing, single-client constraints, command semantics, and monitor side effects that shape all VICE-backed operations.",
91
+ "prompts": [
92
+ "hello-world",
93
+ "basic-program",
94
+ "cross-platform-demo",
95
+ "preset-music-demo",
96
+ "assembly-program",
97
+ "sid-music",
98
+ "graphics-demo",
99
+ "memory-debug",
100
+ "drive-manager"
101
+ ],
102
+ "tools": [
103
+ "c64_program",
104
+ "c64_memory",
105
+ "c64_debug",
106
+ "c64_vice",
107
+ "c64_system"
108
+ ],
109
+ "tags": [
110
+ "vice",
111
+ "binary-monitor",
112
+ "emulator",
113
+ "debugger"
114
+ ],
115
+ "bundle": {
116
+ "id": "vice",
117
+ "title": "VICE Emulator",
118
+ "summary": "Critical Binary Monitor protocol guidance for any workflow that targets the VICE backend.",
119
+ "order": 1
120
+ },
121
+ "order": 0,
122
+ "relatedResources": [
123
+ "c64://guide/bootstrap",
124
+ "c64://guide/fast-paths",
78
125
  "c64://platform/status"
79
126
  ]
80
127
  }
81
128
  },
82
129
  {
83
130
  "name": "Commodore BASIC v2 Specification",
84
- "uri": "c64://specs/basic",
131
+ "uri": "c64://basic/spec",
85
132
  "description": "Complete BASIC v2 reference. READ THIS BEFORE generating any BASIC code!",
86
133
  "mimeType": "text/markdown",
87
134
  "_meta": {
@@ -103,18 +150,18 @@
103
150
  "id": "languages",
104
151
  "title": "Programming Languages",
105
152
  "summary": "Language references required before generating BASIC or 6502 assembly programs.",
106
- "order": 1
153
+ "order": 2
107
154
  },
108
155
  "order": 0,
109
156
  "relatedResources": [
110
- "c64://context/bootstrap",
111
- "c64://docs/basic/pitfalls"
157
+ "c64://guide/bootstrap",
158
+ "c64://basic/pitfalls"
112
159
  ]
113
160
  }
114
161
  },
115
162
  {
116
163
  "name": "BASIC Pitfalls & Gotchas",
117
- "uri": "c64://docs/basic/pitfalls",
164
+ "uri": "c64://basic/pitfalls",
118
165
  "description": "Common mistakes and gotchas when writing Commodore BASIC v2 programs",
119
166
  "mimeType": "text/markdown",
120
167
  "_meta": {
@@ -136,17 +183,17 @@
136
183
  "id": "languages",
137
184
  "title": "Programming Languages",
138
185
  "summary": "Language references required before generating BASIC or 6502 assembly programs.",
139
- "order": 1
186
+ "order": 2
140
187
  },
141
188
  "order": 1,
142
189
  "relatedResources": [
143
- "c64://specs/basic"
190
+ "c64://basic/spec"
144
191
  ]
145
192
  }
146
193
  },
147
194
  {
148
195
  "name": "6502/6510 Assembly Reference",
149
- "uri": "c64://specs/assembly",
196
+ "uri": "c64://assembly/6510-spec",
150
197
  "description": "Full instruction set and addressing modes. READ THIS BEFORE generating assembly!",
151
198
  "mimeType": "text/markdown",
152
199
  "_meta": {
@@ -168,17 +215,17 @@
168
215
  "id": "languages",
169
216
  "title": "Programming Languages",
170
217
  "summary": "Language references required before generating BASIC or 6502 assembly programs.",
171
- "order": 1
218
+ "order": 2
172
219
  },
173
220
  "order": 2,
174
221
  "relatedResources": [
175
- "c64://context/bootstrap"
222
+ "c64://guide/bootstrap"
176
223
  ]
177
224
  }
178
225
  },
179
226
  {
180
227
  "name": "SID Chip Programming Guide",
181
- "uri": "c64://specs/sid",
228
+ "uri": "c64://sound/sid/spec",
182
229
  "description": "Sound Interface Device registers and music programming",
183
230
  "mimeType": "text/markdown",
184
231
  "_meta": {
@@ -199,18 +246,18 @@
199
246
  "id": "audio",
200
247
  "title": "SID & Audio",
201
248
  "summary": "All references needed to compose, play, and verify SID music.",
202
- "order": 2
249
+ "order": 3
203
250
  },
204
251
  "order": 0,
205
252
  "relatedResources": [
206
- "c64://specs/sidwave",
207
- "c64://docs/sid/file-structure"
253
+ "c64://sound/sidwave/spec",
254
+ "c64://sound/sid/file-format"
208
255
  ]
209
256
  }
210
257
  },
211
258
  {
212
259
  "name": "SIDWAVE Music Format Specification",
213
- "uri": "c64://specs/sidwave",
260
+ "uri": "c64://sound/sidwave/spec",
214
261
  "description": "YAML/JSON music composition format for SID chip",
215
262
  "mimeType": "text/markdown",
216
263
  "_meta": {
@@ -231,18 +278,18 @@
231
278
  "id": "audio",
232
279
  "title": "SID & Audio",
233
280
  "summary": "All references needed to compose, play, and verify SID music.",
234
- "order": 2
281
+ "order": 3
235
282
  },
236
283
  "order": 1,
237
284
  "relatedResources": [
238
- "c64://specs/sid",
239
- "c64://docs/sid/file-structure"
285
+ "c64://sound/sid/spec",
286
+ "c64://sound/sid/file-format"
240
287
  ]
241
288
  }
242
289
  },
243
290
  {
244
291
  "name": "SID File Structure Reference",
245
- "uri": "c64://docs/sid/file-structure",
292
+ "uri": "c64://sound/sid/file-format",
246
293
  "description": "Breakdown of the SID file format layout and metadata",
247
294
  "mimeType": "text/markdown",
248
295
  "_meta": {
@@ -263,18 +310,18 @@
263
310
  "id": "audio",
264
311
  "title": "SID & Audio",
265
312
  "summary": "All references needed to compose, play, and verify SID music.",
266
- "order": 2
313
+ "order": 3
267
314
  },
268
315
  "order": 2,
269
316
  "relatedResources": [
270
- "c64://specs/sid",
271
- "c64://specs/sidwave"
317
+ "c64://sound/sid/spec",
318
+ "c64://sound/sidwave/spec"
272
319
  ]
273
320
  }
274
321
  },
275
322
  {
276
323
  "name": "SID Programming Best Practices",
277
- "uri": "c64://docs/sid/best-practices",
324
+ "uri": "c64://sound/sid/best-practices",
278
325
  "description": "Expressive SID composition defaults, ADSR guidance, and musical phrasing tips.",
279
326
  "mimeType": "text/markdown",
280
327
  "_meta": {
@@ -296,18 +343,18 @@
296
343
  "id": "audio",
297
344
  "title": "SID & Audio",
298
345
  "summary": "All references needed to compose, play, and verify SID music.",
299
- "order": 2
346
+ "order": 3
300
347
  },
301
348
  "order": 3,
302
349
  "relatedResources": [
303
- "c64://specs/sid",
304
- "c64://specs/sidwave"
350
+ "c64://sound/sid/spec",
351
+ "c64://sound/sidwave/spec"
305
352
  ]
306
353
  }
307
354
  },
308
355
  {
309
356
  "name": "VIC-II Graphics Specification",
310
- "uri": "c64://specs/vic",
357
+ "uri": "c64://graphics/vic/spec",
311
358
  "description": "Video chip, sprites, raster programming, and timing",
312
359
  "mimeType": "text/markdown",
313
360
  "_meta": {
@@ -329,19 +376,19 @@
329
376
  "id": "graphics",
330
377
  "title": "Graphics & VIC-II",
331
378
  "summary": "Key material for PETSCII art, sprites, and raster control on the VIC-II.",
332
- "order": 3
379
+ "order": 4
333
380
  },
334
381
  "order": 0,
335
382
  "relatedResources": [
336
- "c64://specs/assembly",
337
- "c64://specs/charset",
338
- "c64://docs/petscii-style"
383
+ "c64://assembly/6510-spec",
384
+ "c64://graphics/character-set",
385
+ "c64://graphics/petscii/style-guide"
339
386
  ]
340
387
  }
341
388
  },
342
389
  {
343
390
  "name": "PETSCII Character Set Reference",
344
- "uri": "c64://specs/charset",
391
+ "uri": "c64://graphics/character-set",
345
392
  "description": "Complete PETSCII character codes, screen codes, and glyph mappings",
346
393
  "mimeType": "text/markdown",
347
394
  "_meta": {
@@ -363,18 +410,18 @@
363
410
  "id": "graphics",
364
411
  "title": "Graphics & VIC-II",
365
412
  "summary": "Key material for PETSCII art, sprites, and raster control on the VIC-II.",
366
- "order": 3
413
+ "order": 4
367
414
  },
368
415
  "order": 1,
369
416
  "relatedResources": [
370
- "c64://specs/vic",
371
- "c64://docs/petscii-style"
417
+ "c64://graphics/vic/spec",
418
+ "c64://graphics/petscii/style-guide"
372
419
  ]
373
420
  }
374
421
  },
375
422
  {
376
423
  "name": "PETSCII Style Guide and Presets",
377
- "uri": "c64://docs/petscii-style",
424
+ "uri": "c64://graphics/petscii/style-guide",
378
425
  "description": "Colour combinations, contrast guidelines, and recommended presets for PETSCII art",
379
426
  "mimeType": "text/markdown",
380
427
  "_meta": {
@@ -397,19 +444,19 @@
397
444
  "id": "graphics",
398
445
  "title": "Graphics & VIC-II",
399
446
  "summary": "Key material for PETSCII art, sprites, and raster control on the VIC-II.",
400
- "order": 3
447
+ "order": 4
401
448
  },
402
449
  "order": 2,
403
450
  "relatedResources": [
404
- "c64://specs/vic",
405
- "c64://specs/charset",
406
- "c64://docs/sprite-charset-workflows"
451
+ "c64://graphics/vic/spec",
452
+ "c64://graphics/character-set",
453
+ "c64://graphics/sprite-charset/best-practices"
407
454
  ]
408
455
  }
409
456
  },
410
457
  {
411
458
  "name": "Sprite & Charset Workflows Best Practices",
412
- "uri": "c64://docs/sprite-charset-workflows",
459
+ "uri": "c64://graphics/sprite-charset/best-practices",
413
460
  "description": "Comprehensive guide to creating, managing, and deploying sprites and custom character sets",
414
461
  "mimeType": "text/markdown",
415
462
  "_meta": {
@@ -434,20 +481,20 @@
434
481
  "id": "graphics",
435
482
  "title": "Graphics & VIC-II",
436
483
  "summary": "Key material for PETSCII art, sprites, and raster control on the VIC-II.",
437
- "order": 3
484
+ "order": 4
438
485
  },
439
486
  "order": 3,
440
487
  "relatedResources": [
441
- "c64://specs/vic",
442
- "c64://specs/charset",
443
- "c64://docs/petscii-style",
444
- "c64://specs/memory-map"
488
+ "c64://graphics/vic/spec",
489
+ "c64://graphics/character-set",
490
+ "c64://graphics/petscii/style-guide",
491
+ "c64://memory/map"
445
492
  ]
446
493
  }
447
494
  },
448
495
  {
449
496
  "name": "C64 Memory Map",
450
- "uri": "c64://specs/memory-map",
497
+ "uri": "c64://memory/map",
451
498
  "description": "Complete RAM, ROM, and I/O address map for the Commodore 64.",
452
499
  "mimeType": "text/markdown",
453
500
  "_meta": {
@@ -471,17 +518,17 @@
471
518
  "id": "memory",
472
519
  "title": "Memory & I/O Reference",
473
520
  "summary": "Critical tables for RAM layout, zero-page vectors, and peripheral I/O registers.",
474
- "order": 4
521
+ "order": 5
475
522
  },
476
523
  "order": 0,
477
524
  "relatedResources": [
478
- "c64://specs/assembly"
525
+ "c64://assembly/6510-spec"
479
526
  ]
480
527
  }
481
528
  },
482
529
  {
483
530
  "name": "Low Memory Usage Guide",
484
- "uri": "c64://specs/memory-low",
531
+ "uri": "c64://memory/zero-page-and-workspace",
485
532
  "description": "Zero-page and system vector reference for low-memory addresses.",
486
533
  "mimeType": "text/markdown",
487
534
  "_meta": {
@@ -505,18 +552,18 @@
505
552
  "id": "memory",
506
553
  "title": "Memory & I/O Reference",
507
554
  "summary": "Critical tables for RAM layout, zero-page vectors, and peripheral I/O registers.",
508
- "order": 4
555
+ "order": 5
509
556
  },
510
557
  "order": 1,
511
558
  "relatedResources": [
512
- "c64://specs/memory-map",
513
- "c64://specs/assembly"
559
+ "c64://memory/map",
560
+ "c64://assembly/6510-spec"
514
561
  ]
515
562
  }
516
563
  },
517
564
  {
518
565
  "name": "KERNAL Memory Map",
519
- "uri": "c64://specs/memory-kernal",
566
+ "uri": "c64://kernal/rom-routines",
520
567
  "description": "Detailed breakdown of KERNAL ROM routines and entry points.",
521
568
  "mimeType": "text/markdown",
522
569
  "_meta": {
@@ -539,18 +586,18 @@
539
586
  "id": "memory",
540
587
  "title": "Memory & I/O Reference",
541
588
  "summary": "Critical tables for RAM layout, zero-page vectors, and peripheral I/O registers.",
542
- "order": 4
589
+ "order": 5
543
590
  },
544
591
  "order": 2,
545
592
  "relatedResources": [
546
- "c64://specs/memory-map",
547
- "c64://specs/assembly"
593
+ "c64://memory/map",
594
+ "c64://assembly/6510-spec"
548
595
  ]
549
596
  }
550
597
  },
551
598
  {
552
599
  "name": "C64 I/O Register Map",
553
- "uri": "c64://specs/io",
600
+ "uri": "c64://io/spec",
554
601
  "description": "Comprehensive table of memory-mapped hardware registers.",
555
602
  "mimeType": "text/markdown",
556
603
  "_meta": {
@@ -576,18 +623,18 @@
576
623
  "id": "memory",
577
624
  "title": "Memory & I/O Reference",
578
625
  "summary": "Critical tables for RAM layout, zero-page vectors, and peripheral I/O registers.",
579
- "order": 4
626
+ "order": 5
580
627
  },
581
628
  "order": 3,
582
629
  "relatedResources": [
583
- "c64://specs/memory-map",
584
- "c64://specs/assembly"
630
+ "c64://memory/map",
631
+ "c64://assembly/6510-spec"
585
632
  ]
586
633
  }
587
634
  },
588
635
  {
589
636
  "name": "CIA Register Reference",
590
- "uri": "c64://specs/cia",
637
+ "uri": "c64://io/cia/spec",
591
638
  "description": "Timer, keyboard, and peripheral register reference for CIA chips.",
592
639
  "mimeType": "text/markdown",
593
640
  "_meta": {
@@ -612,18 +659,18 @@
612
659
  "id": "memory",
613
660
  "title": "Memory & I/O Reference",
614
661
  "summary": "Critical tables for RAM layout, zero-page vectors, and peripheral I/O registers.",
615
- "order": 4
662
+ "order": 5
616
663
  },
617
664
  "order": 4,
618
665
  "relatedResources": [
619
- "c64://specs/io",
620
- "c64://specs/memory-map"
666
+ "c64://io/spec",
667
+ "c64://memory/map"
621
668
  ]
622
669
  }
623
670
  },
624
671
  {
625
672
  "name": "Printer Programming Guide",
626
- "uri": "c64://specs/printer",
673
+ "uri": "c64://printer/spec",
627
674
  "description": "Commodore MPS and Epson FX printer control",
628
675
  "mimeType": "text/markdown",
629
676
  "_meta": {
@@ -646,52 +693,18 @@
646
693
  "id": "printer",
647
694
  "title": "Printers & Hardcopy",
648
695
  "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
649
- "order": 5
696
+ "order": 6
650
697
  },
651
698
  "order": 0,
652
699
  "relatedResources": [
653
- "c64://docs/printer/guide",
654
- "c64://docs/printer/commodore-text",
655
- "c64://docs/printer/epson-text"
656
- ]
657
- }
658
- },
659
- {
660
- "name": "Printer Workflow Guide",
661
- "uri": "c64://docs/printer/guide",
662
- "description": "Unified quick reference for Commodore and Epson printers",
663
- "mimeType": "text/markdown",
664
- "_meta": {
665
- "domain": "printer",
666
- "priority": "reference",
667
- "summary": "Quick-look workflow covering setup, troubleshooting, and sample jobs for both printer families.",
668
- "prompts": [
669
- "printer-job"
670
- ],
671
- "tools": [
672
- "printer_guide"
673
- ],
674
- "tags": [
675
- "printer",
676
- "workflow"
677
- ],
678
- "bundle": {
679
- "id": "printer",
680
- "title": "Printers & Hardcopy",
681
- "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
682
- "order": 5
683
- },
684
- "order": 1,
685
- "relatedResources": [
686
- "c64://specs/printer",
687
- "c64://docs/printer/commodore-text",
688
- "c64://docs/printer/epson-text"
700
+ "c64://printer/commodore/text",
701
+ "c64://printer/epson/text"
689
702
  ]
690
703
  }
691
704
  },
692
705
  {
693
706
  "name": "Commodore Printer Text Guide",
694
- "uri": "c64://docs/printer/commodore-text",
707
+ "uri": "c64://printer/commodore/text",
695
708
  "description": "Device 4 character printing reference for Commodore MPS printers",
696
709
  "mimeType": "text/markdown",
697
710
  "_meta": {
@@ -712,18 +725,18 @@
712
725
  "id": "printer",
713
726
  "title": "Printers & Hardcopy",
714
727
  "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
715
- "order": 5
728
+ "order": 6
716
729
  },
717
- "order": 2,
730
+ "order": 1,
718
731
  "relatedResources": [
719
- "c64://specs/printer",
720
- "c64://docs/printer/commodore-bitmap"
732
+ "c64://printer/spec",
733
+ "c64://printer/commodore/bitmap"
721
734
  ]
722
735
  }
723
736
  },
724
737
  {
725
738
  "name": "Commodore Printer Bitmap Guide",
726
- "uri": "c64://docs/printer/commodore-bitmap",
739
+ "uri": "c64://printer/commodore/bitmap",
727
740
  "description": "Bitmap and custom character printing workflow for Commodore printers",
728
741
  "mimeType": "text/markdown",
729
742
  "_meta": {
@@ -745,18 +758,18 @@
745
758
  "id": "printer",
746
759
  "title": "Printers & Hardcopy",
747
760
  "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
748
- "order": 5
761
+ "order": 6
749
762
  },
750
- "order": 3,
763
+ "order": 2,
751
764
  "relatedResources": [
752
- "c64://docs/printer/commodore-text",
753
- "c64://specs/printer"
765
+ "c64://printer/commodore/text",
766
+ "c64://printer/spec"
754
767
  ]
755
768
  }
756
769
  },
757
770
  {
758
771
  "name": "Epson Printer Text Guide",
759
- "uri": "c64://docs/printer/epson-text",
772
+ "uri": "c64://printer/epson/text",
760
773
  "description": "Text control sequences for Epson FX-compatible printers",
761
774
  "mimeType": "text/markdown",
762
775
  "_meta": {
@@ -777,18 +790,18 @@
777
790
  "id": "printer",
778
791
  "title": "Printers & Hardcopy",
779
792
  "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
780
- "order": 5
793
+ "order": 6
781
794
  },
782
- "order": 4,
795
+ "order": 3,
783
796
  "relatedResources": [
784
- "c64://docs/printer/epson-bitmap",
785
- "c64://specs/printer"
797
+ "c64://printer/epson/bitmap",
798
+ "c64://printer/spec"
786
799
  ]
787
800
  }
788
801
  },
789
802
  {
790
803
  "name": "Epson Printer Bitmap Guide",
791
- "uri": "c64://docs/printer/epson-bitmap",
804
+ "uri": "c64://printer/epson/bitmap",
792
805
  "description": "Bitmap printing and graphics control for Epson FX printers",
793
806
  "mimeType": "text/markdown",
794
807
  "_meta": {
@@ -810,18 +823,18 @@
810
823
  "id": "printer",
811
824
  "title": "Printers & Hardcopy",
812
825
  "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
813
- "order": 5
826
+ "order": 6
814
827
  },
815
- "order": 5,
828
+ "order": 4,
816
829
  "relatedResources": [
817
- "c64://docs/printer/epson-text",
818
- "c64://specs/printer"
830
+ "c64://printer/epson/text",
831
+ "c64://printer/spec"
819
832
  ]
820
833
  }
821
834
  },
822
835
  {
823
836
  "name": "Printer Prompt Templates",
824
- "uri": "c64://docs/printer/prompts",
837
+ "uri": "c64://printer/prompt-guide",
825
838
  "description": "Template prompts and workflow guidance for printer jobs",
826
839
  "mimeType": "text/markdown",
827
840
  "_meta": {
@@ -842,23 +855,23 @@
842
855
  "id": "printer",
843
856
  "title": "Printers & Hardcopy",
844
857
  "summary": "Guides for Commodore MPS and Epson FX printing workflows, including prompts.",
845
- "order": 5
858
+ "order": 6
846
859
  },
847
- "order": 6,
860
+ "order": 5,
848
861
  "relatedResources": [
849
- "c64://docs/printer/guide",
850
- "c64://docs/printer/commodore-text",
851
- "c64://docs/printer/epson-text"
862
+ "c64://printer/spec",
863
+ "c64://printer/commodore/text",
864
+ "c64://printer/epson/text"
852
865
  ]
853
866
  }
854
867
  },
855
868
  {
856
869
  "name": "C64 Knowledge Map",
857
- "uri": "c64://docs/index",
870
+ "uri": "c64://guide/index",
858
871
  "description": "Start here for a guided tour of all Commodore 64 knowledge resources",
859
872
  "mimeType": "text/markdown",
860
873
  "_meta": {
861
- "domain": "overview",
874
+ "domain": "guide",
862
875
  "priority": "critical",
863
876
  "summary": "Explains how to approach each knowledge bundle and when to consult it.",
864
877
  "prompts": [
@@ -883,38 +896,38 @@
883
896
  "overview"
884
897
  ],
885
898
  "bundle": {
886
- "id": "overview",
899
+ "id": "guide",
887
900
  "title": "Knowledge Overview",
888
901
  "summary": "Read this first to understand how the MCP server organizes Commodore 64 expertise.",
889
902
  "order": -1
890
903
  },
891
904
  "order": 0,
892
905
  "relatedResources": [
893
- "c64://context/bootstrap",
894
- "c64://context/fast-paths",
895
- "c64://specs/basic",
896
- "c64://docs/basic/pitfalls",
897
- "c64://specs/assembly",
898
- "c64://specs/sid",
899
- "c64://specs/sidwave",
900
- "c64://docs/sid/file-structure",
901
- "c64://docs/sid/best-practices",
902
- "c64://specs/vic",
903
- "c64://specs/charset",
904
- "c64://docs/petscii-style",
905
- "c64://docs/sprite-charset-workflows",
906
- "c64://specs/memory-map",
907
- "c64://specs/memory-low",
908
- "c64://specs/memory-kernal",
909
- "c64://specs/io",
910
- "c64://specs/cia",
911
- "c64://specs/printer",
912
- "c64://docs/printer/guide",
913
- "c64://docs/printer/commodore-text",
914
- "c64://docs/printer/commodore-bitmap",
915
- "c64://docs/printer/epson-text",
916
- "c64://docs/printer/epson-bitmap",
917
- "c64://docs/printer/prompts"
906
+ "c64://guide/bootstrap",
907
+ "c64://guide/fast-paths",
908
+ "c64://vice/binary-monitor-spec",
909
+ "c64://basic/spec",
910
+ "c64://basic/pitfalls",
911
+ "c64://assembly/6510-spec",
912
+ "c64://sound/sid/spec",
913
+ "c64://sound/sidwave/spec",
914
+ "c64://sound/sid/file-format",
915
+ "c64://sound/sid/best-practices",
916
+ "c64://graphics/vic/spec",
917
+ "c64://graphics/character-set",
918
+ "c64://graphics/petscii/style-guide",
919
+ "c64://graphics/sprite-charset/best-practices",
920
+ "c64://memory/map",
921
+ "c64://memory/zero-page-and-workspace",
922
+ "c64://kernal/rom-routines",
923
+ "c64://io/spec",
924
+ "c64://io/cia/spec",
925
+ "c64://printer/spec",
926
+ "c64://printer/commodore/text",
927
+ "c64://printer/commodore/bitmap",
928
+ "c64://printer/epson/text",
929
+ "c64://printer/epson/bitmap",
930
+ "c64://printer/prompt-guide"
918
931
  ]
919
932
  }
920
933
  },