@mcp-use/inspector 20.0.0-beta.12 → 20.0.0-beta.14

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 (58) hide show
  1. package/README.md +4 -4
  2. package/dist/cdn/{ChatTab-C8zXNUYZ.js → ChatTab-D_2TXR3X.js} +6 -6
  3. package/dist/cdn/{ConnectionSettingsForm-BVXahRU8.js → ConnectionSettingsForm-BqH0PcZF.js} +1 -1
  4. package/dist/cdn/{ConnectionSettingsTab-BhZAR3i_.js → ConnectionSettingsTab-Duhb1uQP.js} +1 -1
  5. package/dist/cdn/{MCPAppsDebugControls-CuOeF-vE.js → MCPAppsDebugControls-w5NRWhlZ.js} +2 -2
  6. package/dist/cdn/{MarkdownRenderer-BqBKHiSX.js → MarkdownRenderer-BIsUE0bf.js} +1 -1
  7. package/dist/cdn/{McpAppsViewPanel-DPBSphNJ.js → McpAppsViewPanel-B3_76u7O.js} +2 -2
  8. package/dist/cdn/{OAuthCallback-bHRDqzaN.js → OAuthCallback-CtLoXa3h.js} +1 -1
  9. package/dist/cdn/{PromptsTab-D_dlPX_K.js → PromptsTab-DpE0XLzk.js} +1 -1
  10. package/dist/cdn/{ResourcesTab-d7SnrXUl.js → ResourcesTab-DQS24z5p.js} +5 -5
  11. package/dist/cdn/{SamplingTab-DOPQOTz5.js → SamplingTab-ZDeu0CjJ.js} +3 -3
  12. package/dist/cdn/{ToolsTab-yyqMH0vD.js → ToolsTab-LtviZSWA.js} +4 -4
  13. package/dist/cdn/{ViewPreview-AeGZWy82.js → ViewPreview-BwC_tbF_.js} +2 -2
  14. package/dist/cdn/{dist-OgG_v-Si.js → dist-CHKts0NS.js} +3 -3
  15. package/dist/cdn/{index-browser-BcOnlg57.js → index-browser-DO-sd0TA.js} +1 -1
  16. package/dist/cdn/inspector.js +5 -5
  17. package/dist/cdn/{react-xycV9YKS.js → react-BDA-xrgK.js} +12 -10
  18. package/dist/cdn/{telemetry-BalK3Ouf.js → telemetry-e4uEESP7.js} +2 -2
  19. package/dist/cdn/{useConfig-Ble7Vgp1.js → useConfig-Dw_6Ztzr.js} +2 -2
  20. package/dist/cdn/{useViewHostProps-vDnzU_bm.js → useViewHostProps-BPApUBaM.js} +1 -1
  21. package/dist/cli.js +69 -24
  22. package/dist/server/asset-urls.d.ts +1 -4
  23. package/dist/server/asset-urls.d.ts.map +1 -1
  24. package/dist/server/asset-urls.js +3 -7
  25. package/dist/server/cdn-shell.d.ts.map +1 -1
  26. package/dist/server/cdn-shell.js +3 -3
  27. package/dist/server/{chunk-DJ6S6EF5.js → chunk-3XD7J5NX.js} +61 -15
  28. package/dist/server/{chunk-RCI2YLNS.js → chunk-DLHO3Q42.js} +1 -1
  29. package/dist/server/{chunk-H6ZCIKBS.js → chunk-JZT7N2BJ.js} +10 -15
  30. package/dist/server/{chunk-ETDY7I5U.js → chunk-N3VXWLT6.js} +1 -1
  31. package/dist/server/cli.js +3 -3
  32. package/dist/server/index.js +4 -4
  33. package/dist/server/middleware.js +4 -4
  34. package/dist/server/version.js +1 -1
  35. package/dist/web/assets/{ChatTab-CCCw6oWr.js → ChatTab-BhoU_ges.js} +1 -1
  36. package/dist/web/assets/{ConnectionSettingsTab-DHOW1I8A.js → ConnectionSettingsTab-vJcr7uI3.js} +1 -1
  37. package/dist/web/assets/{ElicitationTab-h5zlfVfn.js → ElicitationTab-4my-wtXf.js} +1 -1
  38. package/dist/web/assets/{MCPAppsDebugControls-DO5EDIz_.js → MCPAppsDebugControls-Cd4s9mr1.js} +1 -1
  39. package/dist/web/assets/{ManufactOAuthCallback-BVowTudz.js → ManufactOAuthCallback-CCRWJhuT.js} +1 -1
  40. package/dist/web/assets/{MarkdownRenderer-CxBCVgy6.js → MarkdownRenderer-BUDZYHqm.js} +1 -1
  41. package/dist/web/assets/{McpAppsViewPanel-Bl62cfjJ.js → McpAppsViewPanel-Cil7Fdy4.js} +1 -1
  42. package/dist/web/assets/{NotificationsTab-GLHnHHZG.js → NotificationsTab-Bl3O5PRb.js} +1 -1
  43. package/dist/web/assets/{OAuthCallback-Bg0ejU9I.js → OAuthCallback-CceVgo-9.js} +1 -1
  44. package/dist/web/assets/{PromptsTab-C7rfVPpA.js → PromptsTab-8lSxb8x-.js} +1 -1
  45. package/dist/web/assets/{ResourcesTab-CWAPZqDe.js → ResourcesTab-DtGfgsPv.js} +1 -1
  46. package/dist/web/assets/{SamplingTab-BHNlVvQn.js → SamplingTab-XC-DTfOo.js} +1 -1
  47. package/dist/web/assets/{ServerMetadataTab-BPfRsmSt.js → ServerMetadataTab-C5d_dI3_.js} +1 -1
  48. package/dist/web/assets/{ToolsTab-Dor-SLgL.js → ToolsTab-DuHPXItY.js} +1 -1
  49. package/dist/web/assets/{ViewPreview-DeWlfohx.js → ViewPreview-DXswO9q8.js} +1 -1
  50. package/dist/web/assets/{checkbox-B0G_7zpI.js → checkbox-DAfdiGl1.js} +1 -1
  51. package/dist/web/assets/{dist-CwP_ZKMB.js → dist-C2Y1wkk6.js} +4 -4
  52. package/dist/web/assets/{index-Czse3P3x.js → index-tu5-QdSJ.js} +5 -5
  53. package/dist/web/assets/{shared-DRZGQjmF.js → shared-c1Yr-wvV.js} +1 -1
  54. package/dist/web/assets/{tabs-subtle-uM1_2FSE.js → tabs-subtle-CHvFXVIA.js} +1 -1
  55. package/dist/web/assets/{useConfig-D_iTmuEJ.js → useConfig-9UVqLmR_.js} +1 -1
  56. package/dist/web/assets/{useViewHostProps-CQbZRFtk.js → useViewHostProps-BBoPQYEl.js} +1 -1
  57. package/dist/web/index.html +2 -2
  58. package/package.json +4 -4
@@ -3,12 +3,10 @@ import {
3
3
  } from "./chunk-M5TZA42I.js";
4
4
  import {
5
5
  getInspectorVersion
6
- } from "./chunk-RCI2YLNS.js";
6
+ } from "./chunk-DLHO3Q42.js";
7
7
  import {
8
- inspectorStylesUrl,
9
- resolveInspectorAssetUrls,
10
- withInspectorCacheBust
11
- } from "./chunk-H6ZCIKBS.js";
8
+ resolveInspectorAssetUrls
9
+ } from "./chunk-JZT7N2BJ.js";
12
10
  import {
13
11
  registerInspectorFaviconStatic
14
12
  } from "./chunk-J4FNYLBF.js";
@@ -18,11 +16,60 @@ import {
18
16
 
19
17
  // src/server/cdn-shell.ts
20
18
  var INSPECTOR_VERSION = getInspectorVersion();
19
+ var INSPECTOR_VERSION_RESOLVER_URL = "https://data.jsdelivr.com/v1/packages/npm/@mcp-use/inspector/resolved?specifier=beta";
20
+ var INSPECTOR_CDN_PACKAGE_URL = "https://cdn.jsdelivr.net/npm/@mcp-use/inspector";
21
21
  var OAUTH_POPUP_CLOSED_HTML = `<!doctype html>
22
22
  <html lang="en"><head><meta charset="utf-8"><title>Signed in</title><meta name="robots" content="noindex"><style>html,body{margin:0;height:100%;display:flex;align-items:center;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#4b5563;background:#fff}</style></head>
23
23
  <body><div>Signed in. You can close this window.</div>
24
24
  <script>try{if(window.opener&&!window.opener.closed)window.opener.postMessage({type:"manufact:oauth-complete"},"*")}catch(e){}try{window.close()}catch(e){}</script>
25
25
  </body></html>`;
26
+ function renderDefaultInspectorAssetLoader() {
27
+ return `<script type="module">
28
+ const resolverUrl = ${JSON.stringify(INSPECTOR_VERSION_RESOLVER_URL)};
29
+ const packageUrl = ${JSON.stringify(INSPECTOR_CDN_PACKAGE_URL)};
30
+ const versionPattern = /^\\d+\\.\\d+\\.\\d+(?:-[0-9A-Za-z.-]+)?(?:\\+[0-9A-Za-z.-]+)?$/;
31
+
32
+ try {
33
+ const controller = new AbortController();
34
+ const timeout = setTimeout(() => controller.abort(), 10_000);
35
+ let response;
36
+ try {
37
+ response = await fetch(resolverUrl, { signal: controller.signal });
38
+ } finally {
39
+ clearTimeout(timeout);
40
+ }
41
+ if (!response.ok) {
42
+ throw new Error(\`Inspector version resolver returned HTTP \${response.status}\`);
43
+ }
44
+
45
+ const resolved = await response.json();
46
+ if (
47
+ resolved?.name !== "@mcp-use/inspector" ||
48
+ typeof resolved.version !== "string" ||
49
+ !versionPattern.test(resolved.version)
50
+ ) {
51
+ throw new Error("Inspector version resolver returned an invalid release");
52
+ }
53
+
54
+ const version = resolved.version;
55
+ const assetBase = \`\${packageUrl}@\${version}/dist/cdn\`;
56
+ const stylesheet = document.createElement("link");
57
+ stylesheet.rel = "stylesheet";
58
+ stylesheet.href = \`\${assetBase}/inspector.css\`;
59
+ document.head.append(stylesheet);
60
+
61
+ window.__INSPECTOR_VERSION__ = version;
62
+ await import(\`\${assetBase}/inspector.js\`);
63
+ } catch (error) {
64
+ console.error("[Inspector] Failed to load the latest Inspector release:", error);
65
+ document.querySelector(".mcp-boot-spinner")?.remove();
66
+ const label = document.querySelector(".mcp-boot-label");
67
+ if (label) {
68
+ label.textContent = "Unable to load Inspector. Reload to try again.";
69
+ }
70
+ }
71
+ </script>`;
72
+ }
26
73
  function generateCdnShellHtml(config, basePath, assets) {
27
74
  const scripts = [];
28
75
  if (config?.basePath !== void 0) {
@@ -59,6 +106,10 @@ function generateCdnShellHtml(config, basePath, assets) {
59
106
  );
60
107
  }
61
108
  const runtimeScripts = scripts.join("\n ");
109
+ const assetPreconnects = assets.resolveLatest ? ` <link rel="preconnect" href="https://data.jsdelivr.com" crossorigin />
110
+ <link rel="preconnect" href="https://cdn.jsdelivr.net" crossorigin />` : "";
111
+ const stylesheetTag = assets.resolveLatest ? "" : ` <link rel="stylesheet" href="${assets.cssUrl}" />`;
112
+ const assetLoader = assets.resolveLatest ? renderDefaultInspectorAssetLoader() : `<script type="module" src="${assets.jsUrl}"></script>`;
62
113
  return `<!doctype html>
63
114
  <html lang="en">
64
115
  <head>
@@ -67,8 +118,9 @@ function generateCdnShellHtml(config, basePath, assets) {
67
118
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
68
119
  <link rel="preconnect" href="https://fonts.googleapis.com" />
69
120
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
121
+ ${assetPreconnects}
70
122
  <link href="https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;500;700&display=swap" rel="stylesheet" />
71
- <link rel="stylesheet" href="${assets.cssUrl}" />
123
+ ${stylesheetTag}
72
124
  <title>Inspector | mcp-use</title>
73
125
  <meta name="description" content="Free, open-source MCP Inspector by mcp-use. Connect to any MCP server, test tools, prompts, and resources, inspect RPC logs, and debug MCP apps \u2014 all in your browser." />
74
126
  <style>
@@ -148,7 +200,7 @@ function generateCdnShellHtml(config, basePath, assets) {
148
200
  </div>
149
201
  </div>
150
202
  </div>
151
- <script type="module" src="${assets.jsUrl}"></script>
203
+ ${assetLoader}
152
204
  </body>
153
205
  </html>`;
154
206
  }
@@ -162,14 +214,8 @@ function registerInspectorCdnShell(app, config, basePath = "") {
162
214
  disableTelemetry: config?.disableTelemetry ?? process.env.MCP_USE_ANONYMIZED_TELEMETRY === "false"
163
215
  };
164
216
  const serveShell = (c) => {
165
- const base = resolveInspectorAssetUrls(config?.inspectorMode, basePath);
166
- const jsUrl = withInspectorCacheBust(base.jsUrl);
167
- return c.html(
168
- generateCdnShellHtml(effectiveConfig, basePath, {
169
- jsUrl,
170
- cssUrl: inspectorStylesUrl(jsUrl)
171
- })
172
- );
217
+ const assets2 = resolveInspectorAssetUrls(config?.inspectorMode, basePath);
218
+ return c.html(generateCdnShellHtml(effectiveConfig, basePath, assets2));
173
219
  };
174
220
  registerInspectorFaviconStatic(app, basePath);
175
221
  app.get(
@@ -2,7 +2,7 @@
2
2
  var package_default = {
3
3
  name: "@mcp-use/inspector",
4
4
  type: "module",
5
- version: "20.0.0-beta.11",
5
+ version: "20.0.0-beta.13",
6
6
  description: "MCP Inspector - A tool for inspecting and debugging MCP servers",
7
7
  author: "",
8
8
  license: "MIT",
@@ -4,21 +4,14 @@ var DEFAULT_REMOTE_ASSETS_URL = `https://cdn.jsdelivr.net/npm/@mcp-use/inspector
4
4
  function inspectorStylesUrl(assetsUrl) {
5
5
  return assetsUrl.replace(/\.js(?=$|[?#])/, ".css");
6
6
  }
7
- function isDefaultJsdelivrInspectorUrl(url) {
8
- return url.startsWith("https://cdn.jsdelivr.net/npm/@mcp-use/inspector@");
9
- }
10
- function withInspectorCacheBust(assetsUrl) {
11
- if (!isDefaultJsdelivrInspectorUrl(assetsUrl)) return assetsUrl;
12
- const sep = assetsUrl.includes("?") ? "&" : "?";
13
- return `${assetsUrl}${sep}cb=${crypto.randomUUID()}`;
14
- }
15
7
  function resolveInspectorAssetUrls(inspectorMode, basePath) {
16
8
  const envUrl = process.env.INSPECTOR_ASSETS_URL ?? process.env.MCP_USE_INSPECTOR_ASSETS_URL;
17
9
  if (envUrl) {
18
10
  return {
19
11
  jsUrl: envUrl,
20
12
  cssUrl: inspectorStylesUrl(envUrl),
21
- useLocal: false
13
+ useLocal: false,
14
+ resolveLatest: false
22
15
  };
23
16
  }
24
17
  const legacyBase = process.env.INSPECTOR_CDN_BASE;
@@ -28,13 +21,15 @@ function resolveInspectorAssetUrls(inspectorMode, basePath) {
28
21
  return {
29
22
  jsUrl: base,
30
23
  cssUrl: inspectorStylesUrl(base),
31
- useLocal: false
24
+ useLocal: false,
25
+ resolveLatest: false
32
26
  };
33
27
  }
34
28
  return {
35
29
  jsUrl: `${base}/inspector.js`,
36
30
  cssUrl: `${base}/inspector.css`,
37
- useLocal: false
31
+ useLocal: false,
32
+ resolveLatest: false
38
33
  };
39
34
  }
40
35
  if (inspectorMode === "standalone") {
@@ -42,14 +37,16 @@ function resolveInspectorAssetUrls(inspectorMode, basePath) {
42
37
  return {
43
38
  jsUrl: `${prefix}/dist/cdn/inspector.js`,
44
39
  cssUrl: `${prefix}/dist/cdn/inspector.css`,
45
- useLocal: true
40
+ useLocal: true,
41
+ resolveLatest: false
46
42
  };
47
43
  }
48
44
  const jsUrl = DEFAULT_REMOTE_ASSETS_URL;
49
45
  return {
50
46
  jsUrl,
51
47
  cssUrl: inspectorStylesUrl(jsUrl),
52
- useLocal: false
48
+ useLocal: false,
49
+ resolveLatest: true
53
50
  };
54
51
  }
55
52
 
@@ -57,7 +54,5 @@ export {
57
54
  JSDELIVR_INSPECTOR_TAG,
58
55
  DEFAULT_REMOTE_ASSETS_URL,
59
56
  inspectorStylesUrl,
60
- isDefaultJsdelivrInspectorUrl,
61
- withInspectorCacheBust,
62
57
  resolveInspectorAssetUrls
63
58
  };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  registerInspectorCdnShell
3
- } from "./chunk-DJ6S6EF5.js";
3
+ } from "./chunk-3XD7J5NX.js";
4
4
  import {
5
5
  registerInspectorProxyRoutes
6
6
  } from "./chunk-UJLXHNQP.js";
@@ -5,12 +5,12 @@ import {
5
5
  } from "./chunk-KD7K27XK.js";
6
6
  import {
7
7
  registerInspectorCdnShell
8
- } from "./chunk-DJ6S6EF5.js";
8
+ } from "./chunk-3XD7J5NX.js";
9
9
  import "./chunk-M5TZA42I.js";
10
10
  import {
11
11
  getInspectorVersion
12
- } from "./chunk-RCI2YLNS.js";
13
- import "./chunk-H6ZCIKBS.js";
12
+ } from "./chunk-DLHO3Q42.js";
13
+ import "./chunk-JZT7N2BJ.js";
14
14
  import {
15
15
  registerInspectorProxyRoutes
16
16
  } from "./chunk-UJLXHNQP.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  mountInspector
3
- } from "./chunk-ETDY7I5U.js";
3
+ } from "./chunk-N3VXWLT6.js";
4
4
  import {
5
5
  registerInspectorCdnShell
6
- } from "./chunk-DJ6S6EF5.js";
6
+ } from "./chunk-3XD7J5NX.js";
7
7
  import "./chunk-M5TZA42I.js";
8
- import "./chunk-RCI2YLNS.js";
9
- import "./chunk-H6ZCIKBS.js";
8
+ import "./chunk-DLHO3Q42.js";
9
+ import "./chunk-JZT7N2BJ.js";
10
10
  import {
11
11
  registerInspectorProxyRoutes
12
12
  } from "./chunk-UJLXHNQP.js";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  mountInspector
3
- } from "./chunk-ETDY7I5U.js";
4
- import "./chunk-DJ6S6EF5.js";
3
+ } from "./chunk-N3VXWLT6.js";
4
+ import "./chunk-3XD7J5NX.js";
5
5
  import "./chunk-M5TZA42I.js";
6
- import "./chunk-RCI2YLNS.js";
7
- import "./chunk-H6ZCIKBS.js";
6
+ import "./chunk-DLHO3Q42.js";
7
+ import "./chunk-JZT7N2BJ.js";
8
8
  import "./chunk-UJLXHNQP.js";
9
9
  import "./chunk-IKTZUWSX.js";
10
10
  import "./chunk-XCNS5CIW.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  VERSION,
3
3
  getInspectorVersion
4
- } from "./chunk-RCI2YLNS.js";
4
+ } from "./chunk-DLHO3Q42.js";
5
5
  import "./chunk-PKBMQBKP.js";
6
6
  export {
7
7
  VERSION,