@samanhappy/mcphub 1.0.37 → 1.0.39

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 (98) hide show
  1. package/dist/constants/oauthServerDefaults.js +1 -0
  2. package/dist/constants/oauthServerDefaults.js.map +1 -1
  3. package/dist/controllers/oauthDynamicRegistrationController.js +6 -32
  4. package/dist/controllers/oauthDynamicRegistrationController.js.map +1 -1
  5. package/dist/controllers/serverController.js +28 -3
  6. package/dist/controllers/serverController.js.map +1 -1
  7. package/dist/dao/OAuthClientDaoDbImpl.js +3 -0
  8. package/dist/dao/OAuthClientDaoDbImpl.js.map +1 -1
  9. package/dist/db/entities/OAuthClient.js +4 -0
  10. package/dist/db/entities/OAuthClient.js.map +1 -1
  11. package/dist/db/repositories/VectorEmbeddingRepository.js +35 -3
  12. package/dist/db/repositories/VectorEmbeddingRepository.js.map +1 -1
  13. package/dist/models/OAuth.js +98 -1
  14. package/dist/models/OAuth.js.map +1 -1
  15. package/dist/services/mcpService.js +213 -7
  16. package/dist/services/mcpService.js.map +1 -1
  17. package/dist/services/vectorSearchService.js +12 -3
  18. package/dist/services/vectorSearchService.js.map +1 -1
  19. package/dist/utils/cacheUtils.js +477 -5
  20. package/dist/utils/cacheUtils.js.map +1 -1
  21. package/dist/utils/migration.js +1 -0
  22. package/dist/utils/migration.js.map +1 -1
  23. package/dist/utils/packageUpdate.js +242 -0
  24. package/dist/utils/packageUpdate.js.map +1 -0
  25. package/dist/utils/serverConfigPersistence.js +6 -0
  26. package/dist/utils/serverConfigPersistence.js.map +1 -1
  27. package/dist/utils/smartRouting.js +1 -1
  28. package/dist/utils/smartRouting.js.map +1 -1
  29. package/frontend/dist/assets/{ActivityPage-Bx5-Jrxq.js → ActivityPage-CDKSVr2I.js} +2 -2
  30. package/frontend/dist/assets/{ActivityPage-Bx5-Jrxq.js.map → ActivityPage-CDKSVr2I.js.map} +1 -1
  31. package/frontend/dist/assets/CopyClientConfigDialog-DYiucK0d.js +4 -0
  32. package/frontend/dist/assets/CopyClientConfigDialog-DYiucK0d.js.map +1 -0
  33. package/frontend/dist/assets/{CredentialsPage-BGbk_kBx.js → CredentialsPage-DMJE4uT2.js} +2 -2
  34. package/frontend/dist/assets/{CredentialsPage-BGbk_kBx.js.map → CredentialsPage-DMJE4uT2.js.map} +1 -1
  35. package/frontend/dist/assets/Dashboard-Dh_39img.js +2 -0
  36. package/frontend/dist/assets/{Dashboard-gHeXLPEn.js.map → Dashboard-Dh_39img.js.map} +1 -1
  37. package/frontend/dist/assets/EndpointCopy-CQmwGXbD.js +2 -0
  38. package/frontend/dist/assets/EndpointCopy-CQmwGXbD.js.map +1 -0
  39. package/frontend/dist/assets/GroupsPage-BqscWSfR.js +33 -0
  40. package/frontend/dist/assets/GroupsPage-BqscWSfR.js.map +1 -0
  41. package/frontend/dist/assets/{LoginPage-C7-m2jmB.js → LoginPage-DcrwvgS6.js} +2 -2
  42. package/frontend/dist/assets/{LoginPage-C7-m2jmB.js.map → LoginPage-DcrwvgS6.js.map} +1 -1
  43. package/frontend/dist/assets/{LogsPage-B00XTokA.js → LogsPage--Blkr-Ni.js} +2 -2
  44. package/frontend/dist/assets/{LogsPage-B00XTokA.js.map → LogsPage--Blkr-Ni.js.map} +1 -1
  45. package/frontend/dist/assets/{MarketPage-CVJMdSDD.js → MarketPage-DWv18j4V.js} +2 -2
  46. package/frontend/dist/assets/{MarketPage-CVJMdSDD.js.map → MarketPage-DWv18j4V.js.map} +1 -1
  47. package/frontend/dist/assets/{OAuthConsentPage-znW3HtpR.js → OAuthConsentPage-DCKZIMzE.js} +2 -2
  48. package/frontend/dist/assets/{OAuthConsentPage-znW3HtpR.js.map → OAuthConsentPage-DCKZIMzE.js.map} +1 -1
  49. package/frontend/dist/assets/{PromptsPage-DGcNS3fO.js → PromptsPage-DoVmnVnp.js} +2 -2
  50. package/frontend/dist/assets/{PromptsPage-DGcNS3fO.js.map → PromptsPage-DoVmnVnp.js.map} +1 -1
  51. package/frontend/dist/assets/{ResourcesPage-CfyZoadu.js → ResourcesPage-B8udCQQR.js} +2 -2
  52. package/frontend/dist/assets/{ResourcesPage-CfyZoadu.js.map → ResourcesPage-B8udCQQR.js.map} +1 -1
  53. package/frontend/dist/assets/ServersPage-OLpH1K1I.js +39 -0
  54. package/frontend/dist/assets/ServersPage-OLpH1K1I.js.map +1 -0
  55. package/frontend/dist/assets/SettingsPage-DlK0Jcta.js +12 -0
  56. package/frontend/dist/assets/SettingsPage-DlK0Jcta.js.map +1 -0
  57. package/frontend/dist/assets/{StatusDot-DYO56shE.js → StatusDot-DgDU3plH.js} +2 -2
  58. package/frontend/dist/assets/{StatusDot-DYO56shE.js.map → StatusDot-DgDU3plH.js.map} +1 -1
  59. package/frontend/dist/assets/{ToggleGroup-r8yGt_Fq.js → ToggleGroup-11yhmcwY.js} +2 -2
  60. package/frontend/dist/assets/{ToggleGroup-r8yGt_Fq.js.map → ToggleGroup-11yhmcwY.js.map} +1 -1
  61. package/frontend/dist/assets/{UsersPage-B3muXE90.js → UsersPage-BqPEkoIX.js} +2 -2
  62. package/frontend/dist/assets/{UsersPage-B3muXE90.js.map → UsersPage-BqPEkoIX.js.map} +1 -1
  63. package/frontend/dist/assets/clipboard-BukcCPLt.js +2 -0
  64. package/frontend/dist/assets/clipboard-BukcCPLt.js.map +1 -0
  65. package/frontend/dist/assets/{icons-vendor-VW-UwEhw.js → icons-vendor-Bk5sng-h.js} +66 -61
  66. package/frontend/dist/assets/icons-vendor-Bk5sng-h.js.map +1 -0
  67. package/frontend/dist/assets/index-D4Vy78bV.css +1 -0
  68. package/frontend/dist/assets/index-DhzWX9nb.js +3 -0
  69. package/frontend/dist/assets/index-DhzWX9nb.js.map +1 -0
  70. package/frontend/dist/assets/{resourceService-CSXOSi7M.js → resourceService-D-PRt7tB.js} +2 -2
  71. package/frontend/dist/assets/{resourceService-CSXOSi7M.js.map → resourceService-D-PRt7tB.js.map} +1 -1
  72. package/frontend/dist/assets/{useCostData-BOxUFQAH.js → useCostData-B-uSfiuA.js} +2 -2
  73. package/frontend/dist/assets/{useCostData-BOxUFQAH.js.map → useCostData-B-uSfiuA.js.map} +1 -1
  74. package/frontend/dist/assets/useSettingsData-Bk1AwN5F.js +2 -0
  75. package/frontend/dist/assets/{useSettingsData-DmpLlRI6.js.map → useSettingsData-Bk1AwN5F.js.map} +1 -1
  76. package/frontend/dist/assets/variableDetection-B7Ko56CL.js +16 -0
  77. package/frontend/dist/assets/variableDetection-B7Ko56CL.js.map +1 -0
  78. package/frontend/dist/index.html +3 -3
  79. package/mcp_settings.json +2 -1
  80. package/package.json +2 -1
  81. package/frontend/dist/assets/Dashboard-gHeXLPEn.js +0 -2
  82. package/frontend/dist/assets/EndpointCopy-BRwX7Dpv.js +0 -2
  83. package/frontend/dist/assets/EndpointCopy-BRwX7Dpv.js.map +0 -1
  84. package/frontend/dist/assets/GroupsPage-grCAx55k.js +0 -33
  85. package/frontend/dist/assets/GroupsPage-grCAx55k.js.map +0 -1
  86. package/frontend/dist/assets/ServersPage-BlC0RdIu.js +0 -39
  87. package/frontend/dist/assets/ServersPage-BlC0RdIu.js.map +0 -1
  88. package/frontend/dist/assets/SettingsPage-CiVNDyr_.js +0 -12
  89. package/frontend/dist/assets/SettingsPage-CiVNDyr_.js.map +0 -1
  90. package/frontend/dist/assets/icons-vendor-VW-UwEhw.js.map +0 -1
  91. package/frontend/dist/assets/index-B-aT0HW5.js +0 -3
  92. package/frontend/dist/assets/index-B-aT0HW5.js.map +0 -1
  93. package/frontend/dist/assets/index-B3OqAhGz.css +0 -1
  94. package/frontend/dist/assets/toolDescription-Dw3sa28K.js +0 -2
  95. package/frontend/dist/assets/toolDescription-Dw3sa28K.js.map +0 -1
  96. package/frontend/dist/assets/useSettingsData-DmpLlRI6.js +0 -2
  97. package/frontend/dist/assets/variableDetection-cmwwuSWB.js +0 -16
  98. package/frontend/dist/assets/variableDetection-cmwwuSWB.js.map +0 -1
@@ -35,27 +35,499 @@ export const injectRefreshFlag = (command, args) => {
35
35
  }
36
36
  return args;
37
37
  };
38
+ /**
39
+ * Derive the package specs an `npx` invocation installs, from a server's args.
40
+ *
41
+ * Mirrors how npx itself reads its arguments: `-p`/`--package` names packages
42
+ * explicitly and may repeat, `-c` hands the rest to a shell, and otherwise the
43
+ * first non-flag token is the package. The result is matched against npm's own
44
+ * `_npx.packages` metadata rather than used to recompute npm's cache hash, so
45
+ * it keeps working across npm versions.
46
+ */
47
+ export const resolveNpxPackageSpecs = (args) => {
48
+ const specs = [];
49
+ let explicit = false;
50
+ for (let i = 0; i < args.length; i += 1) {
51
+ const arg = args[i];
52
+ if (arg === '-p' || arg === '--package') {
53
+ const value = args[i + 1];
54
+ if (value !== undefined) {
55
+ specs.push(value);
56
+ explicit = true;
57
+ i += 1;
58
+ }
59
+ continue;
60
+ }
61
+ if (arg.startsWith('--package=')) {
62
+ specs.push(arg.slice('--package='.length));
63
+ explicit = true;
64
+ continue;
65
+ }
66
+ // Everything after -c is the shell command, not a package spec.
67
+ if (arg === '-c' || arg === '--call') {
68
+ break;
69
+ }
70
+ if (arg.startsWith('-')) {
71
+ continue;
72
+ }
73
+ // The first bare token is the package; the rest are the server's own args.
74
+ if (!explicit) {
75
+ specs.push(arg);
76
+ }
77
+ break;
78
+ }
79
+ return specs;
80
+ };
81
+ /**
82
+ * Strip the version from a package spec, keeping a scoped name intact:
83
+ * `cowsay@1.5.0` -> `cowsay`, `@scope/pkg@1.2.3` -> `@scope/pkg`, `@scope/pkg`
84
+ * unchanged (its only `@` is the scope marker at position 0).
85
+ */
86
+ export const packageNameFromSpec = (spec) => {
87
+ const separator = spec.lastIndexOf('@');
88
+ return separator > 0 ? spec.slice(0, separator) : spec;
89
+ };
90
+ /**
91
+ * Strip the constraint/extras/marker from a PEP 508 uvx package spec:
92
+ * `cowsay==1.2` -> `cowsay`, `cowsay>=1.0` -> `cowsay`, `pkg[extra]` -> `pkg`,
93
+ * `pkg; python_version < "3.12"` -> `pkg`, `pkg @ https://...` -> `pkg`.
94
+ * uvx specs are PEP 508, so the npm-style `@version` strip above does not apply.
95
+ */
96
+ export const uvxPackageNameFromSpec = (spec) => {
97
+ let name = spec.trim();
98
+ const extras = name.indexOf('[');
99
+ if (extras > 0)
100
+ name = name.slice(0, extras);
101
+ const marker = name.indexOf(';');
102
+ if (marker > 0)
103
+ name = name.slice(0, marker);
104
+ const directReference = name.indexOf(' @ ');
105
+ if (directReference > 0)
106
+ name = name.slice(0, directReference);
107
+ const constraint = name.search(/[<>=~!]/);
108
+ if (constraint > 0)
109
+ name = name.slice(0, constraint);
110
+ return name.trim();
111
+ };
112
+ /**
113
+ * Lenient whitelist for package names handed to `npm view` / `uv pip compile`:
114
+ * anything else (a leading `-`, spaces, `=` constraints that failed to strip)
115
+ * is skipped instead of being interpolated into a subprocess argument or a
116
+ * filesystem path. Scoped npm names keep their `/`.
117
+ */
118
+ export const isValidPackageName = (name) => /^[@a-zA-Z0-9][a-zA-Z0-9@_.\-/]*$/.test(name);
119
+ /**
120
+ * Decide whether one `_npx` entry belongs to the packages being reinstalled.
121
+ *
122
+ * Two shapes have to be recognised, because the field to match on depends on
123
+ * the npm version rather than on anything MCPHub controls:
124
+ *
125
+ * - npm 11 records the specs it was invoked with as `_npx.packages`, which
126
+ * distinguishes `cowsay` from `cowsay@1.6.0` exactly.
127
+ * - npm 10.9 - what the image ships, through NodeSource Node 22 - writes no
128
+ * `_npx` block at all. Only `dependencies` is present, keyed by package name
129
+ * (scoped names included), so matching there is by name and takes every
130
+ * version of that package with it.
131
+ *
132
+ * Preferring `_npx.packages` per entry keeps the precise behaviour wherever npm
133
+ * offers it, without making the coarser fallback the rule everywhere.
134
+ */
135
+ const entryMatchesSpecs = (manifest, specs) => {
136
+ const packages = manifest._npx?.packages;
137
+ if (Array.isArray(packages)) {
138
+ return packages.some((pkg) => specs.includes(pkg));
139
+ }
140
+ const dependencies = manifest.dependencies;
141
+ if (dependencies && typeof dependencies === 'object') {
142
+ const names = new Set(specs.map(packageNameFromSpec));
143
+ return Object.keys(dependencies).some((name) => names.has(name));
144
+ }
145
+ return false;
146
+ };
147
+ /**
148
+ * Remove the `_npx` entries that installed the given package specs.
149
+ *
150
+ * The target entry is identified from the metadata npm itself leaves in each
151
+ * entry's package.json, rather than by recomputing npm's cache hash, which is a
152
+ * private implementation detail. Entries whose metadata cannot be read are left
153
+ * alone: this runs to refresh one server, and an unreadable neighbour is not
154
+ * ours to delete.
155
+ */
156
+ const removeNpxEntriesForSpecs = async (cacheDir, specs) => {
157
+ let entries;
158
+ try {
159
+ entries = await fs.promises.readdir(cacheDir);
160
+ }
161
+ catch (error) {
162
+ if (error.code === 'ENOENT') {
163
+ return 0;
164
+ }
165
+ throw error;
166
+ }
167
+ let removed = 0;
168
+ for (const entry of entries) {
169
+ const entryDir = path.join(cacheDir, entry);
170
+ let manifest;
171
+ try {
172
+ manifest = JSON.parse(await fs.promises.readFile(path.join(entryDir, 'package.json'), 'utf8'));
173
+ }
174
+ catch {
175
+ continue;
176
+ }
177
+ if (!entryMatchesSpecs(manifest, specs)) {
178
+ continue;
179
+ }
180
+ await fs.promises.rm(entryDir, { recursive: true, force: true });
181
+ removed += 1;
182
+ }
183
+ return removed;
184
+ };
38
185
  /**
39
186
  * Clear the runner's package cache synchronously before reconnect.
40
- * - npx: deletes ~/.npm/_npx (the only reliable method in npm 7+).
187
+ * - npx: deletes only the `_npx` entries belonging to this server's package.
188
+ * Deleting the whole `_npx` directory would discard every other npx server's
189
+ * install as well, which on a large fleet silently turns a warm cache cold
190
+ * and only shows up as a slow, timeout-prone restart much later.
41
191
  * - uvx: no-op (cache refresh is handled via --refresh flag injection).
42
192
  *
43
193
  * Safe to call even if the directory doesn't exist.
44
194
  */
45
- export const clearRunnerCache = async (command) => {
195
+ export const clearRunnerCache = async (command, args = []) => {
46
196
  if (command === 'npx') {
47
197
  const cacheDir = getNpxCacheDir();
198
+ const specs = resolveNpxPackageSpecs(args);
199
+ if (specs.length === 0) {
200
+ // Removing everything would be worse than removing nothing: the reconnect
201
+ // still runs, it just reuses whatever is cached for this server.
202
+ logger.warn(`Could not identify the npx package from the server arguments; left the cache at ${cacheDir} untouched`);
203
+ return;
204
+ }
48
205
  try {
49
- await fs.promises.rm(cacheDir, { recursive: true, force: true });
50
- logger.log(`Cleared npx cache directory: ${cacheDir}`);
206
+ const removed = await removeNpxEntriesForSpecs(cacheDir, specs);
207
+ logger.log(`Cleared ${removed} npx cache entr${removed === 1 ? 'y' : 'ies'} for ${specs.join(', ')}`);
51
208
  }
52
209
  catch (error) {
53
- logger.error(`Failed to clear npx cache directory: ${cacheDir}`, error);
210
+ logger.error(`Failed to clear npx cache entries under: ${cacheDir}`, error);
54
211
  throw error;
55
212
  }
56
213
  }
57
214
  // uvx: cache refresh is handled via --refresh flag injection in createTransportFromConfig
58
215
  };
216
+ /**
217
+ * Get the uv tool install directory (the environments `uv tool install` creates).
218
+ * Platform-aware: honors UV_TOOL_DIR, then XDG_DATA_HOME/uv/tools on posix and
219
+ * %APPDATA%/uv/tools on Windows, matching uv's own defaults.
220
+ */
221
+ export const getUvToolDir = () => {
222
+ if (process.env.UV_TOOL_DIR)
223
+ return process.env.UV_TOOL_DIR;
224
+ if (process.platform === 'win32') {
225
+ return path.join(process.env.APPDATA || path.join(os.homedir(), 'AppData', 'Roaming'), 'uv', 'tools');
226
+ }
227
+ if (process.env.XDG_DATA_HOME)
228
+ return path.join(process.env.XDG_DATA_HOME, 'uv', 'tools');
229
+ return path.join(os.homedir(), '.local', 'share', 'uv', 'tools');
230
+ };
231
+ /**
232
+ * Get the uv cache directory (where uvx keeps its ephemeral environments).
233
+ * Platform-aware: honors UV_CACHE_DIR, then XDG_CACHE_HOME/uv on posix and
234
+ * %LOCALAPPDATA%/uv/cache on Windows, matching uv's own defaults.
235
+ */
236
+ export const getUvCacheDir = () => {
237
+ if (process.env.UV_CACHE_DIR)
238
+ return process.env.UV_CACHE_DIR;
239
+ if (process.platform === 'win32') {
240
+ return path.join(process.env.LOCALAPPDATA || path.join(os.homedir(), 'AppData', 'Local'), 'uv', 'cache');
241
+ }
242
+ if (process.env.XDG_CACHE_HOME)
243
+ return path.join(process.env.XDG_CACHE_HOME, 'uv');
244
+ return path.join(os.homedir(), '.cache', 'uv');
245
+ };
246
+ /**
247
+ * Derive the package spec a `uvx` invocation runs, from a server's args.
248
+ *
249
+ * Mirrors uvx's argument shape: a --from PACKAGE option names the package
250
+ * explicitly (and may repeat), otherwise the first bare token is the
251
+ * command/package. Options that take a value are skipped together with their
252
+ * value so their arguments are not mistaken for the package (-p 3.12 is a
253
+ * python version, not a package). Everything after the package is the server's
254
+ * own args.
255
+ */
256
+ export const resolveUvxPackageSpec = (args) => {
257
+ // Every uvx option that takes a value (from `uvx --help`), long and short
258
+ // forms, so their values are skipped instead of being mistaken for the
259
+ // package. `--from` is handled separately since it names the package.
260
+ const valueOptions = new Set([
261
+ '--from',
262
+ '--with',
263
+ '-w',
264
+ '--with-editable',
265
+ '--with-requirements',
266
+ '-c',
267
+ '--constraints',
268
+ '-b',
269
+ '--build-constraints',
270
+ '--overrides',
271
+ '--env-file',
272
+ '--python-platform',
273
+ '--torch-backend',
274
+ '-p',
275
+ '--python',
276
+ '--index',
277
+ '--default-index',
278
+ '-i',
279
+ '--index-url',
280
+ '--extra-index-url',
281
+ '-f',
282
+ '--find-links',
283
+ '--index-strategy',
284
+ '--keyring-provider',
285
+ '-P',
286
+ '--upgrade-package',
287
+ '--upgrade-group',
288
+ '--resolution',
289
+ '--prerelease',
290
+ '--prerelease-package',
291
+ '--fork-strategy',
292
+ ]);
293
+ for (let i = 0; i < args.length; i += 1) {
294
+ const arg = args[i];
295
+ if (arg === '--from') {
296
+ const value = args[i + 1];
297
+ if (value !== undefined)
298
+ return value;
299
+ continue;
300
+ }
301
+ if (arg.startsWith('--from=')) {
302
+ return arg.slice('--from='.length);
303
+ }
304
+ if (valueOptions.has(arg)) {
305
+ i += 1; // skip the option's value
306
+ continue;
307
+ }
308
+ if (arg.startsWith('-')) {
309
+ continue;
310
+ }
311
+ // The first bare token is the package; the rest are the server's own args.
312
+ return arg;
313
+ }
314
+ return undefined;
315
+ };
316
+ /**
317
+ * PEP 503 name normalization, matching how pip/uv spell dist-info directories:
318
+ * `mcp-server-fetch` and `mcp_server.fetch` both become `mcp_server_fetch`.
319
+ */
320
+ export const normalizePackageName = (name) => name.toLowerCase().replace(/[-_.]+/g, '_');
321
+ /**
322
+ * Read the installed version of `packageName` from a python environment root
323
+ * (a uv tool install env or a uvx cache environment). The version lives in
324
+ * the NAME-VERSION.dist-info directory inside site-packages under lib, the
325
+ * same layout pip/uv write everywhere.
326
+ */
327
+ const scanDistInfoVersion = async (envRoot, packageName) => {
328
+ const normalized = normalizePackageName(packageName);
329
+ let libs;
330
+ try {
331
+ libs = await fs.promises.readdir(path.join(envRoot, 'lib'));
332
+ }
333
+ catch {
334
+ return undefined;
335
+ }
336
+ for (const lib of libs) {
337
+ let files;
338
+ try {
339
+ files = await fs.promises.readdir(path.join(envRoot, 'lib', lib, 'site-packages'));
340
+ }
341
+ catch {
342
+ continue;
343
+ }
344
+ for (const file of files) {
345
+ if (!file.endsWith('.dist-info'))
346
+ continue;
347
+ const base = file.slice(0, -'.dist-info'.length);
348
+ const separator = base.lastIndexOf('-');
349
+ if (separator <= 0)
350
+ continue;
351
+ if (normalizePackageName(base.slice(0, separator)) !== normalized)
352
+ continue;
353
+ const version = base.slice(separator + 1);
354
+ if (version)
355
+ return version;
356
+ }
357
+ }
358
+ return undefined;
359
+ };
360
+ /**
361
+ * List the ephemeral uvx environments uv keeps in its cache. Modern uv stores
362
+ * them under environments-v2/PYHASH/ENVHASH (each a symlink into the archive);
363
+ * older layouts kept the env directly under the cache root. Only the cache
364
+ * layout matters, never npm's — returns [] when nothing is found.
365
+ */
366
+ const listUvCacheEnvironments = async (cacheDir) => {
367
+ const envsRoot = path.join(cacheDir, 'environments-v2');
368
+ try {
369
+ const pyHashes = await fs.promises.readdir(envsRoot);
370
+ const envs = [];
371
+ for (const pyHash of pyHashes) {
372
+ let entries;
373
+ try {
374
+ entries = await fs.promises.readdir(path.join(envsRoot, pyHash));
375
+ }
376
+ catch {
377
+ continue;
378
+ }
379
+ for (const entry of entries) {
380
+ envs.push(path.join(envsRoot, pyHash, entry));
381
+ }
382
+ }
383
+ return envs;
384
+ }
385
+ catch {
386
+ // Fallback for older uv layouts without environments-v2.
387
+ try {
388
+ const entries = await fs.promises.readdir(cacheDir);
389
+ const envs = [];
390
+ for (const entry of entries) {
391
+ const candidate = path.join(cacheDir, entry);
392
+ try {
393
+ await fs.promises.access(path.join(candidate, 'pyvenv.cfg'));
394
+ envs.push(candidate);
395
+ }
396
+ catch {
397
+ // Not an environment root (wheels, archives, index caches, ...).
398
+ }
399
+ }
400
+ return envs;
401
+ }
402
+ catch {
403
+ return [];
404
+ }
405
+ }
406
+ };
407
+ /**
408
+ * Resolve the package version currently installed for a uvx server.
409
+ *
410
+ * Two homes for a uvx environment are checked, newest-first: uv tool install
411
+ * environments (UV_TOOL_DIR) and the ephemeral environments uvx itself creates
412
+ * in the uv cache. The most recently touched environment that holds the package
413
+ * is the one a fresh uvx spawn would use.
414
+ */
415
+ export const resolveUvxPackageVersion = async (args) => {
416
+ const spec = resolveUvxPackageSpec(args);
417
+ if (!spec)
418
+ return undefined;
419
+ const packageName = uvxPackageNameFromSpec(spec);
420
+ if (!packageName || !isValidPackageName(packageName))
421
+ return undefined;
422
+ const toolDir = getUvToolDir();
423
+ const cacheDir = getUvCacheDir();
424
+ const candidates = [];
425
+ try {
426
+ candidates.push(...(await fs.promises.readdir(toolDir)).map((entry) => path.join(toolDir, entry)));
427
+ }
428
+ catch {
429
+ // No tool installs yet.
430
+ }
431
+ candidates.push(...(await listUvCacheEnvironments(cacheDir)));
432
+ const withMtime = await Promise.all(candidates.map(async (candidate) => {
433
+ try {
434
+ return { path: candidate, mtime: (await fs.promises.stat(candidate)).mtimeMs };
435
+ }
436
+ catch {
437
+ return undefined;
438
+ }
439
+ }));
440
+ const ordered = withMtime
441
+ .filter((candidate) => candidate !== undefined)
442
+ .sort((a, b) => b.mtime - a.mtime);
443
+ for (const candidate of ordered) {
444
+ const version = await scanDistInfoVersion(candidate.path, packageName);
445
+ if (version)
446
+ return version;
447
+ }
448
+ return undefined;
449
+ };
450
+ /**
451
+ * Read the installed version of `packageName` from an _npx cache entry.
452
+ * Each entry is a private npm install: node_modules/PKG/package.json
453
+ * carries the exact resolved version.
454
+ */
455
+ const readInstalledPackageVersion = async (entryDir, packageName) => {
456
+ try {
457
+ const pkg = JSON.parse(await fs.promises.readFile(path.join(entryDir, 'node_modules', packageName, 'package.json'), 'utf8'));
458
+ if (typeof pkg?.version === 'string' && pkg.version)
459
+ return pkg.version;
460
+ }
461
+ catch {
462
+ // The package is not installed in this entry, or the manifest is unreadable.
463
+ }
464
+ return undefined;
465
+ };
466
+ /**
467
+ * Resolve the package version currently installed for an npx server.
468
+ *
469
+ * Reuses the same _npx entry matching as the cache clear: npm 11 records the
470
+ * invoked specs as _npx.packages, npm <= 10.9 only writes dependencies. When
471
+ * several entries hold the same package, the most recently modified one is
472
+ * what a fresh npx spawn would use.
473
+ */
474
+ export const resolveNpxPackageVersion = async (args) => {
475
+ const specs = resolveNpxPackageSpecs(args);
476
+ if (specs.length === 0)
477
+ return undefined;
478
+ const primaryName = packageNameFromSpec(specs[0]);
479
+ if (!primaryName || !isValidPackageName(primaryName))
480
+ return undefined;
481
+ const cacheDir = getNpxCacheDir();
482
+ let entries;
483
+ try {
484
+ entries = await fs.promises.readdir(cacheDir);
485
+ }
486
+ catch {
487
+ return undefined;
488
+ }
489
+ const withMtime = await Promise.all(entries.map(async (entry) => {
490
+ try {
491
+ return { entry, mtime: (await fs.promises.stat(path.join(cacheDir, entry))).mtimeMs };
492
+ }
493
+ catch {
494
+ return undefined;
495
+ }
496
+ }));
497
+ const ordered = withMtime
498
+ .filter((candidate) => candidate !== undefined)
499
+ .sort((a, b) => b.mtime - a.mtime);
500
+ for (const { entry } of ordered) {
501
+ const entryDir = path.join(cacheDir, entry);
502
+ let manifest;
503
+ try {
504
+ manifest = JSON.parse(await fs.promises.readFile(path.join(entryDir, 'package.json'), 'utf8'));
505
+ }
506
+ catch {
507
+ continue;
508
+ }
509
+ if (!entryMatchesSpecs(manifest, specs))
510
+ continue;
511
+ const version = await readInstalledPackageVersion(entryDir, primaryName);
512
+ if (version)
513
+ return version;
514
+ }
515
+ return undefined;
516
+ };
517
+ /**
518
+ * Resolve the package version currently installed for a stdio server launched
519
+ * through npx or uvx, so the dashboard can answer "what version is actually
520
+ * running" (see #1166). Returns undefined for anything else — HTTP/SSE servers,
521
+ * unsupported runners, or packages that have not been installed yet — without
522
+ * throwing.
523
+ */
524
+ export const resolveRunnerPackageVersion = async (command, args = []) => {
525
+ if (command === 'npx')
526
+ return resolveNpxPackageVersion(args);
527
+ if (command === 'uvx')
528
+ return resolveUvxPackageVersion(args);
529
+ return undefined;
530
+ };
59
531
  /**
60
532
  * Check if a command binary exists on the system.
61
533
  * Uses a 3s timeout to avoid hanging on slow PATH lookups.
@@ -1 +1 @@
1
- {"version":3,"file":"cacheUtils.js","sourceRoot":"","sources":["../../src/utils/cacheUtils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cacheUtils.js","sourceRoot":"","sources":["../../src/utils/cacheUtils.ts"],"names":[],"mappings":"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"}
@@ -229,6 +229,7 @@ export async function migrateToDatabase() {
229
229
  grants: client.grants,
230
230
  scopes: client.scopes,
231
231
  owner: client.owner,
232
+ clientIdIssuedAt: client.clientIdIssuedAt,
232
233
  metadata: client.metadata,
233
234
  });
234
235
  logger.log(` - Created OAuth client: ${client.clientId}`);
@@ -1 +1 @@
1
- {"version":3,"file":"migration.js","sourceRoot":"","sources":["../../src/utils/migration.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"migration.js","sourceRoot":"","sources":["../../src/utils/migration.ts"],"names":[],"mappings":"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"}