@mcp-use/inspector 0.9.0-canary.3 → 0.9.0-canary.4

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.
@@ -1,15 +1,15 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/display-A5IEINAP-CgFLYKj4.js","assets/index-DlUHZ9Rv.js","assets/index-Br7cLVs6.css"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/display-A5IEINAP-DNDlZQ8k.js","assets/index-DEA0KU_h.js","assets/index-Br7cLVs6.css"])))=>i.map(i=>d[i]);
2
2
  var __defProp = Object.defineProperty;
3
3
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
5
  var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q;
6
- import { bv as joinValues, bw as stringifyPrimitive, bx as config, _ as __name, by as any, bz as ZodType$1, bj as $ZodRegistry, p as prettifyError, bA as logger, a as __vitePreload, bB as object, bC as generateUUID, bD as string, bE as ZodIssueCode, bF as union, bG as boolean, bH as number, bI as array, bJ as _null } from "./index-DlUHZ9Rv.js";
7
- import { bK, bL, bM, bN, bO, bP, bQ, bR } from "./index-DlUHZ9Rv.js";
8
- import { L as LLM, S as StructuredTool, t as tools_exports, o as openai_tools_exports, l as llms_exports, a as tool, T as Tool, D as DynamicTool, b as DynamicStructuredTool } from "./index-DGNqjnfM.js";
6
+ import { bv as joinValues, bw as stringifyPrimitive, bx as config, _ as __name, by as any, bz as ZodType$1, bj as $ZodRegistry, p as prettifyError, bA as logger, a as __vitePreload, bB as object, bC as generateUUID, bD as string, bE as ZodIssueCode, bF as union, bG as boolean, bH as number, bI as array, bJ as _null } from "./index-DEA0KU_h.js";
7
+ import { bK, bL, bM, bN, bO, bP, bQ, bR } from "./index-DEA0KU_h.js";
8
+ import { L as LLM, S as StructuredTool, t as tools_exports, o as openai_tools_exports, l as llms_exports, a as tool, T as Tool, D as DynamicTool, b as DynamicStructuredTool } from "./index-BumNh2YP.js";
9
9
  import { o as os } from "./__vite-browser-external-CHS79mP1.js";
10
10
  import { j as join, d as dirname, i as isAbsolute } from "./path-QsnVvLoj.js";
11
- import { ag as rng, ah as unsafeStringify, ai as parse, W as BaseChatModel, aj as RunnableBinding, g as ensureConfig, ak as AsyncGeneratorWithSetup, al as IterableReadableStream, am as isInteropZodObject, H as toJsonSchema, an as Validator, j as isInteropZodSchema, ao as v5, _ as __export$1, ap as Serializable, a0 as HumanMessage, J as AIMessage, aq as Runnable, e as parseCallbackConfigArg, C as CallbackManager, ar as Client, as as sha256, V as BaseLLMOutputParser, B as BaseCumulativeTransformOutputParser, at as compare, p as parsePartialJson, au as StringPromptValue, av as addLangChainErrorFields, aw as ImagePromptValue, ax as SystemMessage, ay as coerceMessageLikeToMessage, az as BaseMessage, M as ChatMessage, aA as ChatPromptValue, I as isBaseMessage, aB as BaseTracer, K as ChatGenerationChunk, L as AIMessageChunk, a8 as RunnableLambda, aC as BaseOutputParser, aD as types_exports, aE as tiktoken_exports, aF as stream_exports$1, aG as json_schema_exports, aH as json_patch_exports, aI as hash_exports, aJ as function_calling_exports, aK as env_exports, aL as async_caller_exports, aM as tracer_langchain_exports, aN as log_stream_exports, aO as console_exports, aP as base_exports$2, aQ as singletons_exports, aR as graph_exports, aS as runnables_exports, aT as prompt_values_exports, aU as outputs_exports, aV as output_parsers_exports, aW as tool_exports, aX as messages_exports, aY as serializable_exports, aZ as chat_models_exports, a_ as base_exports$3, a$ as promises_exports, b0 as manager_exports, b1 as base_exports$4, b2 as base_exports$5, X as getEnvironmentVariable, b3 as get_lc_unique_name, b4 as mapKeys, b5 as keyFromJson, D as AsyncLocalStorageProviderSingleton, z as patchConfig, m as mergeConfigs, Z as RunnablePassthrough, $ as RunnableSequence, b6 as _coerceToRunnable, b7 as BaseCallbackHandler, N as isToolMessage, b8 as isBaseMessageChunk, b9 as getCallbackManagerForConfig, ba as Graph, bb as validate, bc as getInteropZodDefaultGetter, bd as getInteropZodObjectShape, a7 as getSchemaDescription, be as extendInteropZodObject, a4 as isZodSchemaV3, bf as interopZodObjectPartial, bg as interopParse, bh as v4, u as objectType, bi as custom, bj as ZodType, bk as unionType, bl as literalType, bm as undefinedType, bn as anyType, o as ToolMessage, bo as interopZodObjectMakeFieldsOptional, i as interopSafeParseAsync, T as ToolInputParsingException, bp as functionType, bq as arrayType, br as numberType, bs as promiseType, w as stringType, bt as interopSafeParse, bu as RemoveMessage, bv as getModelContextSize, bw as trimMessages, bx as enumType, by as recordType, bz as booleanType, bA as instanceOfType, b as BaseLanguageModel, bB as filterMessages, ac as ToolMessageChunk, aa as SystemMessageChunk, a9 as HumanMessageChunk, bC as BaseMessageChunk, a3 as toJSONSchema } from "./index-DPaWbs8Z.js";
12
- import { E as Embeddings, c as chunk_array_exports, e as embeddings_exports } from "./embeddings-DWZf9aOm.js";
11
+ import { ag as rng, ah as unsafeStringify, ai as parse, W as BaseChatModel, aj as RunnableBinding, g as ensureConfig, ak as AsyncGeneratorWithSetup, al as IterableReadableStream, am as isInteropZodObject, H as toJsonSchema, an as Validator, j as isInteropZodSchema, ao as v5, _ as __export$1, ap as Serializable, a0 as HumanMessage, J as AIMessage, aq as Runnable, e as parseCallbackConfigArg, C as CallbackManager, ar as Client, as as sha256, V as BaseLLMOutputParser, B as BaseCumulativeTransformOutputParser, at as compare, p as parsePartialJson, au as StringPromptValue, av as addLangChainErrorFields, aw as ImagePromptValue, ax as SystemMessage, ay as coerceMessageLikeToMessage, az as BaseMessage, M as ChatMessage, aA as ChatPromptValue, I as isBaseMessage, aB as BaseTracer, K as ChatGenerationChunk, L as AIMessageChunk, a8 as RunnableLambda, aC as BaseOutputParser, aD as types_exports, aE as tiktoken_exports, aF as stream_exports$1, aG as json_schema_exports, aH as json_patch_exports, aI as hash_exports, aJ as function_calling_exports, aK as env_exports, aL as async_caller_exports, aM as tracer_langchain_exports, aN as log_stream_exports, aO as console_exports, aP as base_exports$2, aQ as singletons_exports, aR as graph_exports, aS as runnables_exports, aT as prompt_values_exports, aU as outputs_exports, aV as output_parsers_exports, aW as tool_exports, aX as messages_exports, aY as serializable_exports, aZ as chat_models_exports, a_ as base_exports$3, a$ as promises_exports, b0 as manager_exports, b1 as base_exports$4, b2 as base_exports$5, X as getEnvironmentVariable, b3 as get_lc_unique_name, b4 as mapKeys, b5 as keyFromJson, D as AsyncLocalStorageProviderSingleton, z as patchConfig, m as mergeConfigs, Z as RunnablePassthrough, $ as RunnableSequence, b6 as _coerceToRunnable, b7 as BaseCallbackHandler, N as isToolMessage, b8 as isBaseMessageChunk, b9 as getCallbackManagerForConfig, ba as Graph, bb as validate, bc as getInteropZodDefaultGetter, bd as getInteropZodObjectShape, a7 as getSchemaDescription, be as extendInteropZodObject, a4 as isZodSchemaV3, bf as interopZodObjectPartial, bg as interopParse, bh as v4, u as objectType, bi as custom, bj as ZodType, bk as unionType, bl as literalType, bm as undefinedType, bn as anyType, o as ToolMessage, bo as interopZodObjectMakeFieldsOptional, i as interopSafeParseAsync, T as ToolInputParsingException, bp as functionType, bq as arrayType, br as numberType, bs as promiseType, w as stringType, bt as interopSafeParse, bu as RemoveMessage, bv as getModelContextSize, bw as trimMessages, bx as enumType, by as recordType, bz as booleanType, bA as instanceOfType, b as BaseLanguageModel, bB as filterMessages, ac as ToolMessageChunk, aa as SystemMessageChunk, a9 as HumanMessageChunk, bC as BaseMessageChunk, a3 as toJSONSchema } from "./index-D-pAR_RA.js";
12
+ import { E as Embeddings, c as chunk_array_exports, e as embeddings_exports } from "./embeddings-DSM58WFd.js";
13
13
  import "./index-DX0TIfSM.js";
14
14
  const parsedType = (data) => {
15
15
  const t = typeof data;
@@ -17292,7 +17292,7 @@ var MCPAgent = (_q = class {
17292
17292
  */
17293
17293
  async *prettyStreamEvents(query, maxSteps, manageConnector = true, externalHistory, outputSchema) {
17294
17294
  const { prettyStreamEvents: prettyStream } = await __vitePreload(async () => {
17295
- const { prettyStreamEvents: prettyStream2 } = await import("./display-A5IEINAP-CgFLYKj4.js");
17295
+ const { prettyStreamEvents: prettyStream2 } = await import("./display-A5IEINAP-DNDlZQ8k.js");
17296
17296
  return { prettyStreamEvents: prettyStream2 };
17297
17297
  }, true ? __vite__mapDeps([0,1,2]) : void 0);
17298
17298
  const finalResponse = "";
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-CMCo0tEo.js","assets/index-DlUHZ9Rv.js","assets/index-Br7cLVs6.css"])))=>i.map(i=>d[i]);
2
- import { _ as __name, a as __vitePreload } from "./index-DlUHZ9Rv.js";
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/index-BWKKRrN4.js","assets/index-DEA0KU_h.js","assets/index-Br7cLVs6.css"])))=>i.map(i=>d[i]);
2
+ import { _ as __name, a as __vitePreload } from "./index-DEA0KU_h.js";
3
3
  var chalk = null;
4
4
  var highlight = null;
5
5
  var stripVTControlCharacters = null;
@@ -19,7 +19,7 @@ var isNode = typeof process !== "undefined" && process.versions?.node;
19
19
  } catch {
20
20
  }
21
21
  try {
22
- const cliHighlightModule = await __vitePreload(() => import("./index-CMCo0tEo.js").then((n) => n.i), true ? __vite__mapDeps([0,1,2]) : void 0);
22
+ const cliHighlightModule = await __vitePreload(() => import("./index-BWKKRrN4.js").then((n) => n.i), true ? __vite__mapDeps([0,1,2]) : void 0);
23
23
  highlight = cliHighlightModule.highlight;
24
24
  } catch {
25
25
  }
@@ -1,4 +1,4 @@
1
- import { _ as __export, A as AsyncCaller } from "./index-DPaWbs8Z.js";
1
+ import { _ as __export, A as AsyncCaller } from "./index-D-pAR_RA.js";
2
2
  var chunk_array_exports = {};
3
3
  __export(chunk_array_exports, { chunkArray: () => chunkArray });
4
4
  const chunkArray = (arr, chunkSize) => arr.reduce((chunks, elem, index) => {
@@ -1,4 +1,4 @@
1
- import { bi as getDefaultExportFromCjs } from "./index-DlUHZ9Rv.js";
1
+ import { bi as getDefaultExportFromCjs } from "./index-DEA0KU_h.js";
2
2
  function _mergeNamespaces(n, m) {
3
3
  for (var i = 0; i < m.length; i++) {
4
4
  const e = m[i];
@@ -1,5 +1,5 @@
1
- import { i as interopSafeParseAsync, O as OutputParserException, B as BaseCumulativeTransformOutputParser, a as isAIMessage, p as parsePartialJson, _ as __export, b as BaseLanguageModel, C as CallbackManager, G as GenerationChunk, c as callbackHandlerPrefersStreaming, d as concat, R as RUN_KEY, e as parseCallbackConfigArg, f as BaseLangChain, g as ensureConfig, m as mergeConfigs, h as _isToolCall, j as isInteropZodSchema, k as interopParseAsync, T as ToolInputParsingException, v as validate, l as _configHasToolCallId, n as isDirectToolOutput, o as ToolMessage, q as isStructuredToolParams, r as isStructuredTool, s as isRunnableToolLike, t as isLangChainTool, u as objectType, w as stringType, x as isSimpleStringZodSchema, y as validatesOnlyStrings, z as patchConfig, D as AsyncLocalStorageProviderSingleton, E as pickRunnableConfigKeys, F as getAbortSignalError } from "./index-DPaWbs8Z.js";
2
- import { p as prettifyError } from "./index-DlUHZ9Rv.js";
1
+ import { i as interopSafeParseAsync, O as OutputParserException, B as BaseCumulativeTransformOutputParser, a as isAIMessage, p as parsePartialJson, _ as __export, b as BaseLanguageModel, C as CallbackManager, G as GenerationChunk, c as callbackHandlerPrefersStreaming, d as concat, R as RUN_KEY, e as parseCallbackConfigArg, f as BaseLangChain, g as ensureConfig, m as mergeConfigs, h as _isToolCall, j as isInteropZodSchema, k as interopParseAsync, T as ToolInputParsingException, v as validate, l as _configHasToolCallId, n as isDirectToolOutput, o as ToolMessage, q as isStructuredToolParams, r as isStructuredTool, s as isRunnableToolLike, t as isLangChainTool, u as objectType, w as stringType, x as isSimpleStringZodSchema, y as validatesOnlyStrings, z as patchConfig, D as AsyncLocalStorageProviderSingleton, E as pickRunnableConfigKeys, F as getAbortSignalError } from "./index-D-pAR_RA.js";
2
+ import { p as prettifyError } from "./index-DEA0KU_h.js";
3
3
  function parseToolCall(rawToolCall, options) {
4
4
  if (rawToolCall.function === void 0) return void 0;
5
5
  let functionArgs;
@@ -1,4 +1,4 @@
1
- import { bj as $ZodRegistry, bk as globalRegistry, bl as getEnumValues, bi as getDefaultExportFromCjs, bm as parseAsync, bn as clone, bo as _never, bp as $ZodNever, bq as $ZodOptional, bg as parse$1, br as extend, bs as partial, bt as _unknown, bu as $ZodUnknown } from "./index-DlUHZ9Rv.js";
1
+ import { bj as $ZodRegistry, bk as globalRegistry, bl as getEnumValues, bi as getDefaultExportFromCjs, bm as parseAsync, bn as clone, bo as _never, bp as $ZodNever, bq as $ZodOptional, bg as parse$1, br as extend, bs as partial, bt as _unknown, bu as $ZodUnknown } from "./index-DEA0KU_h.js";
2
2
  import { r as requireBase64Js } from "./index-DX0TIfSM.js";
3
3
  class JSONSchemaGenerator {
4
4
  constructor(params) {
@@ -1,7 +1,7 @@
1
- import { M as ChatMessage, t as isLangChainTool, a1 as convertToOpenAITool, a2 as ZodFirstPartyTypeKind, a3 as toJSONSchema, a4 as isZodSchemaV3, a5 as isZodSchemaV4, W as BaseChatModel, X as getEnvironmentVariable, j as isInteropZodSchema, P as isOpenAITool, a6 as StructuredOutputParser, Y as JsonOutputParser, H as toJsonSchema, a7 as getSchemaDescription, a8 as RunnableLambda, Z as RunnablePassthrough, $ as RunnableSequence, Q as isDataContentBlock, S as convertToProviderContentBlock, J as AIMessage, o as ToolMessage, a9 as HumanMessageChunk, L as AIMessageChunk, aa as SystemMessageChunk, ab as FunctionMessageChunk, ac as ToolMessageChunk, ad as ChatMessageChunk, U as parseBase64DataUrl, ae as parseMimeType, af as iife, K as ChatGenerationChunk, a as isAIMessage } from "./index-DPaWbs8Z.js";
2
- import { bg as parse } from "./index-DlUHZ9Rv.js";
3
- import { J as JsonOutputKeyToolsParser, c as convertLangChainToolCallToOpenAI, p as parseToolCall$2, m as makeInvalidToolCall } from "./index-DGNqjnfM.js";
4
- import "./embeddings-DWZf9aOm.js";
1
+ import { M as ChatMessage, t as isLangChainTool, a1 as convertToOpenAITool, a2 as ZodFirstPartyTypeKind, a3 as toJSONSchema, a4 as isZodSchemaV3, a5 as isZodSchemaV4, W as BaseChatModel, X as getEnvironmentVariable, j as isInteropZodSchema, P as isOpenAITool, a6 as StructuredOutputParser, Y as JsonOutputParser, H as toJsonSchema, a7 as getSchemaDescription, a8 as RunnableLambda, Z as RunnablePassthrough, $ as RunnableSequence, Q as isDataContentBlock, S as convertToProviderContentBlock, J as AIMessage, o as ToolMessage, a9 as HumanMessageChunk, L as AIMessageChunk, aa as SystemMessageChunk, ab as FunctionMessageChunk, ac as ToolMessageChunk, ad as ChatMessageChunk, U as parseBase64DataUrl, ae as parseMimeType, af as iife, K as ChatGenerationChunk, a as isAIMessage } from "./index-D-pAR_RA.js";
2
+ import { bg as parse } from "./index-DEA0KU_h.js";
3
+ import { J as JsonOutputKeyToolsParser, c as convertLangChainToolCallToOpenAI, p as parseToolCall$2, m as makeInvalidToolCall } from "./index-BumNh2YP.js";
4
+ import "./embeddings-DSM58WFd.js";
5
5
  import "./index-DX0TIfSM.js";
6
6
  const iife$1 = (fn) => fn();
7
7
  function isReasoningModel(model) {
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/winston-wqn-wtrj.js","assets/util-D59LNlyU.js","assets/__vite-browser-external-CHS79mP1.js","assets/index-DX0TIfSM.js","assets/path-QsnVvLoj.js","assets/index-mu626HD_.js","assets/index-DPaWbs8Z.js","assets/index-DGNqjnfM.js","assets/embeddings-DWZf9aOm.js","assets/index-C9SmrfBE.js","assets/index-CvbM0GyZ.js","assets/browser-BxSiNtQZ.js"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/winston-B_texDHP.js","assets/util-D59LNlyU.js","assets/__vite-browser-external-CHS79mP1.js","assets/index-DX0TIfSM.js","assets/path-QsnVvLoj.js","assets/index-DD0wWmuA.js","assets/index-D-pAR_RA.js","assets/index-BumNh2YP.js","assets/embeddings-DSM58WFd.js","assets/index-DiEpOjl1.js","assets/index-DgPlosep.js","assets/browser-CwknRi82.js"])))=>i.map(i=>d[i]);
2
2
  var __defProp = Object.defineProperty;
3
3
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
4
4
  var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
@@ -211,7 +211,7 @@ function loadWinstonSync() {
211
211
  __name(loadWinstonSync, "loadWinstonSync");
212
212
  async function getWinston() {
213
213
  if (!winston) {
214
- winston = await __vitePreload(() => import("./winston-wqn-wtrj.js").then((n2) => n2.w), true ? __vite__mapDeps([0,1,2,3,4]) : void 0);
214
+ winston = await __vitePreload(() => import("./winston-B_texDHP.js").then((n2) => n2.w), true ? __vite__mapDeps([0,1,2,3,4]) : void 0);
215
215
  }
216
216
  return winston;
217
217
  }
@@ -18168,14 +18168,6 @@ function WidgetControls({
18168
18168
  ));
18169
18169
  }
18170
18170
  __name(WidgetControls, "WidgetControls");
18171
- var BrowserRouter$1 = null;
18172
- (async () => {
18173
- try {
18174
- const routerModule = await __vitePreload(() => import("./index-UvYe4W_n.js"), true ? [] : void 0);
18175
- BrowserRouter$1 = routerModule.BrowserRouter;
18176
- } catch (error) {
18177
- }
18178
- })();
18179
18171
  function getBasename() {
18180
18172
  if (typeof window === "undefined") return "/";
18181
18173
  const path = window.location.pathname;
@@ -18200,13 +18192,13 @@ function McpUseProvider({
18200
18192
  const debounceTimeoutRef = reactExports.useRef(null);
18201
18193
  const notificationInProgressRef = reactExports.useRef(false);
18202
18194
  const [BrowserRouter2, setBrowserRouter] = reactExports.useState(null);
18203
- const [routerError2, setRouterError] = reactExports.useState(null);
18195
+ const [routerError, setRouterError] = reactExports.useState(null);
18204
18196
  const [isRouterLoading, setIsRouterLoading] = reactExports.useState(true);
18205
18197
  reactExports.useEffect(() => {
18206
18198
  let mounted = true;
18207
18199
  (async () => {
18208
18200
  try {
18209
- const routerModule = await __vitePreload(() => import("./index-UvYe4W_n.js"), true ? [] : void 0);
18201
+ const routerModule = await __vitePreload(() => import("./index-DctLeaKS.js"), true ? [] : void 0);
18210
18202
  if (mounted) {
18211
18203
  setBrowserRouter(() => routerModule.BrowserRouter);
18212
18204
  setIsRouterLoading(false);
@@ -18294,8 +18286,8 @@ function McpUseProvider({
18294
18286
  if (isRouterLoading) {
18295
18287
  return /* @__PURE__ */ re$1.createElement(reactExports.StrictMode, null, /* @__PURE__ */ re$1.createElement(ThemeProvider$1, null, /* @__PURE__ */ re$1.createElement("div", { style: { padding: "20px", textAlign: "center" } }, "Loading...")));
18296
18288
  }
18297
- if (routerError2) {
18298
- throw routerError2;
18289
+ if (routerError) {
18290
+ throw routerError;
18299
18291
  }
18300
18292
  let content = children;
18301
18293
  content = /* @__PURE__ */ re$1.createElement(ErrorBoundary, null, content);
@@ -50209,7 +50201,7 @@ class MCPToolSavedEvent {
50209
50201
  function getPackageVersion() {
50210
50202
  try {
50211
50203
  if (true) {
50212
- return "0.9.0-canary.3";
50204
+ return "0.9.0-canary.4";
50213
50205
  }
50214
50206
  return "0.0.0";
50215
50207
  } catch {
@@ -55038,6 +55030,19 @@ function ServerConnectionModal({
55038
55030
  }, [connection, open]);
55039
55031
  const handleConnect = () => {
55040
55032
  if (!url2.trim()) return;
55033
+ try {
55034
+ const parsedUrl = new URL(url2.trim());
55035
+ const isValid = parsedUrl.protocol === "http:" || parsedUrl.protocol === "https:" || parsedUrl.protocol === "ws:" || parsedUrl.protocol === "wss:";
55036
+ if (!isValid) {
55037
+ toast.error(
55038
+ "Invalid URL protocol. Please use http://, https://, ws://, or wss://"
55039
+ );
55040
+ return;
55041
+ }
55042
+ } catch (error) {
55043
+ toast.error("Invalid URL format. Please enter a valid URL.");
55044
+ return;
55045
+ }
55041
55046
  const proxyConfig = connectionType === "Via Proxy" && proxyAddress.trim() ? {
55042
55047
  proxyAddress: proxyAddress.trim(),
55043
55048
  customHeaders: customHeaders.reduce(
@@ -62896,6 +62901,21 @@ function InspectorDashboard() {
62896
62901
  const handleAddConnection = reactExports.useCallback(
62897
62902
  (isRetry = false, overrideConnectionType) => {
62898
62903
  if (!url2.trim()) return;
62904
+ if (!isRetry) {
62905
+ try {
62906
+ const parsedUrl = new URL(url2.trim());
62907
+ const isValid = parsedUrl.protocol === "http:" || parsedUrl.protocol === "https:" || parsedUrl.protocol === "ws:" || parsedUrl.protocol === "wss:";
62908
+ if (!isValid) {
62909
+ toast.error(
62910
+ "Invalid URL protocol. Please use http://, https://, ws://, or wss://"
62911
+ );
62912
+ return;
62913
+ }
62914
+ } catch (error) {
62915
+ toast.error("Invalid URL format. Please enter a valid URL.");
62916
+ return;
62917
+ }
62918
+ }
62899
62919
  setIsConnecting(true);
62900
62920
  hasShownToastRef.current = false;
62901
62921
  if (!isRetry) {
@@ -96608,7 +96628,7 @@ function useChatMessagesClientSide({
96608
96628
  let llm;
96609
96629
  if (llmConfig.provider === "openai") {
96610
96630
  const { ChatOpenAI } = await __vitePreload(async () => {
96611
- const { ChatOpenAI: ChatOpenAI2 } = await import("./index-mu626HD_.js");
96631
+ const { ChatOpenAI: ChatOpenAI2 } = await import("./index-DD0wWmuA.js");
96612
96632
  return { ChatOpenAI: ChatOpenAI2 };
96613
96633
  }, true ? __vite__mapDeps([5,6,3,7,8]) : void 0);
96614
96634
  llm = new ChatOpenAI({
@@ -96617,7 +96637,7 @@ function useChatMessagesClientSide({
96617
96637
  });
96618
96638
  } else if (llmConfig.provider === "anthropic") {
96619
96639
  const { ChatAnthropic } = await __vitePreload(async () => {
96620
- const { ChatAnthropic: ChatAnthropic2 } = await import("./index-C9SmrfBE.js");
96640
+ const { ChatAnthropic: ChatAnthropic2 } = await import("./index-DiEpOjl1.js");
96621
96641
  return { ChatAnthropic: ChatAnthropic2 };
96622
96642
  }, true ? __vite__mapDeps([9,6,3]) : void 0);
96623
96643
  llm = new ChatAnthropic({
@@ -96626,7 +96646,7 @@ function useChatMessagesClientSide({
96626
96646
  });
96627
96647
  } else if (llmConfig.provider === "google") {
96628
96648
  const { ChatGoogleGenerativeAI } = await __vitePreload(async () => {
96629
- const { ChatGoogleGenerativeAI: ChatGoogleGenerativeAI2 } = await import("./index-CvbM0GyZ.js");
96649
+ const { ChatGoogleGenerativeAI: ChatGoogleGenerativeAI2 } = await import("./index-DgPlosep.js");
96630
96650
  return { ChatGoogleGenerativeAI: ChatGoogleGenerativeAI2 };
96631
96651
  }, true ? __vite__mapDeps([10,6,3,8]) : void 0);
96632
96652
  llm = new ChatGoogleGenerativeAI({
@@ -96645,7 +96665,7 @@ function useChatMessagesClientSide({
96645
96665
  }
96646
96666
  if (!agentRef.current || agentRef.current.llm !== llmRef.current.instance) {
96647
96667
  const { MCPAgent } = await __vitePreload(async () => {
96648
- const { MCPAgent: MCPAgent2 } = await import("./browser-BxSiNtQZ.js");
96668
+ const { MCPAgent: MCPAgent2 } = await import("./browser-CwknRi82.js");
96649
96669
  return { MCPAgent: MCPAgent2 };
96650
96670
  }, true ? __vite__mapDeps([11,7,6,3,2,4,8]) : void 0);
96651
96671
  agentRef.current = new MCPAgent({
@@ -100921,7 +100941,7 @@ function PromptsTab({
100921
100941
  defaultSize: 0,
100922
100942
  collapsible: true,
100923
100943
  minSize: 5,
100924
- collapsedSize: 6,
100944
+ collapsedSize: 5,
100925
100945
  onCollapse: () => setRpcPanelCollapsed(true),
100926
100946
  onExpand: () => setRpcPanelCollapsed(false),
100927
100947
  className: "flex flex-col border-t dark:border-zinc-700",
@@ -101737,7 +101757,7 @@ function ResourcesTab({
101737
101757
  defaultSize: 0,
101738
101758
  collapsible: true,
101739
101759
  minSize: 5,
101740
- collapsedSize: 6,
101760
+ collapsedSize: 5,
101741
101761
  onCollapse: () => setRpcPanelCollapsed(true),
101742
101762
  onExpand: () => setRpcPanelCollapsed(false),
101743
101763
  className: "flex flex-col border-t dark:border-zinc-700",
@@ -103387,7 +103407,7 @@ function ToolsTab({
103387
103407
  defaultSize: 0,
103388
103408
  collapsible: true,
103389
103409
  minSize: 5,
103390
- collapsedSize: 6,
103410
+ collapsedSize: 5,
103391
103411
  onCollapse: () => {
103392
103412
  setRpcPanelCollapsed(true);
103393
103413
  },
@@ -1,5 +1,5 @@
1
- import { c as createServerRoutes, s as shouldHydrateRouteLoader, b as createStaticRouter, r as reactExports, F as FrameworkContext, R as RemixErrorBoundary, S as StaticRouterProvider, d as StreamTransfer, u as useRouteError, e as re, E as ErrorResponseImpl, m as matchRoutes, f as RouterContextProvider, g as convertRoutesToDataRoutes, h as createMemoryRouter, i as RouterProvider, j as RSCRouterContext, k as SINGLE_FETCH_REDIRECT_STATUS, l as isRouteErrorResponse, w as warnOnce, n as createStaticHandler, o as instrumentHandler, q as withErrorBoundaryProps, t as withHydrateFallbackProps, v as withComponentProps, O as Outlet, x as React, y as decodeViaTurboStream, z as SingleFetchRedirectSymbol, A as redirectDocument, B as replace, C as redirect, D as stripBasename, G as getManifestPath, H as isRedirectResponse, I as isDataWithResponseInit, J as isRedirectStatusCode, K as isResponse, L as getStaticContextFromError, N as NO_BODY_STATUS_CODES, M as encode, P as escapeHtml, Q as invariant$1, T as useFogOFWarDiscovery, U as reactDomExports, V as createClientRoutes, W as createRouter, X as getPatchRoutesOnNavigationFunction, Y as getTurboStreamSingleFetchDataStrategy, Z as mapRouteProperties, $ as hydrationRouteProperties, a0 as createBrowserHistory, a1 as createClientRoutesWithHMRRevalidationOptOut } from "./index-DlUHZ9Rv.js";
2
- import { a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, au, av, aw, ax, ay, az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK, aL, aM, aN, aO, aP, aQ, aR, aS, aT, aU, aV, aW, aX, aY, aZ, a_, a$, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, ba, bb, bc, bd, be, bf } from "./index-DlUHZ9Rv.js";
1
+ import { c as createServerRoutes, s as shouldHydrateRouteLoader, b as createStaticRouter, r as reactExports, F as FrameworkContext, R as RemixErrorBoundary, S as StaticRouterProvider, d as StreamTransfer, u as useRouteError, e as re, E as ErrorResponseImpl, m as matchRoutes, f as RouterContextProvider, g as convertRoutesToDataRoutes, h as createMemoryRouter, i as RouterProvider, j as RSCRouterContext, k as SINGLE_FETCH_REDIRECT_STATUS, l as isRouteErrorResponse, w as warnOnce, n as createStaticHandler, o as instrumentHandler, q as withErrorBoundaryProps, t as withHydrateFallbackProps, v as withComponentProps, O as Outlet, x as React, y as decodeViaTurboStream, z as SingleFetchRedirectSymbol, A as redirectDocument, B as replace, C as redirect, D as stripBasename, G as getManifestPath, H as isRedirectResponse, I as isDataWithResponseInit, J as isRedirectStatusCode, K as isResponse, L as getStaticContextFromError, N as NO_BODY_STATUS_CODES, M as encode, P as escapeHtml, Q as invariant$1, T as useFogOFWarDiscovery, U as reactDomExports, V as createClientRoutes, W as createRouter, X as getPatchRoutesOnNavigationFunction, Y as getTurboStreamSingleFetchDataStrategy, Z as mapRouteProperties, $ as hydrationRouteProperties, a0 as createBrowserHistory, a1 as createClientRoutesWithHMRRevalidationOptOut } from "./index-DEA0KU_h.js";
2
+ import { a2, a3, a4, a5, a6, a7, a8, a9, aa, ab, ac, ad, ae, af, ag, ah, ai, aj, ak, al, am, an, ao, ap, aq, ar, as, at, au, av, aw, ax, ay, az, aA, aB, aC, aD, aE, aF, aG, aH, aI, aJ, aK, aL, aM, aN, aO, aP, aQ, aR, aS, aT, aU, aV, aW, aX, aY, aZ, a_, a$, b0, b1, b2, b3, b4, b5, b6, b7, b8, b9, ba, bb, bc, bd, be, bf } from "./index-DEA0KU_h.js";
3
3
  var dist = {};
4
4
  var hasRequiredDist;
5
5
  function requireDist() {
@@ -1,6 +1,6 @@
1
- import { j as isInteropZodSchema, H as toJsonSchema, I as isBaseMessage, J as AIMessage, K as ChatGenerationChunk, L as AIMessageChunk, M as ChatMessage, N as isToolMessage, a as isAIMessage, t as isLangChainTool, P as isOpenAITool, Q as isDataContentBlock, S as convertToProviderContentBlock, U as parseBase64DataUrl, V as BaseLLMOutputParser, i as interopSafeParseAsync, O as OutputParserException, W as BaseChatModel, X as getEnvironmentVariable, Y as JsonOutputParser, Z as RunnablePassthrough, $ as RunnableSequence } from "./index-DPaWbs8Z.js";
2
- import "./embeddings-DWZf9aOm.js";
3
- import "./index-DlUHZ9Rv.js";
1
+ import { j as isInteropZodSchema, H as toJsonSchema, I as isBaseMessage, J as AIMessage, K as ChatGenerationChunk, L as AIMessageChunk, M as ChatMessage, N as isToolMessage, a as isAIMessage, t as isLangChainTool, P as isOpenAITool, Q as isDataContentBlock, S as convertToProviderContentBlock, U as parseBase64DataUrl, V as BaseLLMOutputParser, i as interopSafeParseAsync, O as OutputParserException, W as BaseChatModel, X as getEnvironmentVariable, Y as JsonOutputParser, Z as RunnablePassthrough, $ as RunnableSequence } from "./index-D-pAR_RA.js";
2
+ import "./embeddings-DSM58WFd.js";
3
+ import "./index-DEA0KU_h.js";
4
4
  import "./index-DX0TIfSM.js";
5
5
  function removeAdditionalProperties(obj) {
6
6
  if (typeof obj === "object" && obj !== null) {
@@ -1,5 +1,5 @@
1
- import { V as BaseLLMOutputParser, O as OutputParserException, i as interopSafeParseAsync, U as parseBase64DataUrl, a as isAIMessage, a0 as HumanMessage, Q as isDataContentBlock, S as convertToProviderContentBlock, L as AIMessageChunk, J as AIMessage, W as BaseChatModel, X as getEnvironmentVariable, P as isOpenAITool, t as isLangChainTool, H as toJsonSchema, j as isInteropZodSchema, K as ChatGenerationChunk, Z as RunnablePassthrough, $ as RunnableSequence } from "./index-DPaWbs8Z.js";
2
- import "./index-DlUHZ9Rv.js";
1
+ import { V as BaseLLMOutputParser, O as OutputParserException, i as interopSafeParseAsync, U as parseBase64DataUrl, a as isAIMessage, a0 as HumanMessage, Q as isDataContentBlock, S as convertToProviderContentBlock, L as AIMessageChunk, J as AIMessage, W as BaseChatModel, X as getEnvironmentVariable, P as isOpenAITool, t as isLangChainTool, H as toJsonSchema, j as isInteropZodSchema, K as ChatGenerationChunk, Z as RunnablePassthrough, $ as RunnableSequence } from "./index-D-pAR_RA.js";
2
+ import "./index-DEA0KU_h.js";
3
3
  import "./index-DX0TIfSM.js";
4
4
  var AnthropicToolsOutputParser = class extends BaseLLMOutputParser {
5
5
  static lc_name() {
@@ -1,4 +1,4 @@
1
- import { bh as getAugmentedNamespace, bi as getDefaultExportFromCjs } from "./index-DlUHZ9Rv.js";
1
+ import { bh as getAugmentedNamespace, bi as getDefaultExportFromCjs } from "./index-DEA0KU_h.js";
2
2
  import { u as util } from "./util-D59LNlyU.js";
3
3
  import { o as os } from "./__vite-browser-external-CHS79mP1.js";
4
4
  import { r as requireBase64Js } from "./index-DX0TIfSM.js";
@@ -27,9 +27,9 @@
27
27
  rel="stylesheet"
28
28
  />
29
29
  <title>Inspector | mcp-use</title>
30
- <script type="module" crossorigin src="/inspector/assets/index-DlUHZ9Rv.js"></script>
30
+ <script type="module" crossorigin src="/inspector/assets/index-DEA0KU_h.js"></script>
31
31
  <link rel="stylesheet" crossorigin href="/inspector/assets/index-Br7cLVs6.css">
32
- <script>window.__INSPECTOR_VERSION__ = "0.9.0-canary.3";</script>
32
+ <script>window.__INSPECTOR_VERSION__ = "0.9.0-canary.4";</script>
33
33
  </head>
34
34
  <body>
35
35
  <script>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@mcp-use/inspector",
3
3
  "type": "module",
4
- "version": "0.9.0-canary.3",
4
+ "version": "0.9.0-canary.4",
5
5
  "description": "MCP Inspector - A tool for inspecting and debugging MCP servers",
6
6
  "author": "",
7
7
  "license": "MIT",
@@ -82,7 +82,7 @@
82
82
  "sonner": "^2.0.7",
83
83
  "tailwind-merge": "^3.3.1",
84
84
  "vite-express": "^0.21.1",
85
- "mcp-use": "1.7.0-canary.3"
85
+ "mcp-use": "1.7.0-canary.4"
86
86
  },
87
87
  "publishConfig": {
88
88
  "access": "public"