muse-app-preview-mcp 1.2.0 → 1.3.0
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/dist/index.js +447 -25
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -75,9 +75,9 @@ const tools = [
|
|
|
75
75
|
type: "string",
|
|
76
76
|
description: "Subtitle text for the preview (e.g., 'Discover new possibilities')",
|
|
77
77
|
},
|
|
78
|
-
|
|
78
|
+
deviceId: {
|
|
79
79
|
type: "string",
|
|
80
|
-
description: "Device
|
|
80
|
+
description: "Device ID (iphone_6_7, iphone_6_5, ipad_12_9, mac_retina, etc.). Optional.",
|
|
81
81
|
},
|
|
82
82
|
paletteId: {
|
|
83
83
|
type: "string",
|
|
@@ -131,9 +131,9 @@ const tools = [
|
|
|
131
131
|
type: "string",
|
|
132
132
|
description: "New screenshot path (optional)",
|
|
133
133
|
},
|
|
134
|
-
|
|
134
|
+
deviceId: {
|
|
135
135
|
type: "string",
|
|
136
|
-
description: "New device
|
|
136
|
+
description: "New device ID (optional)",
|
|
137
137
|
},
|
|
138
138
|
paletteId: {
|
|
139
139
|
type: "string",
|
|
@@ -229,9 +229,9 @@ const tools = [
|
|
|
229
229
|
type: "string",
|
|
230
230
|
description: "Subtitle text for the preview (e.g., 'Get started in seconds')",
|
|
231
231
|
},
|
|
232
|
-
|
|
232
|
+
deviceId: {
|
|
233
233
|
type: "string",
|
|
234
|
-
description: "Device
|
|
234
|
+
description: "Device ID (iphone_6_7, iphone_6_5, ipad_12_9, mac_retina, etc.). Optional.",
|
|
235
235
|
},
|
|
236
236
|
paletteId: {
|
|
237
237
|
type: "string",
|
|
@@ -253,6 +253,85 @@ const tools = [
|
|
|
253
253
|
properties: {},
|
|
254
254
|
},
|
|
255
255
|
},
|
|
256
|
+
{
|
|
257
|
+
name: "reset_all",
|
|
258
|
+
description: "Complete reset: clears all previews, screenshots, and pending data. Use this before starting a fresh preview session.",
|
|
259
|
+
inputSchema: {
|
|
260
|
+
type: "object",
|
|
261
|
+
properties: {
|
|
262
|
+
confirm: {
|
|
263
|
+
type: "boolean",
|
|
264
|
+
description: "Must be true to confirm reset",
|
|
265
|
+
},
|
|
266
|
+
},
|
|
267
|
+
required: ["confirm"],
|
|
268
|
+
},
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
name: "launch_and_capture",
|
|
272
|
+
description: "Launch a specific app in the simulator, wait for it to load, then capture a screenshot. This is the smart capture that ensures the app is ready before taking screenshots.",
|
|
273
|
+
inputSchema: {
|
|
274
|
+
type: "object",
|
|
275
|
+
properties: {
|
|
276
|
+
bundleId: {
|
|
277
|
+
type: "string",
|
|
278
|
+
description: "Bundle ID of the app to launch (e.g., 'com.example.myapp')",
|
|
279
|
+
},
|
|
280
|
+
title: {
|
|
281
|
+
type: "string",
|
|
282
|
+
description: "Title text for the preview",
|
|
283
|
+
},
|
|
284
|
+
subtitle: {
|
|
285
|
+
type: "string",
|
|
286
|
+
description: "Subtitle text for the preview",
|
|
287
|
+
},
|
|
288
|
+
waitSeconds: {
|
|
289
|
+
type: "number",
|
|
290
|
+
description: "Seconds to wait after launch before capture. Default: 3",
|
|
291
|
+
},
|
|
292
|
+
simulatorUDID: {
|
|
293
|
+
type: "string",
|
|
294
|
+
description: "Specific simulator UDID. Optional.",
|
|
295
|
+
},
|
|
296
|
+
paletteId: {
|
|
297
|
+
type: "string",
|
|
298
|
+
description: "Color palette ID. Optional.",
|
|
299
|
+
},
|
|
300
|
+
},
|
|
301
|
+
required: ["bundleId", "title", "subtitle"],
|
|
302
|
+
},
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
name: "capture_app_screens",
|
|
306
|
+
description: "Capture multiple screens from a running app by simulating navigation. Generates a complete set of App Store preview images.",
|
|
307
|
+
inputSchema: {
|
|
308
|
+
type: "object",
|
|
309
|
+
properties: {
|
|
310
|
+
bundleId: {
|
|
311
|
+
type: "string",
|
|
312
|
+
description: "Bundle ID of the app",
|
|
313
|
+
},
|
|
314
|
+
screens: {
|
|
315
|
+
type: "array",
|
|
316
|
+
description: "Array of screens to capture with titles",
|
|
317
|
+
items: {
|
|
318
|
+
type: "object",
|
|
319
|
+
properties: {
|
|
320
|
+
title: { type: "string" },
|
|
321
|
+
subtitle: { type: "string" },
|
|
322
|
+
paletteId: { type: "string" },
|
|
323
|
+
waitSeconds: { type: "number" },
|
|
324
|
+
},
|
|
325
|
+
},
|
|
326
|
+
},
|
|
327
|
+
simulatorUDID: {
|
|
328
|
+
type: "string",
|
|
329
|
+
description: "Specific simulator UDID. Optional.",
|
|
330
|
+
},
|
|
331
|
+
},
|
|
332
|
+
required: ["bundleId", "screens"],
|
|
333
|
+
},
|
|
334
|
+
},
|
|
256
335
|
];
|
|
257
336
|
// Tool handlers
|
|
258
337
|
async function handleAddPreview(args) {
|
|
@@ -269,7 +348,7 @@ async function handleAddPreview(args) {
|
|
|
269
348
|
screenshotPath: args.screenshotPath,
|
|
270
349
|
title: args.title,
|
|
271
350
|
subtitle: args.subtitle,
|
|
272
|
-
|
|
351
|
+
deviceId: args.deviceId || store.settings.defaultDeviceType,
|
|
273
352
|
paletteId: args.paletteId || store.settings.defaultPaletteId,
|
|
274
353
|
createdAt: new Date().toISOString(),
|
|
275
354
|
};
|
|
@@ -293,7 +372,7 @@ async function handleListPreviews() {
|
|
|
293
372
|
title: p.title,
|
|
294
373
|
subtitle: p.subtitle,
|
|
295
374
|
screenshotPath: p.screenshotPath,
|
|
296
|
-
|
|
375
|
+
deviceId: p.deviceId,
|
|
297
376
|
paletteId: p.paletteId,
|
|
298
377
|
createdAt: p.createdAt,
|
|
299
378
|
})),
|
|
@@ -339,8 +418,8 @@ async function handleUpdatePreview(args) {
|
|
|
339
418
|
}
|
|
340
419
|
preview.screenshotPath = args.screenshotPath;
|
|
341
420
|
}
|
|
342
|
-
if (args.
|
|
343
|
-
preview.
|
|
421
|
+
if (args.deviceId)
|
|
422
|
+
preview.deviceId = args.deviceId;
|
|
344
423
|
if (args.paletteId)
|
|
345
424
|
preview.paletteId = args.paletteId;
|
|
346
425
|
saveStore(store);
|
|
@@ -484,28 +563,113 @@ async function handleUpdateSettings(args) {
|
|
|
484
563
|
settings: store.settings,
|
|
485
564
|
});
|
|
486
565
|
}
|
|
566
|
+
// Helper to get booted simulators
|
|
567
|
+
async function getBootedSimulators() {
|
|
568
|
+
const { stdout } = await execAsync("xcrun simctl list devices booted -j");
|
|
569
|
+
const data = JSON.parse(stdout);
|
|
570
|
+
const bootedDevices = [];
|
|
571
|
+
for (const [runtime, devices] of Object.entries(data.devices)) {
|
|
572
|
+
const deviceList = devices;
|
|
573
|
+
for (const device of deviceList) {
|
|
574
|
+
if (device.state === "Booted") {
|
|
575
|
+
const runtimeMatch = runtime.match(/iOS[- ](\d+[.-]\d+)/i);
|
|
576
|
+
const runtimeVersion = runtimeMatch
|
|
577
|
+
? `iOS ${runtimeMatch[1].replace("-", ".")}`
|
|
578
|
+
: runtime;
|
|
579
|
+
bootedDevices.push({
|
|
580
|
+
name: device.name,
|
|
581
|
+
udid: device.udid,
|
|
582
|
+
runtime: runtimeVersion,
|
|
583
|
+
});
|
|
584
|
+
}
|
|
585
|
+
}
|
|
586
|
+
}
|
|
587
|
+
return bootedDevices;
|
|
588
|
+
}
|
|
589
|
+
// Map simulator name to deviceId
|
|
590
|
+
function mapSimulatorToDeviceId(simulatorName) {
|
|
591
|
+
const name = simulatorName.toLowerCase();
|
|
592
|
+
// iPhone mappings
|
|
593
|
+
if (name.includes("iphone 15 pro max") || name.includes("iphone 16 pro max"))
|
|
594
|
+
return "iphone_6_7";
|
|
595
|
+
if (name.includes("iphone 15 pro") || name.includes("iphone 16 pro"))
|
|
596
|
+
return "iphone_6_1_pro";
|
|
597
|
+
if (name.includes("iphone 15 plus") || name.includes("iphone 16 plus"))
|
|
598
|
+
return "iphone_6_7";
|
|
599
|
+
if (name.includes("iphone 15") || name.includes("iphone 16"))
|
|
600
|
+
return "iphone_6_1";
|
|
601
|
+
if (name.includes("iphone 14 pro max"))
|
|
602
|
+
return "iphone_6_7";
|
|
603
|
+
if (name.includes("iphone 14 pro"))
|
|
604
|
+
return "iphone_6_1_pro";
|
|
605
|
+
if (name.includes("iphone 14 plus"))
|
|
606
|
+
return "iphone_6_7";
|
|
607
|
+
if (name.includes("iphone 14"))
|
|
608
|
+
return "iphone_6_1";
|
|
609
|
+
if (name.includes("iphone se"))
|
|
610
|
+
return "iphone_5_5";
|
|
611
|
+
// iPad mappings
|
|
612
|
+
if (name.includes("ipad pro 12.9") || name.includes("ipad pro (12.9"))
|
|
613
|
+
return "ipad_12_9";
|
|
614
|
+
if (name.includes("ipad pro 11") || name.includes("ipad pro (11"))
|
|
615
|
+
return "ipad_11";
|
|
616
|
+
if (name.includes("ipad air"))
|
|
617
|
+
return "ipad_10_9";
|
|
618
|
+
if (name.includes("ipad mini"))
|
|
619
|
+
return "ipad_8_3";
|
|
620
|
+
if (name.includes("ipad"))
|
|
621
|
+
return "ipad_10_9";
|
|
622
|
+
// Default to iPhone 6.7"
|
|
623
|
+
return "iphone_6_7";
|
|
624
|
+
}
|
|
487
625
|
async function handleCaptureSimulator(args) {
|
|
488
626
|
try {
|
|
489
627
|
ensureScreenshotsDir();
|
|
490
|
-
//
|
|
491
|
-
|
|
492
|
-
const screenshotPath = path.join(SCREENSHOTS_DIR, `screenshot_${timestamp}.png`);
|
|
493
|
-
// Determine which simulator to capture
|
|
494
|
-
const targetDevice = args.simulatorUDID || "booted";
|
|
495
|
-
// Capture screenshot from simulator
|
|
628
|
+
// First, detect which simulators are running
|
|
629
|
+
let bootedSimulators = [];
|
|
496
630
|
try {
|
|
497
|
-
await
|
|
631
|
+
bootedSimulators = await getBootedSimulators();
|
|
498
632
|
}
|
|
499
|
-
catch (
|
|
500
|
-
//
|
|
501
|
-
|
|
633
|
+
catch (e) {
|
|
634
|
+
// Ignore error, will check later
|
|
635
|
+
}
|
|
636
|
+
if (bootedSimulators.length === 0) {
|
|
637
|
+
return JSON.stringify({
|
|
638
|
+
success: false,
|
|
639
|
+
error: "No iOS Simulator is running",
|
|
640
|
+
hint: "Please launch an iOS Simulator first using Xcode or 'xcrun simctl boot <device>'",
|
|
641
|
+
});
|
|
642
|
+
}
|
|
643
|
+
// Determine which simulator to capture
|
|
644
|
+
let targetSimulator;
|
|
645
|
+
if (args.simulatorUDID) {
|
|
646
|
+
// Use specified simulator
|
|
647
|
+
targetSimulator = bootedSimulators.find(s => s.udid === args.simulatorUDID);
|
|
648
|
+
if (!targetSimulator) {
|
|
502
649
|
return JSON.stringify({
|
|
503
650
|
success: false,
|
|
504
|
-
error:
|
|
505
|
-
|
|
651
|
+
error: `Simulator with UDID ${args.simulatorUDID} is not booted`,
|
|
652
|
+
bootedSimulators: bootedSimulators,
|
|
506
653
|
});
|
|
507
654
|
}
|
|
508
|
-
|
|
655
|
+
}
|
|
656
|
+
else {
|
|
657
|
+
// Use first booted simulator (most recently interacted one is usually first)
|
|
658
|
+
targetSimulator = bootedSimulators[0];
|
|
659
|
+
}
|
|
660
|
+
// Generate unique filename with simulator info
|
|
661
|
+
const timestamp = Date.now();
|
|
662
|
+
const safeName = targetSimulator.name.replace(/[^a-zA-Z0-9]/g, "_");
|
|
663
|
+
const screenshotPath = path.join(SCREENSHOTS_DIR, `screenshot_${safeName}_${timestamp}.png`);
|
|
664
|
+
// Capture screenshot from the specific simulator
|
|
665
|
+
try {
|
|
666
|
+
await execAsync(`xcrun simctl io ${targetSimulator.udid} screenshot "${screenshotPath}"`);
|
|
667
|
+
}
|
|
668
|
+
catch (captureError) {
|
|
669
|
+
return JSON.stringify({
|
|
670
|
+
success: false,
|
|
671
|
+
error: `Failed to capture from ${targetSimulator.name}: ${captureError.message}`,
|
|
672
|
+
});
|
|
509
673
|
}
|
|
510
674
|
// Verify screenshot was created
|
|
511
675
|
if (!fs.existsSync(screenshotPath)) {
|
|
@@ -514,6 +678,8 @@ async function handleCaptureSimulator(args) {
|
|
|
514
678
|
error: "Failed to capture screenshot",
|
|
515
679
|
});
|
|
516
680
|
}
|
|
681
|
+
// Auto-detect deviceId based on simulator name if not specified
|
|
682
|
+
const autoDeviceId = mapSimulatorToDeviceId(targetSimulator.name);
|
|
517
683
|
// Add to preview store
|
|
518
684
|
const store = loadStore();
|
|
519
685
|
const preview = {
|
|
@@ -521,7 +687,7 @@ async function handleCaptureSimulator(args) {
|
|
|
521
687
|
screenshotPath: screenshotPath,
|
|
522
688
|
title: args.title,
|
|
523
689
|
subtitle: args.subtitle,
|
|
524
|
-
|
|
690
|
+
deviceId: args.deviceId || autoDeviceId, // Use auto-detected deviceId
|
|
525
691
|
paletteId: args.paletteId || store.settings.defaultPaletteId,
|
|
526
692
|
createdAt: new Date().toISOString(),
|
|
527
693
|
};
|
|
@@ -529,9 +695,18 @@ async function handleCaptureSimulator(args) {
|
|
|
529
695
|
saveStore(store);
|
|
530
696
|
return JSON.stringify({
|
|
531
697
|
success: true,
|
|
532
|
-
message:
|
|
698
|
+
message: `Screenshot captured from ${targetSimulator.name}`,
|
|
699
|
+
capturedFrom: {
|
|
700
|
+
name: targetSimulator.name,
|
|
701
|
+
udid: targetSimulator.udid,
|
|
702
|
+
runtime: targetSimulator.runtime,
|
|
703
|
+
},
|
|
704
|
+
autoDetectedDeviceId: autoDeviceId,
|
|
533
705
|
preview: preview,
|
|
534
706
|
totalPreviews: store.previews.length,
|
|
707
|
+
otherBootedSimulators: bootedSimulators.length > 1
|
|
708
|
+
? bootedSimulators.filter(s => s.udid !== targetSimulator.udid)
|
|
709
|
+
: undefined,
|
|
535
710
|
});
|
|
536
711
|
}
|
|
537
712
|
catch (error) {
|
|
@@ -587,6 +762,244 @@ async function handleListSimulators() {
|
|
|
587
762
|
});
|
|
588
763
|
}
|
|
589
764
|
}
|
|
765
|
+
// Helper: Sleep function
|
|
766
|
+
function sleep(seconds) {
|
|
767
|
+
return new Promise(resolve => setTimeout(resolve, seconds * 1000));
|
|
768
|
+
}
|
|
769
|
+
// Helper: Check if app is running in simulator
|
|
770
|
+
async function isAppRunning(simulatorUDID, bundleId) {
|
|
771
|
+
try {
|
|
772
|
+
const { stdout } = await execAsync(`xcrun simctl spawn ${simulatorUDID} launchctl list | grep ${bundleId}`);
|
|
773
|
+
return stdout.includes(bundleId);
|
|
774
|
+
}
|
|
775
|
+
catch {
|
|
776
|
+
return false;
|
|
777
|
+
}
|
|
778
|
+
}
|
|
779
|
+
// Handler: Complete reset
|
|
780
|
+
async function handleResetAll(args) {
|
|
781
|
+
if (!args.confirm) {
|
|
782
|
+
return JSON.stringify({
|
|
783
|
+
success: false,
|
|
784
|
+
error: "Please set confirm: true to reset all data",
|
|
785
|
+
});
|
|
786
|
+
}
|
|
787
|
+
try {
|
|
788
|
+
const dataDir = path.join(process.env.HOME || "~", ".muse-app-preview");
|
|
789
|
+
// Count what we're deleting
|
|
790
|
+
let screenshotCount = 0;
|
|
791
|
+
let previewCount = 0;
|
|
792
|
+
// Clear screenshots
|
|
793
|
+
if (fs.existsSync(SCREENSHOTS_DIR)) {
|
|
794
|
+
const files = fs.readdirSync(SCREENSHOTS_DIR);
|
|
795
|
+
screenshotCount = files.length;
|
|
796
|
+
for (const file of files) {
|
|
797
|
+
fs.unlinkSync(path.join(SCREENSHOTS_DIR, file));
|
|
798
|
+
}
|
|
799
|
+
}
|
|
800
|
+
// Clear previews
|
|
801
|
+
const store = loadStore();
|
|
802
|
+
previewCount = store.previews.length;
|
|
803
|
+
store.previews = [];
|
|
804
|
+
saveStore(store);
|
|
805
|
+
// Clear pending previews
|
|
806
|
+
const pendingPath = path.join(dataDir, "pending-previews.json");
|
|
807
|
+
if (fs.existsSync(pendingPath)) {
|
|
808
|
+
fs.unlinkSync(pendingPath);
|
|
809
|
+
}
|
|
810
|
+
return JSON.stringify({
|
|
811
|
+
success: true,
|
|
812
|
+
message: "Complete reset done",
|
|
813
|
+
deleted: {
|
|
814
|
+
screenshots: screenshotCount,
|
|
815
|
+
previews: previewCount,
|
|
816
|
+
},
|
|
817
|
+
});
|
|
818
|
+
}
|
|
819
|
+
catch (error) {
|
|
820
|
+
return JSON.stringify({
|
|
821
|
+
success: false,
|
|
822
|
+
error: `Reset failed: ${error.message}`,
|
|
823
|
+
});
|
|
824
|
+
}
|
|
825
|
+
}
|
|
826
|
+
// Handler: Launch app and capture
|
|
827
|
+
async function handleLaunchAndCapture(args) {
|
|
828
|
+
try {
|
|
829
|
+
ensureScreenshotsDir();
|
|
830
|
+
// Get target simulator
|
|
831
|
+
const bootedSimulators = await getBootedSimulators();
|
|
832
|
+
if (bootedSimulators.length === 0) {
|
|
833
|
+
return JSON.stringify({
|
|
834
|
+
success: false,
|
|
835
|
+
error: "No iOS Simulator is running",
|
|
836
|
+
hint: "Please launch an iOS Simulator first",
|
|
837
|
+
});
|
|
838
|
+
}
|
|
839
|
+
let targetSimulator = args.simulatorUDID
|
|
840
|
+
? bootedSimulators.find(s => s.udid === args.simulatorUDID)
|
|
841
|
+
: bootedSimulators[0];
|
|
842
|
+
if (!targetSimulator) {
|
|
843
|
+
return JSON.stringify({
|
|
844
|
+
success: false,
|
|
845
|
+
error: "Specified simulator not found",
|
|
846
|
+
bootedSimulators,
|
|
847
|
+
});
|
|
848
|
+
}
|
|
849
|
+
// Terminate app first (clean state)
|
|
850
|
+
try {
|
|
851
|
+
await execAsync(`xcrun simctl terminate ${targetSimulator.udid} ${args.bundleId}`);
|
|
852
|
+
await sleep(0.5);
|
|
853
|
+
}
|
|
854
|
+
catch {
|
|
855
|
+
// App might not be running, that's ok
|
|
856
|
+
}
|
|
857
|
+
// Launch the app
|
|
858
|
+
try {
|
|
859
|
+
await execAsync(`xcrun simctl launch ${targetSimulator.udid} ${args.bundleId}`);
|
|
860
|
+
}
|
|
861
|
+
catch (launchError) {
|
|
862
|
+
return JSON.stringify({
|
|
863
|
+
success: false,
|
|
864
|
+
error: `Failed to launch app: ${launchError.message}`,
|
|
865
|
+
hint: "Make sure the app is installed on the simulator",
|
|
866
|
+
bundleId: args.bundleId,
|
|
867
|
+
});
|
|
868
|
+
}
|
|
869
|
+
// Wait for app to load
|
|
870
|
+
const waitTime = args.waitSeconds || 3;
|
|
871
|
+
await sleep(waitTime);
|
|
872
|
+
// Capture screenshot
|
|
873
|
+
const timestamp = Date.now();
|
|
874
|
+
const safeBundleId = args.bundleId.replace(/[^a-zA-Z0-9]/g, "_");
|
|
875
|
+
const screenshotPath = path.join(SCREENSHOTS_DIR, `${safeBundleId}_${timestamp}.png`);
|
|
876
|
+
await execAsync(`xcrun simctl io ${targetSimulator.udid} screenshot "${screenshotPath}"`);
|
|
877
|
+
if (!fs.existsSync(screenshotPath)) {
|
|
878
|
+
return JSON.stringify({
|
|
879
|
+
success: false,
|
|
880
|
+
error: "Screenshot capture failed",
|
|
881
|
+
});
|
|
882
|
+
}
|
|
883
|
+
// Auto-detect device ID
|
|
884
|
+
const autoDeviceId = mapSimulatorToDeviceId(targetSimulator.name);
|
|
885
|
+
// Add to preview store
|
|
886
|
+
const store = loadStore();
|
|
887
|
+
const preview = {
|
|
888
|
+
id: generateId(),
|
|
889
|
+
screenshotPath: screenshotPath,
|
|
890
|
+
title: args.title,
|
|
891
|
+
subtitle: args.subtitle,
|
|
892
|
+
deviceId: autoDeviceId,
|
|
893
|
+
paletteId: args.paletteId || store.settings.defaultPaletteId,
|
|
894
|
+
createdAt: new Date().toISOString(),
|
|
895
|
+
};
|
|
896
|
+
store.previews.push(preview);
|
|
897
|
+
saveStore(store);
|
|
898
|
+
return JSON.stringify({
|
|
899
|
+
success: true,
|
|
900
|
+
message: `App launched and captured: ${args.bundleId}`,
|
|
901
|
+
simulator: {
|
|
902
|
+
name: targetSimulator.name,
|
|
903
|
+
udid: targetSimulator.udid,
|
|
904
|
+
},
|
|
905
|
+
waitedSeconds: waitTime,
|
|
906
|
+
preview: preview,
|
|
907
|
+
totalPreviews: store.previews.length,
|
|
908
|
+
});
|
|
909
|
+
}
|
|
910
|
+
catch (error) {
|
|
911
|
+
return JSON.stringify({
|
|
912
|
+
success: false,
|
|
913
|
+
error: `Launch and capture failed: ${error.message}`,
|
|
914
|
+
});
|
|
915
|
+
}
|
|
916
|
+
}
|
|
917
|
+
// Handler: Capture multiple app screens
|
|
918
|
+
async function handleCaptureAppScreens(args) {
|
|
919
|
+
try {
|
|
920
|
+
ensureScreenshotsDir();
|
|
921
|
+
if (!args.screens || args.screens.length === 0) {
|
|
922
|
+
return JSON.stringify({
|
|
923
|
+
success: false,
|
|
924
|
+
error: "No screens defined to capture",
|
|
925
|
+
});
|
|
926
|
+
}
|
|
927
|
+
// Get target simulator
|
|
928
|
+
const bootedSimulators = await getBootedSimulators();
|
|
929
|
+
if (bootedSimulators.length === 0) {
|
|
930
|
+
return JSON.stringify({
|
|
931
|
+
success: false,
|
|
932
|
+
error: "No iOS Simulator is running",
|
|
933
|
+
});
|
|
934
|
+
}
|
|
935
|
+
let targetSimulator = args.simulatorUDID
|
|
936
|
+
? bootedSimulators.find(s => s.udid === args.simulatorUDID)
|
|
937
|
+
: bootedSimulators[0];
|
|
938
|
+
if (!targetSimulator) {
|
|
939
|
+
return JSON.stringify({
|
|
940
|
+
success: false,
|
|
941
|
+
error: "Specified simulator not found",
|
|
942
|
+
});
|
|
943
|
+
}
|
|
944
|
+
// Terminate and relaunch app for clean state
|
|
945
|
+
try {
|
|
946
|
+
await execAsync(`xcrun simctl terminate ${targetSimulator.udid} ${args.bundleId}`);
|
|
947
|
+
await sleep(0.5);
|
|
948
|
+
}
|
|
949
|
+
catch {
|
|
950
|
+
// App might not be running
|
|
951
|
+
}
|
|
952
|
+
await execAsync(`xcrun simctl launch ${targetSimulator.udid} ${args.bundleId}`);
|
|
953
|
+
await sleep(2); // Initial load time
|
|
954
|
+
const store = loadStore();
|
|
955
|
+
const autoDeviceId = mapSimulatorToDeviceId(targetSimulator.name);
|
|
956
|
+
const capturedPreviews = [];
|
|
957
|
+
// Capture each screen
|
|
958
|
+
for (let i = 0; i < args.screens.length; i++) {
|
|
959
|
+
const screen = args.screens[i];
|
|
960
|
+
// Wait before capture (allows for navigation between screens)
|
|
961
|
+
const waitTime = screen.waitSeconds || 2;
|
|
962
|
+
if (i > 0) {
|
|
963
|
+
await sleep(waitTime);
|
|
964
|
+
}
|
|
965
|
+
// Capture
|
|
966
|
+
const timestamp = Date.now();
|
|
967
|
+
const safeBundleId = args.bundleId.replace(/[^a-zA-Z0-9]/g, "_");
|
|
968
|
+
const screenshotPath = path.join(SCREENSHOTS_DIR, `${safeBundleId}_screen${i + 1}_${timestamp}.png`);
|
|
969
|
+
await execAsync(`xcrun simctl io ${targetSimulator.udid} screenshot "${screenshotPath}"`);
|
|
970
|
+
if (fs.existsSync(screenshotPath)) {
|
|
971
|
+
const preview = {
|
|
972
|
+
id: generateId(),
|
|
973
|
+
screenshotPath: screenshotPath,
|
|
974
|
+
title: screen.title,
|
|
975
|
+
subtitle: screen.subtitle,
|
|
976
|
+
deviceId: autoDeviceId,
|
|
977
|
+
paletteId: screen.paletteId || store.settings.defaultPaletteId,
|
|
978
|
+
createdAt: new Date().toISOString(),
|
|
979
|
+
};
|
|
980
|
+
store.previews.push(preview);
|
|
981
|
+
capturedPreviews.push(preview);
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
saveStore(store);
|
|
985
|
+
return JSON.stringify({
|
|
986
|
+
success: true,
|
|
987
|
+
message: `Captured ${capturedPreviews.length} screens from ${args.bundleId}`,
|
|
988
|
+
simulator: {
|
|
989
|
+
name: targetSimulator.name,
|
|
990
|
+
udid: targetSimulator.udid,
|
|
991
|
+
},
|
|
992
|
+
previews: capturedPreviews,
|
|
993
|
+
totalPreviews: store.previews.length,
|
|
994
|
+
});
|
|
995
|
+
}
|
|
996
|
+
catch (error) {
|
|
997
|
+
return JSON.stringify({
|
|
998
|
+
success: false,
|
|
999
|
+
error: `Capture app screens failed: ${error.message}`,
|
|
1000
|
+
});
|
|
1001
|
+
}
|
|
1002
|
+
}
|
|
590
1003
|
// Main server setup
|
|
591
1004
|
const server = new Server({
|
|
592
1005
|
name: "muse-app-preview-mcp",
|
|
@@ -638,6 +1051,15 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
638
1051
|
case "list_simulators":
|
|
639
1052
|
result = await handleListSimulators();
|
|
640
1053
|
break;
|
|
1054
|
+
case "reset_all":
|
|
1055
|
+
result = await handleResetAll(args);
|
|
1056
|
+
break;
|
|
1057
|
+
case "launch_and_capture":
|
|
1058
|
+
result = await handleLaunchAndCapture(args);
|
|
1059
|
+
break;
|
|
1060
|
+
case "capture_app_screens":
|
|
1061
|
+
result = await handleCaptureAppScreens(args);
|
|
1062
|
+
break;
|
|
641
1063
|
default:
|
|
642
1064
|
result = JSON.stringify({ error: `Unknown tool: ${name}` });
|
|
643
1065
|
}
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|