@dollhousemcp/mcp-server 2.0.12-rc.6 → 2.0.12-rc.7
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/generated/version.d.ts +2 -2
- package/dist/generated/version.js +3 -3
- package/dist/web/public/setup.js +39 -6
- package/package.json +1 -1
- package/server.json +2 -2
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Auto-generated file - DO NOT EDIT
|
|
3
3
|
* Generated at build time by scripts/generate-version.js
|
|
4
4
|
*/
|
|
5
|
-
export declare const PACKAGE_VERSION = "2.0.12-rc.
|
|
6
|
-
export declare const BUILD_TIMESTAMP = "2026-04-09T04:
|
|
5
|
+
export declare const PACKAGE_VERSION = "2.0.12-rc.7";
|
|
6
|
+
export declare const BUILD_TIMESTAMP = "2026-04-09T04:44:43.775Z";
|
|
7
7
|
export declare const BUILD_TYPE: 'npm' | 'git';
|
|
8
8
|
export declare const PACKAGE_NAME = "@dollhousemcp/mcp-server";
|
|
9
9
|
//# sourceMappingURL=version.d.ts.map
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
* Auto-generated file - DO NOT EDIT
|
|
3
3
|
* Generated at build time by scripts/generate-version.js
|
|
4
4
|
*/
|
|
5
|
-
export const PACKAGE_VERSION = '2.0.12-rc.
|
|
6
|
-
export const BUILD_TIMESTAMP = '2026-04-09T04:
|
|
5
|
+
export const PACKAGE_VERSION = '2.0.12-rc.7';
|
|
6
|
+
export const BUILD_TIMESTAMP = '2026-04-09T04:44:43.775Z';
|
|
7
7
|
export const BUILD_TYPE = 'npm';
|
|
8
8
|
export const PACKAGE_NAME = '@dollhousemcp/mcp-server';
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyc2lvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9nZW5lcmF0ZWQvdmVyc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7O0dBR0c7QUFFSCxNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsYUFBYSxDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRywwQkFBMEIsQ0FBQztBQUMxRCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQWtCLEtBQUssQ0FBQztBQUMvQyxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEF1dG8tZ2VuZXJhdGVkIGZpbGUgLSBETyBOT1QgRURJVFxuICogR2VuZXJhdGVkIGF0IGJ1aWxkIHRpbWUgYnkgc2NyaXB0cy9nZW5lcmF0ZS12ZXJzaW9uLmpzXG4gKi9cblxuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfVkVSU0lPTiA9ICcyLjAuMTItcmMuNyc7XG5leHBvcnQgY29uc3QgQlVJTERfVElNRVNUQU1QID0gJzIwMjYtMDQtMDlUMDQ6NDQ6NDMuNzc1Wic7XG5leHBvcnQgY29uc3QgQlVJTERfVFlQRTogJ25wbScgfCAnZ2l0JyA9ICducG0nO1xuZXhwb3J0IGNvbnN0IFBBQ0tBR0VfTkFNRSA9ICdAZG9sbGhvdXNlbWNwL21jcC1zZXJ2ZXInO1xuIl19
|
package/dist/web/public/setup.js
CHANGED
|
@@ -65,9 +65,21 @@
|
|
|
65
65
|
return result;
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
+
// ── Channel constants ────────────────────────────────────────────────
|
|
69
|
+
const CHANNELS = {
|
|
70
|
+
STABLE: 'latest',
|
|
71
|
+
RC: 'rc',
|
|
72
|
+
BETA: 'beta',
|
|
73
|
+
};
|
|
74
|
+
const VALID_CHANNELS = new Set(Object.values(CHANNELS));
|
|
75
|
+
const DEFAULT_CHANNEL = CHANNELS.STABLE;
|
|
76
|
+
|
|
77
|
+
/** Validate and normalize a channel value. Falls back to stable if invalid. */
|
|
78
|
+
const normalizeChannel = (ch) => VALID_CHANNELS.has(ch) ? ch : DEFAULT_CHANNEL;
|
|
79
|
+
|
|
68
80
|
// Start with a placeholder version, update once we fetch from server
|
|
69
81
|
let pinnedVersion = 'latest';
|
|
70
|
-
let currentChannel =
|
|
82
|
+
let currentChannel = DEFAULT_CHANNEL;
|
|
71
83
|
let configs = buildConfigs(pinnedVersion, currentChannel);
|
|
72
84
|
|
|
73
85
|
// ── Current method state ──────────────────────────────────────────────
|
|
@@ -160,11 +172,13 @@
|
|
|
160
172
|
if (!select) return;
|
|
161
173
|
|
|
162
174
|
select.addEventListener('change', () => {
|
|
163
|
-
currentChannel = select.value;
|
|
175
|
+
currentChannel = normalizeChannel(select.value);
|
|
164
176
|
if (hint) hint.textContent = CHANNEL_HINTS[currentChannel] || '';
|
|
165
177
|
configs = buildConfigs(pinnedVersion, currentChannel);
|
|
166
178
|
updateAllConfigs(currentMethod);
|
|
167
179
|
updateInstallButtonLabels();
|
|
180
|
+
// Re-evaluate detection: current config may no longer match the new channel
|
|
181
|
+
updateDetectionState();
|
|
168
182
|
});
|
|
169
183
|
};
|
|
170
184
|
|
|
@@ -331,12 +345,21 @@
|
|
|
331
345
|
if (isPinned) {
|
|
332
346
|
desc.textContent = `Installs DollhouseMCP v${pinnedVersion}. This version will not auto-update.`;
|
|
333
347
|
} else {
|
|
334
|
-
// Restore
|
|
348
|
+
// Restore text reflecting the selected channel.
|
|
349
|
+
// Use textContent for dynamic values to prevent DOM XSS (CodeQL: DOM text reinterpreted as HTML).
|
|
335
350
|
const panel = desc.closest('.setup-panel');
|
|
351
|
+
const safeChannel = normalizeChannel(currentChannel);
|
|
336
352
|
if (panel?.id === 'setup-panel-claude-desktop') {
|
|
337
|
-
desc.
|
|
353
|
+
desc.textContent = '';
|
|
354
|
+
desc.append(
|
|
355
|
+
`Pulls the ${safeChannel} version of DollhouseMCP on every startup. Uses `,
|
|
356
|
+
);
|
|
357
|
+
const code = document.createElement('code');
|
|
358
|
+
code.textContent = `npx @${safeChannel}`;
|
|
359
|
+
desc.append(code);
|
|
360
|
+
desc.append(' under the hood. Restart Claude Desktop after.');
|
|
338
361
|
} else if (panel?.id === 'setup-panel-claude-code') {
|
|
339
|
-
desc.textContent =
|
|
362
|
+
desc.textContent = `Adds DollhouseMCP to Claude Code, pulling the ${safeChannel} version on every startup.`;
|
|
340
363
|
}
|
|
341
364
|
}
|
|
342
365
|
});
|
|
@@ -344,6 +367,16 @@
|
|
|
344
367
|
|
|
345
368
|
// ── Install buttons ────────────────────────────────────────────────────
|
|
346
369
|
|
|
370
|
+
/** Format an install error for display. Detects channel-specific 404s. */
|
|
371
|
+
const formatInstallError = (err) => {
|
|
372
|
+
const msg = err.message || 'Installation failed';
|
|
373
|
+
const isChannelError = currentChannel !== DEFAULT_CHANNEL &&
|
|
374
|
+
(msg.includes('404') || msg.includes('Not Found') || msg.includes('not found'));
|
|
375
|
+
return isChannelError
|
|
376
|
+
? `No ${currentChannel} release is published yet. Switch to Stable or try again later.`
|
|
377
|
+
: `${msg}. Try the manual config below.`;
|
|
378
|
+
};
|
|
379
|
+
|
|
347
380
|
/** Handle Configure Now button click */
|
|
348
381
|
const handleInstallClick = async (btn) => {
|
|
349
382
|
const client = btn.dataset.installClient;
|
|
@@ -401,7 +434,7 @@
|
|
|
401
434
|
btn.disabled = false;
|
|
402
435
|
btn.classList.remove('is-loading');
|
|
403
436
|
if (status) {
|
|
404
|
-
status.textContent = err
|
|
437
|
+
status.textContent = formatInstallError(err);
|
|
405
438
|
status.classList.add('is-error');
|
|
406
439
|
}
|
|
407
440
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dollhousemcp/mcp-server",
|
|
3
|
-
"version": "2.0.12-rc.
|
|
3
|
+
"version": "2.0.12-rc.7",
|
|
4
4
|
"description": "DollhouseMCP - A Model Context Protocol (MCP) server that enables dynamic AI persona management from markdown files, allowing Claude and other compatible AI assistants to activate and switch between different behavioral personas.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
package/server.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"name": "io.github.DollhouseMCP/mcp-server",
|
|
4
4
|
"title": "DollhouseMCP",
|
|
5
5
|
"description": "OSS to create Personas, Skills, Templates, Agents, and Memories to customize your AI experience.",
|
|
6
|
-
"version": "2.0.12-rc.
|
|
6
|
+
"version": "2.0.12-rc.7",
|
|
7
7
|
"homepage": "https://dollhousemcp.com",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
{
|
|
30
30
|
"registryType": "npm",
|
|
31
31
|
"identifier": "@dollhousemcp/mcp-server",
|
|
32
|
-
"version": "2.0.12-rc.
|
|
32
|
+
"version": "2.0.12-rc.7",
|
|
33
33
|
"transport": {
|
|
34
34
|
"type": "stdio"
|
|
35
35
|
}
|