@kwonye/mcpx 0.1.104 → 0.1.105
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/{chunk-wq4zd3t7.js → chunk-01s7rhx3.js} +4 -2
- package/dist/{chunk-cqenqnxk.js → chunk-4y0t0tfj.js} +8 -2
- package/dist/{chunk-z1k63fa3.js → chunk-56whm3hm.js} +329 -34
- package/dist/{chunk-31brdz5s.js → chunk-6mxr34tc.js} +2 -2
- package/dist/{chunk-b58zsdp4.js → chunk-am903qjk.js} +11 -5
- package/dist/{chunk-s9v1epnk.js → chunk-btbww96n.js} +7 -5
- package/dist/{chunk-02r7k4ax.js → chunk-d2v9rxy0.js} +5 -5
- package/dist/{chunk-cz8cdmw1.js → chunk-fw8dyt89.js} +1 -1
- package/dist/{chunk-0xhdyt4z.js → chunk-h158rkts.js} +4 -4
- package/dist/{chunk-941dqsx2.js → chunk-t4hqf6yh.js} +244 -9
- package/dist/{chunk-z34m83m4.js → chunk-y9a1rx7j.js} +2 -2
- package/dist/cli.js +146 -32
- package/dist/core/index.d.ts +5 -3
- package/dist/core/index.js +37 -9
- package/dist/core/paths.d.ts +2 -0
- package/dist/core/plugin-manager.d.ts +4 -1
- package/dist/core/share.d.ts +71 -0
- package/dist/core/skills.d.ts +7 -0
- package/dist/core/telemetry.d.ts +1 -1
- package/dist/types.d.ts +10 -0
- package/package.json +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import {
|
|
2
2
|
resolvePluginId,
|
|
3
3
|
resolvePluginVars
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-56whm3hm.js";
|
|
5
5
|
import {
|
|
6
6
|
loadConfig
|
|
7
|
-
} from "./chunk-
|
|
8
|
-
import"./chunk-
|
|
9
|
-
import"./chunk-
|
|
7
|
+
} from "./chunk-01s7rhx3.js";
|
|
8
|
+
import"./chunk-fw8dyt89.js";
|
|
9
|
+
import"./chunk-4y0t0tfj.js";
|
|
10
10
|
import"./chunk-bjw71y54.js";
|
|
11
11
|
import"./chunk-wj4tjacg.js";
|
|
12
12
|
|
|
@@ -1,25 +1,28 @@
|
|
|
1
1
|
import {
|
|
2
2
|
refreshAutoUpdateMarketplaces
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-btbww96n.js";
|
|
4
4
|
import {
|
|
5
5
|
APP_VERSION,
|
|
6
6
|
getGatewayInternalUrl,
|
|
7
7
|
getGatewayUrl,
|
|
8
|
+
listSkills,
|
|
8
9
|
mutateConfig,
|
|
9
10
|
persistSyncState,
|
|
10
|
-
syncAllClients
|
|
11
|
-
|
|
11
|
+
syncAllClients,
|
|
12
|
+
validateSkillId,
|
|
13
|
+
validateSkillPackage
|
|
14
|
+
} from "./chunk-56whm3hm.js";
|
|
12
15
|
import {
|
|
13
16
|
loadConfig,
|
|
14
17
|
loadMergedConfig,
|
|
15
18
|
saveConfig
|
|
16
|
-
} from "./chunk-
|
|
19
|
+
} from "./chunk-01s7rhx3.js";
|
|
17
20
|
import {
|
|
18
21
|
SecretsManager,
|
|
19
22
|
UpstreamError,
|
|
20
23
|
classifyUpstreamError,
|
|
21
24
|
ensureGatewayToken
|
|
22
|
-
} from "./chunk-
|
|
25
|
+
} from "./chunk-fw8dyt89.js";
|
|
23
26
|
import {
|
|
24
27
|
ensureDir,
|
|
25
28
|
ensureParentDir,
|
|
@@ -28,16 +31,18 @@ import {
|
|
|
28
31
|
getMarketplaceUpdateStatePath,
|
|
29
32
|
getOAuthLockPath,
|
|
30
33
|
getPidPath,
|
|
34
|
+
getSkillsDir,
|
|
31
35
|
getStagedVersionPath,
|
|
32
36
|
getTelemetryPath,
|
|
33
37
|
getUpdateLockPath,
|
|
34
38
|
getUpdatesDir
|
|
35
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-4y0t0tfj.js";
|
|
36
40
|
import {
|
|
37
41
|
isServerEnabled
|
|
38
42
|
} from "./chunk-bjw71y54.js";
|
|
39
43
|
import {
|
|
40
|
-
__export
|
|
44
|
+
__export,
|
|
45
|
+
__require
|
|
41
46
|
} from "./chunk-wj4tjacg.js";
|
|
42
47
|
|
|
43
48
|
// src/core/oauth.ts
|
|
@@ -10315,6 +10320,236 @@ function runDaemonForeground(config, port, secrets) {
|
|
|
10315
10320
|
});
|
|
10316
10321
|
}
|
|
10317
10322
|
|
|
10323
|
+
// src/core/share.ts
|
|
10324
|
+
import fs8 from "node:fs";
|
|
10325
|
+
import path5 from "node:path";
|
|
10326
|
+
import crypto4 from "node:crypto";
|
|
10327
|
+
import { z as z2 } from "zod";
|
|
10328
|
+
var ENVIRONMENT_FILE = "mcpx.environment.json";
|
|
10329
|
+
var LOCK_FILE = "mcpx.environment.lock.json";
|
|
10330
|
+
var packageEntrySchema = z2.object({
|
|
10331
|
+
id: z2.string().min(1),
|
|
10332
|
+
kind: z2.enum(["skill", "plugin"]),
|
|
10333
|
+
path: z2.string().min(1),
|
|
10334
|
+
source: z2.string().optional()
|
|
10335
|
+
});
|
|
10336
|
+
var shareServerSchema = z2.discriminatedUnion("transport", [
|
|
10337
|
+
z2.object({ transport: z2.literal("http"), url: z2.url(), headers: z2.record(z2.string(), z2.string()).optional(), enabled: z2.boolean().default(true) }),
|
|
10338
|
+
z2.object({ transport: z2.literal("stdio"), command: z2.string().min(1), args: z2.array(z2.string()).default([]), env: z2.record(z2.string(), z2.string()).optional(), cwd: z2.string().optional(), enabled: z2.boolean().default(true) })
|
|
10339
|
+
]);
|
|
10340
|
+
var environmentSchema = z2.object({
|
|
10341
|
+
version: z2.literal(1),
|
|
10342
|
+
generatedBy: z2.string().min(1),
|
|
10343
|
+
servers: z2.record(z2.string(), shareServerSchema).default({}),
|
|
10344
|
+
skills: z2.array(packageEntrySchema).default([]),
|
|
10345
|
+
plugins: z2.array(packageEntrySchema).default([]),
|
|
10346
|
+
clients: z2.array(z2.string()).default([]),
|
|
10347
|
+
inputs: z2.array(z2.object({ name: z2.string(), description: z2.string().optional() })).default([])
|
|
10348
|
+
});
|
|
10349
|
+
var lockSchema = z2.object({
|
|
10350
|
+
version: z2.literal(1),
|
|
10351
|
+
mcpxCompatibility: z2.string().min(1),
|
|
10352
|
+
manifestSha256: z2.string().regex(/^[a-f0-9]{64}$/),
|
|
10353
|
+
packages: z2.record(z2.string(), z2.object({ sha256: z2.string().regex(/^[a-f0-9]{64}$/), revision: z2.string().optional() })).default({})
|
|
10354
|
+
});
|
|
10355
|
+
function sha256File(filePath) {
|
|
10356
|
+
return crypto4.createHash("sha256").update(fs8.readFileSync(filePath)).digest("hex");
|
|
10357
|
+
}
|
|
10358
|
+
function sha256Tree(root) {
|
|
10359
|
+
const hash = crypto4.createHash("sha256");
|
|
10360
|
+
const visit = (current, relative2 = "") => {
|
|
10361
|
+
const entries = fs8.readdirSync(current, { withFileTypes: true }).sort((a, b) => a.name.localeCompare(b.name));
|
|
10362
|
+
for (const entry of entries) {
|
|
10363
|
+
if (entry.name === ".DS_Store" || entry.name === ".git")
|
|
10364
|
+
continue;
|
|
10365
|
+
const child = path5.join(current, entry.name);
|
|
10366
|
+
const childRelative = path5.join(relative2, entry.name);
|
|
10367
|
+
hash.update(childRelative);
|
|
10368
|
+
if (entry.isDirectory())
|
|
10369
|
+
visit(child, childRelative);
|
|
10370
|
+
else if (entry.isFile())
|
|
10371
|
+
hash.update(fs8.readFileSync(child));
|
|
10372
|
+
}
|
|
10373
|
+
};
|
|
10374
|
+
visit(root);
|
|
10375
|
+
return hash.digest("hex");
|
|
10376
|
+
}
|
|
10377
|
+
function copyDirectory(source, destination) {
|
|
10378
|
+
ensureDir(destination);
|
|
10379
|
+
fs8.cpSync(source, destination, { recursive: true, dereference: true, filter: (sourcePath) => !sourcePath.split(path5.sep).includes(".git") && !sourcePath.endsWith(`${path5.sep}.DS_Store`) });
|
|
10380
|
+
}
|
|
10381
|
+
function resolveSharePath(root, relativePath) {
|
|
10382
|
+
const resolvedRoot = path5.resolve(root);
|
|
10383
|
+
const resolved = path5.resolve(root, relativePath);
|
|
10384
|
+
if (resolved !== resolvedRoot && !resolved.startsWith(resolvedRoot + path5.sep))
|
|
10385
|
+
throw new Error(`Package path escapes the environment folder: ${relativePath}`);
|
|
10386
|
+
return resolved;
|
|
10387
|
+
}
|
|
10388
|
+
function scrubServer(name, spec, inputs) {
|
|
10389
|
+
const result = { transport: spec.transport, enabled: spec.enabled ?? true };
|
|
10390
|
+
if (spec.transport === "http") {
|
|
10391
|
+
const parsedUrl = new URL(spec.url);
|
|
10392
|
+
if (parsedUrl.username || parsedUrl.password || /(?:token|secret|key|password|auth)/i.test(parsedUrl.search)) {
|
|
10393
|
+
throw new Error(`Server ${name} URL contains credentials and cannot be shared`);
|
|
10394
|
+
}
|
|
10395
|
+
result.url = spec.url;
|
|
10396
|
+
if (spec.headers) {
|
|
10397
|
+
result.headers = Object.fromEntries(Object.entries(spec.headers).map(([key, value]) => {
|
|
10398
|
+
if (value.startsWith("secret://"))
|
|
10399
|
+
return [key, value];
|
|
10400
|
+
const inputName = `server.${name}.header.${key}`;
|
|
10401
|
+
inputs.push({ name: inputName, description: `HTTP header ${key} for ${name}` });
|
|
10402
|
+
return [key, `{{input:${inputName}}}`];
|
|
10403
|
+
}));
|
|
10404
|
+
}
|
|
10405
|
+
} else {
|
|
10406
|
+
if (path5.isAbsolute(spec.command))
|
|
10407
|
+
throw new Error(`Server ${name} uses an absolute command path and cannot be shared`);
|
|
10408
|
+
result.command = spec.command;
|
|
10409
|
+
result.args = spec.args ?? [];
|
|
10410
|
+
if (spec.cwd) {
|
|
10411
|
+
if (path5.isAbsolute(spec.cwd))
|
|
10412
|
+
throw new Error(`Server ${name} uses an absolute cwd and cannot be shared`);
|
|
10413
|
+
result.cwd = spec.cwd;
|
|
10414
|
+
}
|
|
10415
|
+
if (spec.env) {
|
|
10416
|
+
result.env = Object.fromEntries(Object.entries(spec.env).map(([key, value]) => {
|
|
10417
|
+
if (value.startsWith("secret://"))
|
|
10418
|
+
return [key, value];
|
|
10419
|
+
const inputName = `server.${name}.env.${key}`;
|
|
10420
|
+
inputs.push({ name: inputName, description: `Environment variable ${key} for ${name}` });
|
|
10421
|
+
return [key, `{{input:${inputName}}}`];
|
|
10422
|
+
}));
|
|
10423
|
+
}
|
|
10424
|
+
}
|
|
10425
|
+
return result;
|
|
10426
|
+
}
|
|
10427
|
+
function replaceInputs(value, inputs) {
|
|
10428
|
+
if (typeof value === "string") {
|
|
10429
|
+
const match = value.match(/^\{\{input:([^}]+)\}\}$/);
|
|
10430
|
+
return match ? inputs[match[1]] ?? value : value;
|
|
10431
|
+
}
|
|
10432
|
+
if (Array.isArray(value))
|
|
10433
|
+
return value.map((entry) => replaceInputs(entry, inputs));
|
|
10434
|
+
if (value && typeof value === "object")
|
|
10435
|
+
return Object.fromEntries(Object.entries(value).map(([key, entry]) => [key, replaceInputs(entry, inputs)]));
|
|
10436
|
+
return value;
|
|
10437
|
+
}
|
|
10438
|
+
function exportEnvironment(destination, options = {}) {
|
|
10439
|
+
const root = path5.resolve(destination);
|
|
10440
|
+
ensureDir(root);
|
|
10441
|
+
const config = loadConfig();
|
|
10442
|
+
const inputs = [];
|
|
10443
|
+
const generatedServerNames = new Set(Object.values(config.plugins ?? {}).flatMap((plugin) => plugin.serverNames));
|
|
10444
|
+
const servers = Object.fromEntries(Object.entries(config.servers).filter(([name]) => !generatedServerNames.has(name)).map(([name, spec]) => [name, scrubServer(name, spec, inputs)]));
|
|
10445
|
+
const packagesDir = path5.join(root, "packages");
|
|
10446
|
+
ensureDir(packagesDir);
|
|
10447
|
+
const selectedSkills = listSkills().filter((skill) => !options.skills || options.skills.includes(skill.id));
|
|
10448
|
+
const skills = selectedSkills.map((skill) => {
|
|
10449
|
+
const packagePath = path5.join(packagesDir, "skills", skill.id);
|
|
10450
|
+
ensureDir(path5.dirname(packagePath));
|
|
10451
|
+
if (skill.root)
|
|
10452
|
+
copyDirectory(skill.root, packagePath);
|
|
10453
|
+
else {
|
|
10454
|
+
ensureDir(packagePath);
|
|
10455
|
+
fs8.writeFileSync(path5.join(packagePath, "SKILL.md"), skill.content, "utf8");
|
|
10456
|
+
}
|
|
10457
|
+
return { id: skill.id, kind: "skill", path: `packages/skills/${skill.id}`, source: skill.source ?? "authored" };
|
|
10458
|
+
});
|
|
10459
|
+
const selectedPlugins = Object.values(config.plugins ?? {}).filter((plugin) => !options.plugins || options.plugins.includes(plugin.id) || options.plugins.includes(plugin.name));
|
|
10460
|
+
const plugins = selectedPlugins.map((plugin) => {
|
|
10461
|
+
const packagePath = path5.join(packagesDir, "plugins", plugin.name);
|
|
10462
|
+
copyDirectory(plugin.root, packagePath);
|
|
10463
|
+
return { id: plugin.name, kind: "plugin", path: `packages/plugins/${plugin.name}`, source: plugin.source };
|
|
10464
|
+
});
|
|
10465
|
+
const environment = environmentSchema.parse({ version: 1, generatedBy: "mcpx", servers, skills, plugins, clients: Object.keys(config.clients ?? {}), inputs });
|
|
10466
|
+
const manifestPath = path5.join(root, ENVIRONMENT_FILE);
|
|
10467
|
+
fs8.writeFileSync(manifestPath, JSON.stringify(environment, null, 2) + `
|
|
10468
|
+
`, "utf8");
|
|
10469
|
+
const lock = {
|
|
10470
|
+
version: 1,
|
|
10471
|
+
mcpxCompatibility: "1",
|
|
10472
|
+
manifestSha256: sha256File(manifestPath),
|
|
10473
|
+
packages: Object.fromEntries([
|
|
10474
|
+
...skills.map((entry) => [`${entry.kind}:${entry.id}`, { sha256: sha256Tree(path5.join(root, entry.path)) }]),
|
|
10475
|
+
...plugins.map((entry) => {
|
|
10476
|
+
const plugin = selectedPlugins.find((candidate) => candidate.name === entry.id);
|
|
10477
|
+
return [`${entry.kind}:${entry.id}`, { sha256: sha256Tree(path5.join(root, entry.path)), revision: plugin?.resolvedSha }];
|
|
10478
|
+
})
|
|
10479
|
+
])
|
|
10480
|
+
};
|
|
10481
|
+
fs8.writeFileSync(path5.join(root, LOCK_FILE), JSON.stringify(lock, null, 2) + `
|
|
10482
|
+
`, "utf8");
|
|
10483
|
+
return { environment, lock };
|
|
10484
|
+
}
|
|
10485
|
+
async function importEnvironment(sourceDirectory, options = {}) {
|
|
10486
|
+
const root = path5.resolve(sourceDirectory);
|
|
10487
|
+
const manifestPath = path5.join(root, ENVIRONMENT_FILE);
|
|
10488
|
+
const lockPath = path5.join(root, LOCK_FILE);
|
|
10489
|
+
const environment = environmentSchema.parse(JSON.parse(fs8.readFileSync(manifestPath, "utf8")));
|
|
10490
|
+
const lock = lockSchema.parse(JSON.parse(fs8.readFileSync(lockPath, "utf8")));
|
|
10491
|
+
if (options.locked && lock.manifestSha256 !== sha256File(manifestPath))
|
|
10492
|
+
throw new Error("Environment manifest does not match its lockfile");
|
|
10493
|
+
const allEntries = [...environment.skills, ...environment.plugins];
|
|
10494
|
+
for (const entry of allEntries) {
|
|
10495
|
+
const packagePath = resolveSharePath(root, entry.path);
|
|
10496
|
+
if (!fs8.existsSync(packagePath))
|
|
10497
|
+
throw new Error(`Missing package content: ${entry.path}`);
|
|
10498
|
+
if (entry.kind === "skill")
|
|
10499
|
+
validateSkillPackage(packagePath);
|
|
10500
|
+
const expected = lock.packages[`${entry.kind}:${entry.id}`]?.sha256;
|
|
10501
|
+
if (options.locked && expected && expected !== sha256Tree(packagePath))
|
|
10502
|
+
throw new Error(`Package integrity check failed: ${entry.id}`);
|
|
10503
|
+
}
|
|
10504
|
+
const inputs = options.inputs ?? {};
|
|
10505
|
+
const missingInputs = environment.inputs.map((input) => input.name).filter((name) => !inputs[name]);
|
|
10506
|
+
if (options.dryRun)
|
|
10507
|
+
return { importedSkills: environment.skills.map((entry) => entry.id), importedPlugins: environment.plugins.map((entry) => entry.id), importedServers: Object.keys(environment.servers), missingInputs };
|
|
10508
|
+
const currentConfig = loadConfig();
|
|
10509
|
+
for (const entry of environment.skills) {
|
|
10510
|
+
validateSkillId(entry.id);
|
|
10511
|
+
const target = path5.join(getSkillsDir(), entry.id);
|
|
10512
|
+
if (fs8.existsSync(target) && sha256Tree(target) !== sha256Tree(resolveSharePath(root, entry.path)))
|
|
10513
|
+
throw new Error(`Skill already exists with different content: ${entry.id}`);
|
|
10514
|
+
}
|
|
10515
|
+
for (const [name, raw] of Object.entries(environment.servers)) {
|
|
10516
|
+
if (currentConfig.servers[name] && JSON.stringify(currentConfig.servers[name]) !== JSON.stringify(replaceInputs(raw, inputs)))
|
|
10517
|
+
throw new Error(`Server already exists with different configuration: ${name}`);
|
|
10518
|
+
}
|
|
10519
|
+
for (const entry of environment.plugins) {
|
|
10520
|
+
if (Object.values(currentConfig.plugins ?? {}).some((plugin) => plugin.name === entry.id))
|
|
10521
|
+
throw new Error(`Plugin already exists: ${entry.id}`);
|
|
10522
|
+
}
|
|
10523
|
+
const targetSkills = getSkillsDir();
|
|
10524
|
+
for (const entry of environment.skills) {
|
|
10525
|
+
validateSkillId(entry.id);
|
|
10526
|
+
const target = path5.join(targetSkills, entry.id);
|
|
10527
|
+
if (fs8.existsSync(target)) {
|
|
10528
|
+
if (sha256Tree(target) !== sha256Tree(resolveSharePath(root, entry.path)))
|
|
10529
|
+
throw new Error(`Skill already exists with different content: ${entry.id}`);
|
|
10530
|
+
continue;
|
|
10531
|
+
}
|
|
10532
|
+
copyDirectory(resolveSharePath(root, entry.path), target);
|
|
10533
|
+
}
|
|
10534
|
+
const importedPlugins = [];
|
|
10535
|
+
for (const entry of environment.plugins) {
|
|
10536
|
+
const packagePath = resolveSharePath(root, entry.path);
|
|
10537
|
+
const { installPlugin } = await import("./chunk-am903qjk.js");
|
|
10538
|
+
await installPlugin(packagePath, { name: entry.id, enabled: true });
|
|
10539
|
+
importedPlugins.push(entry.id);
|
|
10540
|
+
}
|
|
10541
|
+
const importedServers = [];
|
|
10542
|
+
await mutateConfig((fresh) => {
|
|
10543
|
+
for (const [name, raw] of Object.entries(environment.servers)) {
|
|
10544
|
+
if (fresh.servers[name])
|
|
10545
|
+
continue;
|
|
10546
|
+
fresh.servers[name] = replaceInputs(raw, inputs);
|
|
10547
|
+
importedServers.push(name);
|
|
10548
|
+
}
|
|
10549
|
+
});
|
|
10550
|
+
return { importedSkills: environment.skills.map((entry) => entry.id), importedPlugins, importedServers, missingInputs };
|
|
10551
|
+
}
|
|
10552
|
+
|
|
10318
10553
|
// src/core/status.ts
|
|
10319
10554
|
var STATUS_CLIENTS = ["claude", "claude-desktop", "codex", "cursor", "cline", "opencode", "kiro", "vscode", "qwen", "openclaw", "hermes"];
|
|
10320
10555
|
function describeServerTarget(spec) {
|
|
@@ -10427,6 +10662,6 @@ async function buildStatusReport(config, managedIndex, daemon = getDaemonStatus(
|
|
|
10427
10662
|
};
|
|
10428
10663
|
}
|
|
10429
10664
|
|
|
10430
|
-
export { isOAuthReference, oauthReferenceServerName, __resetOAuthSupportCache, probeOAuthSupport, OAUTH_LOGIN_TIMEOUT_MS, OAuthCancelledError, OAuthLoginInProgressError, runOAuthLogin, getOAuthAccessToken, oauthSecretNames, clearOAuthCredentials, getOAuthCredentialStatus, MCP_V2_PROTOCOL_VERSION, probeHttpAuthRequirement, fetchRegistryServerDetail, selectBestPackage, extractRequiredInputs, mapRegistryToSpec, toSecretRef, secretRefName, defaultAuthSecretName, resolveAuthTarget, applyAuthReference, removeAuthReference, listAuthBindings, maybePrefixBearer, buildEnrichedPath, TELEMETRY_NOTICE_VERSION, isTelemetryEnvironmentDisabled, defaultTelemetryPreferences, loadTelemetryPreferences, getTelemetryStatus, acknowledgeTelemetryNotice, updateTelemetryPreferences, resetTelemetryInstallationId, markTelemetryMilestone, initializeTelemetry, setTelemetryErrorReporter, reportTelemetryError, captureTelemetryEvent, flushTelemetry, shutdownTelemetry, durationBucket, countBucket, uptimeBucket, platformFamily, architecture, compareVersions, checkForUpdates, getStagedUpdate, shouldUseStagedCli, clearStagedUpdate, getStagedCliPath, startBackgroundUpdateCheck, runBackgroundUpdate, performUpdate, performRollback, runMarketplaceAutoUpdate, startMarketplaceAutoUpdater, getDaemonStatus, startDaemon, stopDaemon, restartDaemon, readDaemonLogs, runDaemonForeground, STATUS_CLIENTS, buildStatusReport };
|
|
10665
|
+
export { isOAuthReference, oauthReferenceServerName, __resetOAuthSupportCache, probeOAuthSupport, OAUTH_LOGIN_TIMEOUT_MS, OAuthCancelledError, OAuthLoginInProgressError, runOAuthLogin, getOAuthAccessToken, oauthSecretNames, clearOAuthCredentials, getOAuthCredentialStatus, MCP_V2_PROTOCOL_VERSION, probeHttpAuthRequirement, fetchRegistryServerDetail, selectBestPackage, extractRequiredInputs, mapRegistryToSpec, toSecretRef, secretRefName, defaultAuthSecretName, resolveAuthTarget, applyAuthReference, removeAuthReference, listAuthBindings, maybePrefixBearer, buildEnrichedPath, TELEMETRY_NOTICE_VERSION, isTelemetryEnvironmentDisabled, defaultTelemetryPreferences, loadTelemetryPreferences, getTelemetryStatus, acknowledgeTelemetryNotice, updateTelemetryPreferences, resetTelemetryInstallationId, markTelemetryMilestone, initializeTelemetry, setTelemetryErrorReporter, reportTelemetryError, captureTelemetryEvent, flushTelemetry, shutdownTelemetry, durationBucket, countBucket, uptimeBucket, platformFamily, architecture, compareVersions, checkForUpdates, getStagedUpdate, shouldUseStagedCli, clearStagedUpdate, getStagedCliPath, startBackgroundUpdateCheck, runBackgroundUpdate, performUpdate, performRollback, runMarketplaceAutoUpdate, startMarketplaceAutoUpdater, getDaemonStatus, startDaemon, stopDaemon, restartDaemon, readDaemonLogs, runDaemonForeground, exportEnvironment, importEnvironment, STATUS_CLIENTS, buildStatusReport };
|
|
10431
10666
|
|
|
10432
|
-
//# debugId=
|
|
10667
|
+
//# debugId=083977990173B02D64756E2164756E21
|
|
@@ -10,8 +10,8 @@ import {
|
|
|
10
10
|
unregisterProject,
|
|
11
11
|
updateServer,
|
|
12
12
|
validateServerName
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import"./chunk-
|
|
13
|
+
} from "./chunk-fw8dyt89.js";
|
|
14
|
+
import"./chunk-4y0t0tfj.js";
|
|
15
15
|
import"./chunk-bjw71y54.js";
|
|
16
16
|
import"./chunk-wj4tjacg.js";
|
|
17
17
|
export {
|