Local .mcpb install silently fails (no dialog, no error) when any bundled file exceeds ~108KB
Summary
Double-clicking a local .mcpb (or opening it via the file association) silently does nothing when the bundle contains any single file larger than ~108KB. The main process logs Handling DXT/MCPB file: … and then dead-ends — no install/config dialog, no error dialog, no further log line. Bundles whose files are all under the threshold install normally.
Environment
- Claude Desktop 1.12603.1
- macOS 26 (Tahoe) / Darwin 25.5.0, Apple Silicon
Steps to reproduce
- Build two
.mcpbbundles, identical except for the size of one file (pad e.g.dist/index.jswith incompressible bytes so the compression-ratio guard isn't involved):
- Bundle A: largest file 105 KB
- Bundle B: largest file 110 KB
- Double-click Bundle A → install dialog appears, installs normally. ✅
- Double-click Bundle B → nothing happens. ❌
Expected
Either the install dialog appears, or an error is surfaced (as the zip-bomb / compression-ratio guard already does).
Actual
~/Library/Logs/Claude/main.log shows only:
[info] Handling DXT/MCPB file: /…/bundle.mcpb
…then nothing. No Failed to preview extension error, no dialog.
Investigation
- The threshold is per-file, not total: a bundle with 948 KB spread across 37 files (max 40 KB each) installs fine; a bundle with a small entry point plus one 200 KB file fails. Total bundle size is irrelevant.
- Binary-searched the cap to between 107,486 bytes (works) and 112,606 bytes (fails) ≈ 108 KB.
- This is undocumented and inconsistent with the validated limits. From inspecting
app.asar, the zip validator enforcesMAX_FILE_SIZE = 512MB,MAX_FILE_COUNT = 1e5,MAX_COMPRESSION_RATIO = 50, total viadxtMaxTotalSizeMB ?? 2048— all of which a 1.7 MB single-file bundle passes. The ~108 KB per-file limit appears to come from a separate path (the file-open handlerHandling DXT/MCPB file→ preview →dispatchPreviewExtensionInstallation) and produces no error. - Notably, the compression-ratio guard does surface an error (
Suspicious compression ratio detected: N:1 (max: 50:1)), so the infrastructure to report preview failures exists — this path just doesn't use it.
Impact
Any non-trivial Node .mcpb (a bundled server, or one shipping node_modules where a single dep file exceeds ~108 KB — e.g. zod/v3/types.js at 128 KB) silently fails to install from a local file with zero user feedback. Publishers can't tell why, and end users see nothing happen.
Suggested fix
- Surface an error in the local-file preview path when it bails (as the compression-ratio guard already does), and/or
- Raise/remove the ~108 KB per-file limit to match the documented 512 MB/file guard.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗