mcp-use 1.10.1-canary.2 → 1.10.1

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 (33) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/{chunk-QNZMNQCY.js → chunk-44BUM5CN.js} +1 -1
  3. package/dist/{chunk-4NC7PPVE.js → chunk-5ZIIKP7J.js} +1 -1
  4. package/dist/{chunk-KFTQ3UL5.js → chunk-CWJE3EHI.js} +2 -2
  5. package/dist/{chunk-CFX74U7W.js → chunk-F435FIAK.js} +2 -2
  6. package/dist/{chunk-FAELBZOW.js → chunk-RUEU7IHO.js} +12 -228
  7. package/dist/{chunk-OTZ32HGI.js → chunk-TU4H3CRX.js} +1 -1
  8. package/dist/{chunk-VTNHO2TS.js → chunk-XV23SGJO.js} +1 -1
  9. package/dist/index.cjs +12 -228
  10. package/dist/index.js +6 -6
  11. package/dist/src/adapters/base.d.ts +0 -44
  12. package/dist/src/adapters/base.d.ts.map +1 -1
  13. package/dist/src/adapters/langchain_adapter.d.ts +1 -12
  14. package/dist/src/adapters/langchain_adapter.d.ts.map +1 -1
  15. package/dist/src/agents/index.cjs +12 -228
  16. package/dist/src/agents/index.js +4 -4
  17. package/dist/src/agents/mcp_agent.d.ts.map +1 -1
  18. package/dist/src/browser.cjs +12 -228
  19. package/dist/src/browser.js +4 -4
  20. package/dist/src/client/prompts.js +3 -3
  21. package/dist/src/managers/server_manager.d.ts.map +1 -1
  22. package/dist/src/managers/tools/connect_mcp_server.d.ts.map +1 -1
  23. package/dist/src/react/index.cjs +1 -1
  24. package/dist/src/react/index.js +4 -4
  25. package/dist/src/server/endpoints/mount-mcp.d.ts.map +1 -1
  26. package/dist/src/server/index.cjs +3 -23
  27. package/dist/src/server/index.js +7 -27
  28. package/dist/src/server/sessions/session-manager.d.ts +3 -6
  29. package/dist/src/server/sessions/session-manager.d.ts.map +1 -1
  30. package/dist/src/version.d.ts +1 -1
  31. package/dist/src/version.d.ts.map +1 -1
  32. package/dist/{tool-execution-helpers-PQGEPYY3.js → tool-execution-helpers-Z73OHQVM.js} +2 -2
  33. package/package.json +5 -6
@@ -1607,7 +1607,7 @@ __name(generateUUID, "generateUUID");
1607
1607
  init_logging();
1608
1608
 
1609
1609
  // src/version.ts
1610
- var VERSION = "1.10.1-canary.2";
1610
+ var VERSION = "1.10.1";
1611
1611
  function getPackageVersion() {
1612
1612
  return VERSION;
1613
1613
  }
@@ -4542,98 +4542,6 @@ var BaseAdapter = class {
4542
4542
  logger.debug(`Available tools: ${tools.length}`);
4543
4543
  return tools;
4544
4544
  }
4545
- /**
4546
- * Dynamically load resources for a specific connector.
4547
- *
4548
- * @param connector The connector to load resources for.
4549
- * @returns The list of resources that were loaded in the target framework's format.
4550
- */
4551
- async loadResourcesForConnector(connector) {
4552
- const connectorResources = [];
4553
- const success = await this.ensureConnectorInitialized(connector);
4554
- if (!success) {
4555
- return [];
4556
- }
4557
- try {
4558
- const resourcesResult = await connector.listAllResources();
4559
- const resources = resourcesResult?.resources || [];
4560
- if (this.convertResource) {
4561
- for (const resource of resources) {
4562
- const converted = this.convertResource(resource, connector);
4563
- if (converted) {
4564
- connectorResources.push(converted);
4565
- }
4566
- }
4567
- }
4568
- logger.debug(
4569
- `Loaded ${connectorResources.length} new resources for connector: ${connectorResources.map((r) => r?.name ?? String(r)).join(", ")}`
4570
- );
4571
- } catch (err) {
4572
- logger.warn(`Error loading resources for connector: ${err}`);
4573
- }
4574
- return connectorResources;
4575
- }
4576
- /**
4577
- * Dynamically load prompts for a specific connector.
4578
- *
4579
- * @param connector The connector to load prompts for.
4580
- * @returns The list of prompts that were loaded in the target framework's format.
4581
- */
4582
- async loadPromptsForConnector(connector) {
4583
- const connectorPrompts = [];
4584
- const success = await this.ensureConnectorInitialized(connector);
4585
- if (!success) {
4586
- return [];
4587
- }
4588
- try {
4589
- const promptsResult = await connector.listPrompts();
4590
- const prompts = promptsResult?.prompts || [];
4591
- if (this.convertPrompt) {
4592
- for (const prompt of prompts) {
4593
- const converted = this.convertPrompt(prompt, connector);
4594
- if (converted) {
4595
- connectorPrompts.push(converted);
4596
- }
4597
- }
4598
- }
4599
- logger.debug(
4600
- `Loaded ${connectorPrompts.length} new prompts for connector: ${connectorPrompts.map((p) => p?.name ?? String(p)).join(", ")}`
4601
- );
4602
- } catch (err) {
4603
- logger.warn(`Error loading prompts for connector: ${err}`);
4604
- }
4605
- return connectorPrompts;
4606
- }
4607
- /**
4608
- * Create resources from MCP resources in all provided connectors.
4609
- *
4610
- * @param connectors List of MCP connectors to create resources from.
4611
- * @returns A promise that resolves with all converted resources.
4612
- */
4613
- async createResourcesFromConnectors(connectors) {
4614
- const resources = [];
4615
- for (const connector of connectors) {
4616
- const connectorResources = await this.loadResourcesForConnector(connector);
4617
- resources.push(...connectorResources);
4618
- }
4619
- logger.debug(`Available resources: ${resources.length}`);
4620
- return resources;
4621
- }
4622
- /**
4623
- * Create prompts from MCP prompts in all provided connectors.
4624
- *
4625
- * @param connectors List of MCP connectors to create prompts from.
4626
- * @returns A promise that resolves with all converted prompts.
4627
- */
4628
- async createPromptsFromConnectors(connectors) {
4629
- const prompts = [];
4630
- for (const connector of connectors) {
4631
- const connectorPrompts = await this.loadPromptsForConnector(connector);
4632
- prompts.push(...connectorPrompts);
4633
- }
4634
- logger.debug(`Available prompts: ${prompts.length}`);
4635
- return prompts;
4636
- }
4637
4545
  /**
4638
4546
  * Check if a connector is initialized and has tools.
4639
4547
  *
@@ -4712,99 +4620,6 @@ var LangChainAdapter = class extends BaseAdapter {
4712
4620
  });
4713
4621
  return tool;
4714
4622
  }
4715
- /**
4716
- * Convert a single MCP resource into a LangChainJS structured tool.
4717
- * Each resource becomes an async tool that returns its content when called.
4718
- */
4719
- convertResource(mcpResource, connector) {
4720
- const sanitizeName = /* @__PURE__ */ __name((name) => {
4721
- return name.replace(/[^A-Za-z0-9_]+/g, "_").toLowerCase().replace(/^_+|_+$/g, "");
4722
- }, "sanitizeName");
4723
- const resourceName = sanitizeName(
4724
- mcpResource.name || `resource_${mcpResource.uri}`
4725
- );
4726
- const resourceUri = mcpResource.uri;
4727
- const tool = new import_tools.DynamicStructuredTool({
4728
- name: resourceName,
4729
- description: mcpResource.description || `Return the content of the resource located at URI ${resourceUri}.`,
4730
- schema: import_zod2.z.object({}).optional(),
4731
- // Resources take no arguments
4732
- func: /* @__PURE__ */ __name(async () => {
4733
- logger.debug(`Resource tool: "${resourceName}" called`);
4734
- try {
4735
- const result = await connector.readResource(resourceUri);
4736
- if (result.contents && result.contents.length > 0) {
4737
- return result.contents.map((content) => {
4738
- if (typeof content === "string") {
4739
- return content;
4740
- }
4741
- if (content.text) {
4742
- return content.text;
4743
- }
4744
- if (content.uri) {
4745
- return content.uri;
4746
- }
4747
- return JSON.stringify(content);
4748
- }).join("\n");
4749
- }
4750
- return "Resource is empty or unavailable";
4751
- } catch (err) {
4752
- logger.error(`Error reading resource: ${err.message}`);
4753
- return `Error reading resource: ${String(err)}`;
4754
- }
4755
- }, "func")
4756
- });
4757
- return tool;
4758
- }
4759
- /**
4760
- * Convert a single MCP prompt into a LangChainJS structured tool.
4761
- * The resulting tool executes getPrompt on the connector with the prompt's name
4762
- * and the user-provided arguments (if any).
4763
- */
4764
- convertPrompt(mcpPrompt, connector) {
4765
- let argsSchema = import_zod2.z.object({}).optional();
4766
- if (mcpPrompt.arguments && mcpPrompt.arguments.length > 0) {
4767
- const schemaFields = {};
4768
- for (const arg of mcpPrompt.arguments) {
4769
- const zodType = import_zod2.z.string();
4770
- if (arg.required !== false) {
4771
- schemaFields[arg.name] = zodType;
4772
- } else {
4773
- schemaFields[arg.name] = zodType.optional();
4774
- }
4775
- }
4776
- argsSchema = Object.keys(schemaFields).length > 0 ? import_zod2.z.object(schemaFields) : import_zod2.z.object({}).optional();
4777
- }
4778
- const tool = new import_tools.DynamicStructuredTool({
4779
- name: mcpPrompt.name,
4780
- description: mcpPrompt.description || "",
4781
- schema: argsSchema,
4782
- func: /* @__PURE__ */ __name(async (input) => {
4783
- logger.debug(
4784
- `Prompt tool: "${mcpPrompt.name}" called with args: ${JSON.stringify(input)}`
4785
- );
4786
- try {
4787
- const result = await connector.getPrompt(mcpPrompt.name, input);
4788
- if (result.messages && result.messages.length > 0) {
4789
- return result.messages.map((msg) => {
4790
- if (typeof msg === "string") {
4791
- return msg;
4792
- }
4793
- if (msg.content) {
4794
- return typeof msg.content === "string" ? msg.content : JSON.stringify(msg.content);
4795
- }
4796
- return JSON.stringify(msg);
4797
- }).join("\n");
4798
- }
4799
- return "Prompt returned no messages";
4800
- } catch (err) {
4801
- logger.error(`Error getting prompt: ${err.message}`);
4802
- return `Error getting prompt: ${String(err)}`;
4803
- }
4804
- }, "func")
4805
- });
4806
- return tool;
4807
- }
4808
4623
  };
4809
4624
 
4810
4625
  // src/agents/mcp_agent.ts
@@ -4944,21 +4759,15 @@ var ConnectMCPServerTool = class extends MCPServerTool {
4944
4759
  session = await this.manager.client.createSession(serverName);
4945
4760
  }
4946
4761
  this.manager.activeServer = serverName;
4947
- if (!this.manager.serverTools[serverName]) {
4762
+ if (this.manager.serverTools[serverName]) {
4948
4763
  const connector = session.connector;
4949
4764
  const tools = await this.manager.adapter.createToolsFromConnectors([connector]);
4950
- const resources = await this.manager.adapter.createResourcesFromConnectors([connector]);
4951
- const prompts = await this.manager.adapter.createPromptsFromConnectors([connector]);
4952
- const allItems = [...tools, ...resources, ...prompts];
4953
- this.manager.serverTools[serverName] = allItems;
4765
+ this.manager.serverTools[serverName] = tools;
4954
4766
  this.manager.initializedServers[serverName] = true;
4955
- logger.debug(
4956
- `Loaded ${allItems.length} items for server '${serverName}': ${tools.length} tools, ${resources.length} resources, ${prompts.length} prompts`
4957
- );
4958
4767
  }
4959
4768
  const serverTools = this.manager.serverTools[serverName] || [];
4960
4769
  const numTools = serverTools.length;
4961
- return `Connected to MCP server '${serverName}'. ${numTools} tools, resources, and prompts are now available.`;
4770
+ return `Connected to MCP server '${serverName}'. ${numTools} tools are now available.`;
4962
4771
  } catch (error) {
4963
4772
  logger.error(
4964
4773
  `Error connecting to server '${serverName}': ${String(error)}`
@@ -5120,30 +4929,21 @@ var ServerManager = class {
5120
4929
  if (session) {
5121
4930
  const connector = session.connector;
5122
4931
  let tools = [];
5123
- let resources = [];
5124
- let prompts = [];
5125
4932
  try {
5126
4933
  tools = await this.adapter.createToolsFromConnectors([connector]);
5127
- resources = await this.adapter.createResourcesFromConnectors([
5128
- connector
5129
- ]);
5130
- prompts = await this.adapter.createPromptsFromConnectors([
5131
- connector
5132
- ]);
5133
4934
  } catch (toolFetchError) {
5134
4935
  logger.error(
5135
- `Failed to create tools/resources/prompts from connector for server '${serverName}': ${toolFetchError}`
4936
+ `Failed to create tools from connector for server '${serverName}': ${toolFetchError}`
5136
4937
  );
5137
4938
  continue;
5138
4939
  }
5139
- const allItems = [...tools, ...resources, ...prompts];
5140
4940
  const cachedTools = this.serverTools[serverName];
5141
- const toolsChanged = !cachedTools || !isEqual(cachedTools, allItems);
4941
+ const toolsChanged = !cachedTools || !isEqual(cachedTools, tools);
5142
4942
  if (toolsChanged) {
5143
- this.serverTools[serverName] = allItems;
4943
+ this.serverTools[serverName] = tools;
5144
4944
  this.initializedServers[serverName] = true;
5145
4945
  logger.debug(
5146
- `Prefetched ${allItems.length} items for server '${serverName}': ${tools.length} tools, ${resources.length} resources, ${prompts.length} prompts.`
4946
+ `Prefetched ${tools.length} tools for server '${serverName}'.`
5147
4947
  );
5148
4948
  } else {
5149
4949
  logger.debug(
@@ -5886,18 +5686,9 @@ var MCPAgent = class {
5886
5686
  );
5887
5687
  }
5888
5688
  } else {
5889
- const tools = await this.adapter.createToolsFromConnectors(
5890
- Object.values(this.sessions).map((session) => session.connector)
5891
- );
5892
- const resources = await this.adapter.createResourcesFromConnectors(
5893
- Object.values(this.sessions).map((session) => session.connector)
5894
- );
5895
- const prompts = await this.adapter.createPromptsFromConnectors(
5896
- Object.values(this.sessions).map((session) => session.connector)
5897
- );
5898
- this._tools = [...tools, ...resources, ...prompts];
5689
+ this._tools = await LangChainAdapter.createTools(this.client);
5899
5690
  logger.info(
5900
- `\u{1F6E0}\uFE0F Created ${this._tools.length} LangChain items from client: ${tools.length} tools, ${resources.length} resources, ${prompts.length} prompts`
5691
+ `\u{1F6E0}\uFE0F Created ${this._tools.length} LangChain tools from client`
5901
5692
  );
5902
5693
  }
5903
5694
  this._tools.push(...this.additionalTools);
@@ -5910,19 +5701,12 @@ var MCPAgent = class {
5910
5701
  await connector.connect();
5911
5702
  }
5912
5703
  }
5913
- const tools = await this.adapter.createToolsFromConnectors(
5914
- this.connectors
5915
- );
5916
- const resources = await this.adapter.createResourcesFromConnectors(
5917
- this.connectors
5918
- );
5919
- const prompts = await this.adapter.createPromptsFromConnectors(
5704
+ this._tools = await this.adapter.createToolsFromConnectors(
5920
5705
  this.connectors
5921
5706
  );
5922
- this._tools = [...tools, ...resources, ...prompts];
5923
5707
  this._tools.push(...this.additionalTools);
5924
5708
  logger.info(
5925
- `\u{1F6E0}\uFE0F Created ${this._tools.length} LangChain items from connectors: ${tools.length} tools, ${resources.length} resources, ${prompts.length} prompts`
5709
+ `\u{1F6E0}\uFE0F Created ${this._tools.length} LangChain tools from connectors`
5926
5710
  );
5927
5711
  }
5928
5712
  logger.info(`\u{1F9F0} Found ${this._tools.length} tools across all connectors`);
@@ -9,28 +9,28 @@ import {
9
9
  MCPAgent,
10
10
  ObservabilityManager,
11
11
  RemoteAgent
12
- } from "../chunk-FAELBZOW.js";
12
+ } from "../chunk-RUEU7IHO.js";
13
13
  import "../chunk-CPG2WZUL.js";
14
14
  import {
15
15
  BrowserMCPClient,
16
16
  HttpConnector,
17
17
  MCPSession,
18
18
  WebSocketConnector
19
- } from "../chunk-KFTQ3UL5.js";
19
+ } from "../chunk-CWJE3EHI.js";
20
20
  import {
21
21
  BrowserOAuthClientProvider,
22
22
  onMcpAuthorization
23
23
  } from "../chunk-J75I2C26.js";
24
24
  import {
25
25
  BaseConnector
26
- } from "../chunk-4NC7PPVE.js";
26
+ } from "../chunk-5ZIIKP7J.js";
27
27
  import {
28
28
  Tel,
29
29
  Telemetry,
30
30
  VERSION,
31
31
  getPackageVersion,
32
32
  setTelemetrySource
33
- } from "../chunk-VTNHO2TS.js";
33
+ } from "../chunk-XV23SGJO.js";
34
34
  import {
35
35
  Logger,
36
36
  logger
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  PROMPTS
3
- } from "../../chunk-OTZ32HGI.js";
4
- import "../../chunk-4NC7PPVE.js";
5
- import "../../chunk-VTNHO2TS.js";
3
+ } from "../../chunk-TU4H3CRX.js";
4
+ import "../../chunk-5ZIIKP7J.js";
5
+ import "../../chunk-XV23SGJO.js";
6
6
  import "../../chunk-34R6SIER.js";
7
7
  import "../../chunk-3GQAWCBQ.js";
8
8
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"server_manager.d.ts","sourceRoot":"","sources":["../../../src/managers/server_manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAmDjD,qBAAa,aAAc,YAAW,cAAc;IAClD,SAAgB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACjE,SAAgB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAM;IAE5E,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC1C,OAAO,CAAC,uBAAuB,CAAC,CAA4B;gBAG1D,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,gBAAgB,EACzB,eAAe,CAAC,EAAE,uBAAuB,EAAE;IAOtC,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,EAAE,GAAG,IAAI;IAO1D,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAqBtC,UAAU,IAAI,IAAI;IAOZ,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwE1C,IAAI,KAAK,IAAI,uBAAuB,EAAE,CAsBrC;CACF"}
1
+ {"version":3,"file":"server_manager.d.ts","sourceRoot":"","sources":["../../../src/managers/server_manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAG9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAmDjD,qBAAa,aAAc,YAAW,cAAc;IAClD,SAAgB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM;IACjE,SAAgB,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,uBAAuB,EAAE,CAAC,CAAM;IAE5E,SAAgB,MAAM,EAAE,SAAS,CAAC;IAClC,SAAgB,OAAO,EAAE,gBAAgB,CAAC;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC1C,OAAO,CAAC,uBAAuB,CAAC,CAA4B;gBAG1D,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,gBAAgB,EACzB,eAAe,CAAC,EAAE,uBAAuB,EAAE;IAOtC,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,EAAE,GAAG,IAAI;IAO1D,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAqBtC,UAAU,IAAI,IAAI;IAOZ,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC;IA8D1C,IAAI,KAAK,IAAI,uBAAuB,EAAE,CAsBrC;CACF"}
@@ -1 +1 @@
1
- {"version":3,"file":"connect_mcp_server.d.ts","sourceRoot":"","sources":["../../../../src/managers/tools/connect_mcp_server.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,QAAA,MAAM,sBAAsB;;iBAE1B,CAAC;AAEH,qBAAa,oBAAqB,SAAQ,aAAa,CACrD,OAAO,sBAAsB,CAC9B;IACU,IAAI,SAA2B;IAC/B,WAAW,SAC6H;IACxI,MAAM;;sBAA0B;gBAE7B,OAAO,EAAE,cAAc;IAI7B,KAAK,CAAC,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,OAAO,sBAAsB,CAAC;CAgDzE"}
1
+ {"version":3,"file":"connect_mcp_server.d.ts","sourceRoot":"","sources":["../../../../src/managers/tools/connect_mcp_server.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAClD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAC/C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,WAAW,CAAC;AAE1C,QAAA,MAAM,sBAAsB;;iBAE1B,CAAC;AAEH,qBAAa,oBAAqB,SAAQ,aAAa,CACrD,OAAO,sBAAsB,CAC9B;IACU,IAAI,SAA2B;IAC/B,WAAW,SAC6H;IACxI,MAAM;;sBAA0B;gBAE7B,OAAO,EAAE,cAAc;IAI7B,KAAK,CAAC,EAAE,UAAU,EAAE,EAAE,aAAa,CAAC,OAAO,sBAAsB,CAAC;CAuCzE"}
@@ -876,7 +876,7 @@ function generateUUID() {
876
876
  __name(generateUUID, "generateUUID");
877
877
 
878
878
  // src/version.ts
879
- var VERSION = "1.10.1-canary.2";
879
+ var VERSION = "1.10.1";
880
880
  function getPackageVersion() {
881
881
  return VERSION;
882
882
  }
@@ -9,17 +9,17 @@ import {
9
9
  useWidgetProps,
10
10
  useWidgetState,
11
11
  useWidgetTheme
12
- } from "../../chunk-CFX74U7W.js";
13
- import "../../chunk-KFTQ3UL5.js";
12
+ } from "../../chunk-F435FIAK.js";
13
+ import "../../chunk-CWJE3EHI.js";
14
14
  import {
15
15
  onMcpAuthorization
16
16
  } from "../../chunk-J75I2C26.js";
17
- import "../../chunk-4NC7PPVE.js";
17
+ import "../../chunk-5ZIIKP7J.js";
18
18
  import {
19
19
  Tel,
20
20
  Telemetry,
21
21
  setTelemetrySource
22
- } from "../../chunk-VTNHO2TS.js";
22
+ } from "../../chunk-XV23SGJO.js";
23
23
  import "../../chunk-34R6SIER.js";
24
24
  import "../../chunk-3GQAWCBQ.js";
25
25
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"mount-mcp.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/mount-mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAW,IAAI,IAAI,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,QAAQ,EACb,iBAAiB,EAAE;IACjB,mBAAmB,EAAE,MAAM,OAAO,iDAAiD,EAAE,SAAS,CAAC;IAC/F,2BAA2B,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,EAAE,2DAA2D;AAC9D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAA;CAAE,CAAC,CAyHxE"}
1
+ {"version":3,"file":"mount-mcp.d.ts","sourceRoot":"","sources":["../../../../src/server/endpoints/mount-mcp.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAW,IAAI,IAAI,QAAQ,EAAE,MAAM,MAAM,CAAC;AACtD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;GAKG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,QAAQ,EACb,iBAAiB,EAAE;IACjB,mBAAmB,EAAE,MAAM,OAAO,iDAAiD,EAAE,SAAS,CAAC;IAC/F,2BAA2B,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,EAAE,2DAA2D;AAC9D,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,MAAM,EAAE,YAAY,EACpB,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAAC;IAAE,UAAU,EAAE,OAAO,CAAC;IAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAA;CAAE,CAAC,CAgHxE"}
@@ -761,7 +761,7 @@ var VERSION;
761
761
  var init_version = __esm({
762
762
  "src/version.ts"() {
763
763
  "use strict";
764
- VERSION = "1.10.1-canary.2";
764
+ VERSION = "1.10.1";
765
765
  __name(getPackageVersion, "getPackageVersion");
766
766
  }
767
767
  });
@@ -4632,7 +4632,7 @@ init_tool_execution_helpers();
4632
4632
  init_context_storage();
4633
4633
 
4634
4634
  // src/server/sessions/session-manager.ts
4635
- function startIdleCleanup(sessions, idleTimeoutMs, transports, mcpServerInstance) {
4635
+ function startIdleCleanup(sessions, idleTimeoutMs, mcpServerInstance) {
4636
4636
  if (idleTimeoutMs <= 0) {
4637
4637
  return void 0;
4638
4638
  }
@@ -4649,21 +4649,8 @@ function startIdleCleanup(sessions, idleTimeoutMs, transports, mcpServerInstance
4649
4649
  `[MCP] Cleaning up ${expiredSessions.length} idle session(s)`
4650
4650
  );
4651
4651
  for (const sessionId of expiredSessions) {
4652
- const transport = transports?.get(sessionId);
4653
- if (transport?.close) {
4654
- Promise.resolve(transport.close()).catch((e) => {
4655
- console.warn(
4656
- `[MCP] Error closing transport for session ${sessionId}:`,
4657
- e
4658
- );
4659
- });
4660
- }
4661
- transports?.delete(sessionId);
4662
4652
  sessions.delete(sessionId);
4663
4653
  mcpServerInstance?.cleanupSessionSubscriptions?.(sessionId);
4664
- console.log(
4665
- `[MCP] Cleaned up resource subscriptions for session ${sessionId}`
4666
- );
4667
4654
  }
4668
4655
  }
4669
4656
  }, 6e4);
@@ -4682,18 +4669,11 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
4682
4669
  idleCleanupInterval = startIdleCleanup(
4683
4670
  sessions,
4684
4671
  idleTimeoutMs,
4685
- transports,
4686
4672
  mcpServerInstance
4687
4673
  );
4688
4674
  }
4689
4675
  const handleRequest = /* @__PURE__ */ __name(async (c) => {
4690
4676
  const sessionId = c.req.header("mcp-session-id");
4691
- if (c.req.method === "HEAD") {
4692
- if (sessionId && sessions.has(sessionId)) {
4693
- sessions.get(sessionId).lastAccessedAt = Date.now();
4694
- }
4695
- return new Response(null, { status: 200 });
4696
- }
4697
4677
  if (sessionId && transports.has(sessionId)) {
4698
4678
  const transport2 = transports.get(sessionId);
4699
4679
  if (sessions.has(sessionId)) {
@@ -4750,7 +4730,7 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
4750
4730
  return transport.handleRequest(c.req.raw);
4751
4731
  }, "handleRequest");
4752
4732
  for (const endpoint of ["/mcp", "/sse"]) {
4753
- app.on(["GET", "POST", "DELETE", "HEAD"], endpoint, handleRequest);
4733
+ app.on(["GET", "POST", "DELETE"], endpoint, handleRequest);
4754
4734
  }
4755
4735
  console.log(
4756
4736
  `[MCP] Server mounted at /mcp and /sse (using FetchStreamableHTTPServerTransport - Web Standard APIs)`
@@ -7,7 +7,7 @@ import {
7
7
  createEnhancedContext,
8
8
  findSessionContext,
9
9
  isValidLogLevel
10
- } from "../../chunk-QNZMNQCY.js";
10
+ } from "../../chunk-44BUM5CN.js";
11
11
  import {
12
12
  convertToolResultToResourceResult
13
13
  } from "../../chunk-362PI25Z.js";
@@ -25,7 +25,7 @@ import {
25
25
  getPackageVersion,
26
26
  isDeno,
27
27
  pathHelpers
28
- } from "../../chunk-VTNHO2TS.js";
28
+ } from "../../chunk-XV23SGJO.js";
29
29
  import "../../chunk-34R6SIER.js";
30
30
  import {
31
31
  __name
@@ -2091,7 +2091,7 @@ function registerResource(resourceDefinition, callback) {
2091
2091
  const explicitMimeType = resourceDefinition.mimeType;
2092
2092
  const wrappedCallback = /* @__PURE__ */ __name(async () => {
2093
2093
  const { getRequestContext: getRequestContext2, runWithContext: runWithContext2 } = await import("../../context-storage-NA4MHWOZ.js");
2094
- const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-PQGEPYY3.js");
2094
+ const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-Z73OHQVM.js");
2095
2095
  const initialRequestContext = getRequestContext2();
2096
2096
  const sessions = this.sessions || /* @__PURE__ */ new Map();
2097
2097
  const { requestContext } = findSessionContext2(
@@ -2169,7 +2169,7 @@ function registerResourceTemplate(resourceTemplateDefinition, callback) {
2169
2169
  async (uri) => {
2170
2170
  const params = this.parseTemplateUri(uriTemplate, uri.toString());
2171
2171
  const { getRequestContext: getRequestContext2, runWithContext: runWithContext2 } = await import("../../context-storage-NA4MHWOZ.js");
2172
- const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-PQGEPYY3.js");
2172
+ const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-Z73OHQVM.js");
2173
2173
  const initialRequestContext = getRequestContext2();
2174
2174
  const sessions = this.sessions || /* @__PURE__ */ new Map();
2175
2175
  const { requestContext } = findSessionContext2(
@@ -2224,7 +2224,7 @@ function registerPrompt(promptDefinition, callback) {
2224
2224
  }
2225
2225
  const wrappedCallback = /* @__PURE__ */ __name(async (params, extra) => {
2226
2226
  const { getRequestContext: getRequestContext2, runWithContext: runWithContext2 } = await import("../../context-storage-NA4MHWOZ.js");
2227
- const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-PQGEPYY3.js");
2227
+ const { findSessionContext: findSessionContext2 } = await import("../../tool-execution-helpers-Z73OHQVM.js");
2228
2228
  const initialRequestContext = getRequestContext2();
2229
2229
  const sessions = this.sessions || /* @__PURE__ */ new Map();
2230
2230
  const { requestContext } = findSessionContext2(
@@ -2495,7 +2495,7 @@ async function sendNotificationToSession2(sessionId, method, params) {
2495
2495
  __name(sendNotificationToSession2, "sendNotificationToSession");
2496
2496
 
2497
2497
  // src/server/sessions/session-manager.ts
2498
- function startIdleCleanup(sessions, idleTimeoutMs, transports, mcpServerInstance) {
2498
+ function startIdleCleanup(sessions, idleTimeoutMs, mcpServerInstance) {
2499
2499
  if (idleTimeoutMs <= 0) {
2500
2500
  return void 0;
2501
2501
  }
@@ -2512,21 +2512,8 @@ function startIdleCleanup(sessions, idleTimeoutMs, transports, mcpServerInstance
2512
2512
  `[MCP] Cleaning up ${expiredSessions.length} idle session(s)`
2513
2513
  );
2514
2514
  for (const sessionId of expiredSessions) {
2515
- const transport = transports?.get(sessionId);
2516
- if (transport?.close) {
2517
- Promise.resolve(transport.close()).catch((e) => {
2518
- console.warn(
2519
- `[MCP] Error closing transport for session ${sessionId}:`,
2520
- e
2521
- );
2522
- });
2523
- }
2524
- transports?.delete(sessionId);
2525
2515
  sessions.delete(sessionId);
2526
2516
  mcpServerInstance?.cleanupSessionSubscriptions?.(sessionId);
2527
- console.log(
2528
- `[MCP] Cleaned up resource subscriptions for session ${sessionId}`
2529
- );
2530
2517
  }
2531
2518
  }
2532
2519
  }, 6e4);
@@ -2543,18 +2530,11 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
2543
2530
  idleCleanupInterval = startIdleCleanup(
2544
2531
  sessions,
2545
2532
  idleTimeoutMs,
2546
- transports,
2547
2533
  mcpServerInstance
2548
2534
  );
2549
2535
  }
2550
2536
  const handleRequest = /* @__PURE__ */ __name(async (c) => {
2551
2537
  const sessionId = c.req.header("mcp-session-id");
2552
- if (c.req.method === "HEAD") {
2553
- if (sessionId && sessions.has(sessionId)) {
2554
- sessions.get(sessionId).lastAccessedAt = Date.now();
2555
- }
2556
- return new Response(null, { status: 200 });
2557
- }
2558
2538
  if (sessionId && transports.has(sessionId)) {
2559
2539
  const transport2 = transports.get(sessionId);
2560
2540
  if (sessions.has(sessionId)) {
@@ -2611,7 +2591,7 @@ async function mountMcp(app, mcpServerInstance, sessions, config, isProductionMo
2611
2591
  return transport.handleRequest(c.req.raw);
2612
2592
  }, "handleRequest");
2613
2593
  for (const endpoint of ["/mcp", "/sse"]) {
2614
- app.on(["GET", "POST", "DELETE", "HEAD"], endpoint, handleRequest);
2594
+ app.on(["GET", "POST", "DELETE"], endpoint, handleRequest);
2615
2595
  }
2616
2596
  console.log(
2617
2597
  `[MCP] Server mounted at /mcp and /sse (using FetchStreamableHTTPServerTransport - Web Standard APIs)`
@@ -40,17 +40,14 @@ export interface SessionData {
40
40
  * Start idle session cleanup interval
41
41
  *
42
42
  * Monitors sessions and removes them if they've been inactive for too long.
43
- * Also cleans up the associated transports to prevent "Server not initialized" errors
44
- * when clients try to reconnect with expired session IDs.
43
+ * Note: This only cleans up our session metadata. The transport manages
44
+ * its own session state.
45
45
  *
46
46
  * @param sessions - Map of active sessions
47
47
  * @param idleTimeoutMs - Idle timeout in milliseconds
48
- * @param transports - Optional map of transports by session ID (to close on cleanup)
49
48
  * @param mcpServerInstance - Optional MCP server instance for cleanup callbacks
50
49
  */
51
- export declare function startIdleCleanup(sessions: Map<string, SessionData>, idleTimeoutMs: number, transports?: Map<string, {
52
- close?: () => Promise<void> | void;
53
- }>, mcpServerInstance?: {
50
+ export declare function startIdleCleanup(sessions: Map<string, SessionData>, idleTimeoutMs: number, mcpServerInstance?: {
54
51
  cleanupSessionSubscriptions?: (sessionId: string) => void;
55
52
  }): NodeJS.Timeout | undefined;
56
53
  //# sourceMappingURL=session-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../../../src/server/sessions/session-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iDAAiD,CAAC;AAEjF;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,SAAS,EAAE,SAAS,CAAC;IACrB,kDAAkD;IAClD,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,CAAC,YAAY,EAAE;QAChC,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,8CAA8C;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,aAAa,EAAE,MAAM,EACrB,UAAU,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;CAAE,CAAC,EAChE,iBAAiB,CAAC,EAAE;IAClB,2BAA2B,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,GACA,MAAM,CAAC,OAAO,GAAG,SAAS,CAyC5B"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../../../src/server/sessions/session-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uDAAuD,CAAC;AACvF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iDAAiD,CAAC;AAEjF;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,SAAS,EAAE,SAAS,CAAC;IACrB,kDAAkD;IAClD,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,2DAA2D;IAC3D,cAAc,EAAE,MAAM,CAAC;IACvB,sDAAsD;IACtD,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oDAAoD;IACpD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mDAAmD;IACnD,gBAAgB,CAAC,EAAE,CAAC,YAAY,EAAE;QAChC,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;KACjC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,qDAAqD;IACrD,UAAU,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChD,8CAA8C;IAC9C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,2DAA2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,EAClC,aAAa,EAAE,MAAM,EACrB,iBAAiB,CAAC,EAAE;IAClB,2BAA2B,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC3D,GACA,MAAM,CAAC,OAAO,GAAG,SAAS,CA0B5B"}
@@ -1,4 +1,4 @@
1
- export declare const VERSION = "1.10.1-canary.2";
1
+ export declare const VERSION = "1.10.1";
2
2
  /**
3
3
  * Get the package version.
4
4
  * The version is embedded at build time via scripts/generate-version.mjs
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,oBAAoB,CAAC;AAEzC;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/version.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,OAAO,WAAW,CAAC;AAEhC;;;;GAIG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C"}
@@ -10,9 +10,9 @@ import {
10
10
  sendProgressNotification,
11
11
  shouldLogMessage,
12
12
  withTimeout
13
- } from "./chunk-QNZMNQCY.js";
13
+ } from "./chunk-44BUM5CN.js";
14
14
  import "./chunk-KUEVOU4M.js";
15
- import "./chunk-VTNHO2TS.js";
15
+ import "./chunk-XV23SGJO.js";
16
16
  import "./chunk-34R6SIER.js";
17
17
  import "./chunk-3GQAWCBQ.js";
18
18
  export {