@vybestack/llxprt-code-core 0.1.21 → 0.1.23

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 (199) hide show
  1. package/dist/src/auth/types.d.ts +4 -4
  2. package/dist/src/code_assist/codeAssist.d.ts +1 -1
  3. package/dist/src/code_assist/codeAssist.js +5 -2
  4. package/dist/src/code_assist/codeAssist.js.map +1 -1
  5. package/dist/src/code_assist/converter.d.ts +2 -1
  6. package/dist/src/code_assist/converter.js +6 -4
  7. package/dist/src/code_assist/converter.js.map +1 -1
  8. package/dist/src/code_assist/oauth2.d.ts +1 -0
  9. package/dist/src/code_assist/oauth2.js +32 -15
  10. package/dist/src/code_assist/oauth2.js.map +1 -1
  11. package/dist/src/code_assist/server.d.ts +1 -2
  12. package/dist/src/code_assist/server.js +10 -5
  13. package/dist/src/code_assist/server.js.map +1 -1
  14. package/dist/src/code_assist/setup.js +2 -1
  15. package/dist/src/code_assist/setup.js.map +1 -1
  16. package/dist/src/config/config.d.ts +14 -1
  17. package/dist/src/config/config.js +28 -3
  18. package/dist/src/config/config.js.map +1 -1
  19. package/dist/src/core/client.js +13 -4
  20. package/dist/src/core/client.js.map +1 -1
  21. package/dist/src/core/coreToolScheduler.d.ts +2 -1
  22. package/dist/src/core/coreToolScheduler.js +23 -0
  23. package/dist/src/core/coreToolScheduler.js.map +1 -1
  24. package/dist/src/core/geminiChat.js +73 -17
  25. package/dist/src/core/geminiChat.js.map +1 -1
  26. package/dist/src/core/loggingContentGenerator.d.ts +1 -5
  27. package/dist/src/core/loggingContentGenerator.js +4 -6
  28. package/dist/src/core/loggingContentGenerator.js.map +1 -1
  29. package/dist/src/core/nonInteractiveToolExecutor.d.ts +2 -2
  30. package/dist/src/core/nonInteractiveToolExecutor.js +13 -9
  31. package/dist/src/core/nonInteractiveToolExecutor.js.map +1 -1
  32. package/dist/src/core/subagent.js +5 -5
  33. package/dist/src/core/subagent.js.map +1 -1
  34. package/dist/src/debug/ConfigurationManager.d.ts +28 -0
  35. package/dist/src/debug/ConfigurationManager.js +211 -0
  36. package/dist/src/debug/ConfigurationManager.js.map +1 -0
  37. package/dist/src/debug/DebugLogger.d.ts +26 -0
  38. package/dist/src/debug/DebugLogger.js +230 -0
  39. package/dist/src/debug/DebugLogger.js.map +1 -0
  40. package/dist/src/debug/FileOutput.d.ts +23 -0
  41. package/dist/src/debug/FileOutput.js +144 -0
  42. package/dist/src/debug/FileOutput.js.map +1 -0
  43. package/dist/src/debug/MockConfigurationManager.d.ts +28 -0
  44. package/dist/src/debug/MockConfigurationManager.js +45 -0
  45. package/dist/src/debug/MockConfigurationManager.js.map +1 -0
  46. package/dist/src/debug/MockFileOutput.d.ts +20 -0
  47. package/dist/src/debug/MockFileOutput.js +25 -0
  48. package/dist/src/debug/MockFileOutput.js.map +1 -0
  49. package/dist/src/debug/index.d.ts +8 -0
  50. package/dist/src/debug/index.js +9 -0
  51. package/dist/src/debug/index.js.map +1 -0
  52. package/dist/src/debug/types.d.ts +23 -0
  53. package/dist/src/debug/types.js +2 -0
  54. package/dist/src/debug/types.js.map +1 -0
  55. package/dist/src/ide/ide-client.d.ts +4 -0
  56. package/dist/src/ide/ide-client.js +41 -2
  57. package/dist/src/ide/ide-client.js.map +1 -1
  58. package/dist/src/ide/ide-installer.js +17 -4
  59. package/dist/src/ide/ide-installer.js.map +1 -1
  60. package/dist/src/ide/process-utils.d.ts +10 -5
  61. package/dist/src/ide/process-utils.js +113 -30
  62. package/dist/src/ide/process-utils.js.map +1 -1
  63. package/dist/src/index.d.ts +5 -0
  64. package/dist/src/index.js +4 -0
  65. package/dist/src/index.js.map +1 -1
  66. package/dist/src/mcp/oauth-provider.js +176 -58
  67. package/dist/src/mcp/oauth-provider.js.map +1 -1
  68. package/dist/src/mcp/oauth-utils.d.ts +3 -1
  69. package/dist/src/mcp/oauth-utils.js +52 -22
  70. package/dist/src/mcp/oauth-utils.js.map +1 -1
  71. package/dist/src/prompt-config/defaults/core.md +34 -230
  72. package/dist/src/prompt-config/defaults/tools/read-file.md +1 -1
  73. package/dist/src/providers/BaseProvider.js +13 -2
  74. package/dist/src/providers/BaseProvider.js.map +1 -1
  75. package/dist/src/providers/anthropic/AnthropicProvider.d.ts +1 -0
  76. package/dist/src/providers/anthropic/AnthropicProvider.js +165 -127
  77. package/dist/src/providers/anthropic/AnthropicProvider.js.map +1 -1
  78. package/dist/src/providers/gemini/GeminiProvider.d.ts +1 -0
  79. package/dist/src/providers/gemini/GeminiProvider.js +29 -53
  80. package/dist/src/providers/gemini/GeminiProvider.js.map +1 -1
  81. package/dist/src/providers/openai/OpenAIProvider.d.ts +9 -0
  82. package/dist/src/providers/openai/OpenAIProvider.js +671 -128
  83. package/dist/src/providers/openai/OpenAIProvider.js.map +1 -1
  84. package/dist/src/providers/openai/buildResponsesRequest.js +9 -6
  85. package/dist/src/providers/openai/buildResponsesRequest.js.map +1 -1
  86. package/dist/src/providers/openai/getOpenAIProviderInfo.js +8 -3
  87. package/dist/src/providers/openai/getOpenAIProviderInfo.js.map +1 -1
  88. package/dist/src/providers/openai/parseResponsesStream.js +13 -4
  89. package/dist/src/providers/openai/parseResponsesStream.js.map +1 -1
  90. package/dist/src/providers/openai/syntheticToolResponses.d.ts +0 -9
  91. package/dist/src/providers/openai/syntheticToolResponses.js +87 -16
  92. package/dist/src/providers/openai/syntheticToolResponses.js.map +1 -1
  93. package/dist/src/services/fileSystemService.d.ts +31 -0
  94. package/dist/src/services/fileSystemService.js +18 -0
  95. package/dist/src/services/fileSystemService.js.map +1 -0
  96. package/dist/src/services/loopDetectionService.d.ts +5 -0
  97. package/dist/src/services/loopDetectionService.js +89 -1
  98. package/dist/src/services/loopDetectionService.js.map +1 -1
  99. package/dist/src/services/shellExecutionService.d.ts +8 -6
  100. package/dist/src/services/shellExecutionService.js +297 -133
  101. package/dist/src/services/shellExecutionService.js.map +1 -1
  102. package/dist/src/telemetry/index.d.ts +2 -2
  103. package/dist/src/telemetry/index.js +2 -2
  104. package/dist/src/telemetry/index.js.map +1 -1
  105. package/dist/src/telemetry/loggers.d.ts +2 -1
  106. package/dist/src/telemetry/loggers.js +15 -1
  107. package/dist/src/telemetry/loggers.js.map +1 -1
  108. package/dist/src/telemetry/metrics.d.ts +1 -1
  109. package/dist/src/telemetry/metrics.js +2 -1
  110. package/dist/src/telemetry/metrics.js.map +1 -1
  111. package/dist/src/telemetry/sdk.js +3 -3
  112. package/dist/src/telemetry/sdk.js.map +1 -1
  113. package/dist/src/telemetry/types.d.ts +9 -1
  114. package/dist/src/telemetry/types.js +32 -0
  115. package/dist/src/telemetry/types.js.map +1 -1
  116. package/dist/src/telemetry/uiTelemetry.d.ts +4 -0
  117. package/dist/src/telemetry/uiTelemetry.js +16 -1
  118. package/dist/src/telemetry/uiTelemetry.js.map +1 -1
  119. package/dist/src/test-utils/tools.d.ts +29 -8
  120. package/dist/src/test-utils/tools.js +79 -15
  121. package/dist/src/test-utils/tools.js.map +1 -1
  122. package/dist/src/tools/ToolFormatter.d.ts +1 -0
  123. package/dist/src/tools/ToolFormatter.js +90 -9
  124. package/dist/src/tools/ToolFormatter.js.map +1 -1
  125. package/dist/src/tools/edit.d.ts +2 -2
  126. package/dist/src/tools/edit.js +60 -28
  127. package/dist/src/tools/edit.js.map +1 -1
  128. package/dist/src/tools/glob.d.ts +1 -1
  129. package/dist/src/tools/glob.js +8 -8
  130. package/dist/src/tools/glob.js.map +1 -1
  131. package/dist/src/tools/grep.d.ts +1 -1
  132. package/dist/src/tools/grep.js +1 -6
  133. package/dist/src/tools/grep.js.map +1 -1
  134. package/dist/src/tools/ls.d.ts +1 -1
  135. package/dist/src/tools/ls.js +1 -6
  136. package/dist/src/tools/ls.js.map +1 -1
  137. package/dist/src/tools/mcp-client-manager.d.ts +38 -0
  138. package/dist/src/tools/mcp-client-manager.js +74 -0
  139. package/dist/src/tools/mcp-client-manager.js.map +1 -0
  140. package/dist/src/tools/mcp-client.d.ts +43 -0
  141. package/dist/src/tools/mcp-client.js +163 -32
  142. package/dist/src/tools/mcp-client.js.map +1 -1
  143. package/dist/src/tools/memoryTool.d.ts +1 -1
  144. package/dist/src/tools/memoryTool.js +1 -6
  145. package/dist/src/tools/memoryTool.js.map +1 -1
  146. package/dist/src/tools/read-file.d.ts +1 -1
  147. package/dist/src/tools/read-file.js +5 -7
  148. package/dist/src/tools/read-file.js.map +1 -1
  149. package/dist/src/tools/read-many-files.d.ts +0 -1
  150. package/dist/src/tools/read-many-files.js +16 -11
  151. package/dist/src/tools/read-many-files.js.map +1 -1
  152. package/dist/src/tools/shell.d.ts +1 -1
  153. package/dist/src/tools/shell.js +57 -36
  154. package/dist/src/tools/shell.js.map +1 -1
  155. package/dist/src/tools/tool-error.d.ts +1 -0
  156. package/dist/src/tools/tool-error.js +1 -0
  157. package/dist/src/tools/tool-error.js.map +1 -1
  158. package/dist/src/tools/tool-registry.d.ts +5 -0
  159. package/dist/src/tools/tool-registry.js +13 -4
  160. package/dist/src/tools/tool-registry.js.map +1 -1
  161. package/dist/src/tools/tools.d.ts +56 -76
  162. package/dist/src/tools/tools.js +119 -106
  163. package/dist/src/tools/tools.js.map +1 -1
  164. package/dist/src/tools/web-fetch.d.ts +1 -1
  165. package/dist/src/tools/web-fetch.js +1 -6
  166. package/dist/src/tools/web-fetch.js.map +1 -1
  167. package/dist/src/tools/web-search.d.ts +6 -1
  168. package/dist/src/tools/web-search.js +6 -6
  169. package/dist/src/tools/web-search.js.map +1 -1
  170. package/dist/src/tools/write-file.d.ts +1 -1
  171. package/dist/src/tools/write-file.js +7 -8
  172. package/dist/src/tools/write-file.js.map +1 -1
  173. package/dist/src/utils/environmentContext.js +2 -2
  174. package/dist/src/utils/environmentContext.js.map +1 -1
  175. package/dist/src/utils/errorReporting.js +1 -1
  176. package/dist/src/utils/fileUtils.d.ts +2 -1
  177. package/dist/src/utils/fileUtils.js +3 -3
  178. package/dist/src/utils/fileUtils.js.map +1 -1
  179. package/dist/src/utils/filesearch/crawler.d.ts +15 -0
  180. package/dist/src/utils/filesearch/crawler.js +50 -0
  181. package/dist/src/utils/filesearch/crawler.js.map +1 -0
  182. package/dist/src/utils/filesearch/fileSearch.d.ts +9 -53
  183. package/dist/src/utils/filesearch/fileSearch.js +62 -117
  184. package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
  185. package/dist/src/utils/filesearch/ignore.d.ts +7 -0
  186. package/dist/src/utils/filesearch/ignore.js +25 -0
  187. package/dist/src/utils/filesearch/ignore.js.map +1 -1
  188. package/dist/src/utils/getPty.d.ts +19 -0
  189. package/dist/src/utils/getPty.js +23 -0
  190. package/dist/src/utils/getPty.js.map +1 -0
  191. package/dist/src/utils/shell-utils.d.ts +39 -0
  192. package/dist/src/utils/shell-utils.js +68 -0
  193. package/dist/src/utils/shell-utils.js.map +1 -1
  194. package/dist/src/utils/user_account.js +58 -53
  195. package/dist/src/utils/user_account.js.map +1 -1
  196. package/dist/src/utils/workspaceContext.d.ts +9 -0
  197. package/dist/src/utils/workspaceContext.js +37 -3
  198. package/dist/src/utils/workspaceContext.js.map +1 -1
  199. package/package.json +22 -7
@@ -0,0 +1,74 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2025 Google LLC
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { McpClient, MCPDiscoveryState, populateMcpServerCommand, } from './mcp-client.js';
7
+ import { getErrorMessage } from '../utils/errors.js';
8
+ /**
9
+ * Manages the lifecycle of multiple MCP clients, including local child processes.
10
+ * This class is responsible for starting, stopping, and discovering tools from
11
+ * a collection of MCP servers defined in the configuration.
12
+ */
13
+ export class McpClientManager {
14
+ clients = new Map();
15
+ mcpServers;
16
+ mcpServerCommand;
17
+ toolRegistry;
18
+ promptRegistry;
19
+ debugMode;
20
+ workspaceContext;
21
+ discoveryState = MCPDiscoveryState.NOT_STARTED;
22
+ constructor(mcpServers, mcpServerCommand, toolRegistry, promptRegistry, debugMode, workspaceContext) {
23
+ this.mcpServers = mcpServers;
24
+ this.mcpServerCommand = mcpServerCommand;
25
+ this.toolRegistry = toolRegistry;
26
+ this.promptRegistry = promptRegistry;
27
+ this.debugMode = debugMode;
28
+ this.workspaceContext = workspaceContext;
29
+ }
30
+ /**
31
+ * Initiates the tool discovery process for all configured MCP servers.
32
+ * It connects to each server, discovers its available tools, and registers
33
+ * them with the `ToolRegistry`.
34
+ */
35
+ async discoverAllMcpTools() {
36
+ await this.stop();
37
+ this.discoveryState = MCPDiscoveryState.IN_PROGRESS;
38
+ const servers = populateMcpServerCommand(this.mcpServers, this.mcpServerCommand);
39
+ const discoveryPromises = Object.entries(servers).map(async ([name, config]) => {
40
+ const client = new McpClient(name, config, this.toolRegistry, this.promptRegistry, this.workspaceContext, this.debugMode);
41
+ this.clients.set(name, client);
42
+ try {
43
+ await client.connect();
44
+ await client.discover();
45
+ }
46
+ catch (error) {
47
+ // Log the error but don't let a single failed server stop the others
48
+ console.error(`Error during discovery for server '${name}': ${getErrorMessage(error)}`);
49
+ }
50
+ });
51
+ await Promise.all(discoveryPromises);
52
+ this.discoveryState = MCPDiscoveryState.COMPLETED;
53
+ }
54
+ /**
55
+ * Stops all running local MCP servers and closes all client connections.
56
+ * This is the cleanup method to be called on application exit.
57
+ */
58
+ async stop() {
59
+ const disconnectionPromises = Array.from(this.clients.entries()).map(async ([name, client]) => {
60
+ try {
61
+ await client.disconnect();
62
+ }
63
+ catch (error) {
64
+ console.error(`Error stopping client '${name}': ${getErrorMessage(error)}`);
65
+ }
66
+ });
67
+ await Promise.all(disconnectionPromises);
68
+ this.clients.clear();
69
+ }
70
+ getDiscoveryState() {
71
+ return this.discoveryState;
72
+ }
73
+ }
74
+ //# sourceMappingURL=mcp-client-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-client-manager.js","sourceRoot":"","sources":["../../../src/tools/mcp-client-manager.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,45 @@ export declare enum MCPDiscoveryState {
39
39
  /** Discovery has completed (with or without errors) */
40
40
  COMPLETED = "completed"
41
41
  }
42
+ /**
43
+ * A client for a single MCP server.
44
+ *
45
+ * This class is responsible for connecting to, discovering tools from, and
46
+ * managing the state of a single MCP server.
47
+ */
48
+ export declare class McpClient {
49
+ private readonly serverName;
50
+ private readonly serverConfig;
51
+ private readonly toolRegistry;
52
+ private readonly promptRegistry;
53
+ private readonly workspaceContext;
54
+ private readonly debugMode;
55
+ private client;
56
+ private transport;
57
+ private status;
58
+ private isDisconnecting;
59
+ constructor(serverName: string, serverConfig: MCPServerConfig, toolRegistry: ToolRegistry, promptRegistry: PromptRegistry, workspaceContext: WorkspaceContext, debugMode: boolean);
60
+ /**
61
+ * Connects to the MCP server.
62
+ */
63
+ connect(): Promise<void>;
64
+ /**
65
+ * Discovers tools and prompts from the MCP server.
66
+ */
67
+ discover(): Promise<void>;
68
+ /**
69
+ * Disconnects from the MCP server.
70
+ */
71
+ disconnect(): Promise<void>;
72
+ /**
73
+ * Returns the current status of the client.
74
+ */
75
+ getStatus(): MCPServerStatus;
76
+ private updateStatus;
77
+ private createTransport;
78
+ private discoverTools;
79
+ private discoverPrompts;
80
+ }
42
81
  /**
43
82
  * Map to track which MCP servers have been discovered to require OAuth
44
83
  */
@@ -55,6 +94,10 @@ export declare function addMCPStatusChangeListener(listener: StatusChangeListene
55
94
  * Remove a listener for MCP server status changes
56
95
  */
57
96
  export declare function removeMCPStatusChangeListener(listener: StatusChangeListener): void;
97
+ /**
98
+ * Update the status of an MCP server
99
+ */
100
+ export declare function updateMCPServerStatus(serverName: string, status: MCPServerStatus): void;
58
101
  /**
59
102
  * Get the current status of an MCP server
60
103
  */
@@ -44,6 +44,122 @@ export var MCPDiscoveryState;
44
44
  /** Discovery has completed (with or without errors) */
45
45
  MCPDiscoveryState["COMPLETED"] = "completed";
46
46
  })(MCPDiscoveryState || (MCPDiscoveryState = {}));
47
+ /**
48
+ * A client for a single MCP server.
49
+ *
50
+ * This class is responsible for connecting to, discovering tools from, and
51
+ * managing the state of a single MCP server.
52
+ */
53
+ export class McpClient {
54
+ serverName;
55
+ serverConfig;
56
+ toolRegistry;
57
+ promptRegistry;
58
+ workspaceContext;
59
+ debugMode;
60
+ client;
61
+ transport;
62
+ status = MCPServerStatus.DISCONNECTED;
63
+ isDisconnecting = false;
64
+ constructor(serverName, serverConfig, toolRegistry, promptRegistry, workspaceContext, debugMode) {
65
+ this.serverName = serverName;
66
+ this.serverConfig = serverConfig;
67
+ this.toolRegistry = toolRegistry;
68
+ this.promptRegistry = promptRegistry;
69
+ this.workspaceContext = workspaceContext;
70
+ this.debugMode = debugMode;
71
+ this.client = new Client({
72
+ name: `gemini-cli-mcp-client-${this.serverName}`,
73
+ version: '0.0.1',
74
+ });
75
+ }
76
+ /**
77
+ * Connects to the MCP server.
78
+ */
79
+ async connect() {
80
+ this.isDisconnecting = false;
81
+ this.updateStatus(MCPServerStatus.CONNECTING);
82
+ try {
83
+ this.transport = await this.createTransport();
84
+ this.client.onerror = (error) => {
85
+ if (this.isDisconnecting) {
86
+ return;
87
+ }
88
+ console.error(`MCP ERROR (${this.serverName}):`, error.toString());
89
+ this.updateStatus(MCPServerStatus.DISCONNECTED);
90
+ };
91
+ this.client.registerCapabilities({
92
+ roots: {},
93
+ });
94
+ this.client.setRequestHandler(ListRootsRequestSchema, async () => {
95
+ const roots = [];
96
+ for (const dir of this.workspaceContext.getDirectories()) {
97
+ roots.push({
98
+ uri: pathToFileURL(dir).toString(),
99
+ name: basename(dir),
100
+ });
101
+ }
102
+ return {
103
+ roots,
104
+ };
105
+ });
106
+ await this.client.connect(this.transport, {
107
+ timeout: this.serverConfig.timeout,
108
+ });
109
+ this.updateStatus(MCPServerStatus.CONNECTED);
110
+ }
111
+ catch (error) {
112
+ this.updateStatus(MCPServerStatus.DISCONNECTED);
113
+ throw error;
114
+ }
115
+ }
116
+ /**
117
+ * Discovers tools and prompts from the MCP server.
118
+ */
119
+ async discover() {
120
+ if (this.status !== MCPServerStatus.CONNECTED) {
121
+ throw new Error('Client is not connected.');
122
+ }
123
+ const prompts = await this.discoverPrompts();
124
+ const tools = await this.discoverTools();
125
+ if (prompts.length === 0 && tools.length === 0) {
126
+ throw new Error('No prompts or tools found on the server.');
127
+ }
128
+ for (const tool of tools) {
129
+ this.toolRegistry.registerTool(tool);
130
+ }
131
+ }
132
+ /**
133
+ * Disconnects from the MCP server.
134
+ */
135
+ async disconnect() {
136
+ this.isDisconnecting = true;
137
+ if (this.transport) {
138
+ await this.transport.close();
139
+ }
140
+ this.client.close();
141
+ this.updateStatus(MCPServerStatus.DISCONNECTED);
142
+ }
143
+ /**
144
+ * Returns the current status of the client.
145
+ */
146
+ getStatus() {
147
+ return this.status;
148
+ }
149
+ updateStatus(status) {
150
+ this.status = status;
151
+ updateMCPServerStatus(this.serverName, status);
152
+ }
153
+ async createTransport() {
154
+ return createTransport(this.serverName, this.serverConfig, this.debugMode);
155
+ }
156
+ async discoverTools() {
157
+ return discoverTools(this.serverName, this.serverConfig, this.client);
158
+ }
159
+ async discoverPrompts() {
160
+ return discoverPrompts(this.serverName, this.client, this.promptRegistry);
161
+ }
162
+ }
47
163
  /**
48
164
  * Map to track the status of each MCP server within the core package
49
165
  */
@@ -75,7 +191,7 @@ export function removeMCPStatusChangeListener(listener) {
75
191
  /**
76
192
  * Update the status of an MCP server
77
193
  */
78
- function updateMCPServerStatus(serverName, status) {
194
+ export function updateMCPServerStatus(serverName, status) {
79
195
  serverStatuses.set(serverName, status);
80
196
  // Notify all listeners
81
197
  for (const listener of statusChangeListeners) {
@@ -133,7 +249,7 @@ function extractWWWAuthenticateHeader(errorString) {
133
249
  */
134
250
  async function handleAutomaticOAuth(mcpServerName, mcpServerConfig, wwwAuthenticate) {
135
251
  try {
136
- console.log(`[AUTH] '${mcpServerName}' requires OAuth authentication`);
252
+ console.log(`🔐 '${mcpServerName}' requires OAuth authentication`);
137
253
  // Always try to parse the resource metadata URI from the www-authenticate header
138
254
  let oauthConfig;
139
255
  const resourceMetadataUri = OAuthUtils.parseWWWAuthenticateHeader(wwwAuthenticate);
@@ -165,8 +281,10 @@ async function handleAutomaticOAuth(mcpServerName, mcpServerConfig, wwwAuthentic
165
281
  scopes: oauthConfig.scopes || [],
166
282
  };
167
283
  // Perform OAuth authentication
284
+ // Pass the server URL for proper discovery
285
+ const serverUrl = mcpServerConfig.httpUrl || mcpServerConfig.url;
168
286
  console.log(`Starting OAuth authentication for server '${mcpServerName}'...`);
169
- await MCPOAuthProvider.authenticate(mcpServerName, oauthAuthConfig);
287
+ await MCPOAuthProvider.authenticate(mcpServerName, oauthAuthConfig, serverUrl);
170
288
  console.log(`OAuth authentication successful for server '${mcpServerName}'`);
171
289
  return true;
172
290
  }
@@ -402,6 +520,9 @@ export async function discoverTools(mcpServerName, mcpServerConfig, mcpClient) {
402
520
  */
403
521
  export async function discoverPrompts(mcpServerName, mcpClient, promptRegistry) {
404
522
  try {
523
+ // Only request prompts if the server supports them.
524
+ if (mcpClient.getServerCapabilities()?.prompts == null)
525
+ return [];
405
526
  const response = await mcpClient.request({ method: 'prompts/list', params: {} }, ListPromptsResultSchema);
406
527
  for (const prompt of response.prompts) {
407
528
  promptRegistry.registerPrompt({
@@ -466,7 +587,9 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
466
587
  version: '0.0.1',
467
588
  });
468
589
  mcpClient.registerCapabilities({
469
- roots: {},
590
+ roots: {
591
+ listChanged: true,
592
+ },
470
593
  });
471
594
  mcpClient.setRequestHandler(ListRootsRequestSchema, async () => {
472
595
  const roots = [];
@@ -480,6 +603,30 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
480
603
  roots,
481
604
  };
482
605
  });
606
+ let unlistenDirectories = workspaceContext.onDirectoriesChanged(async () => {
607
+ try {
608
+ await mcpClient.notification({
609
+ method: 'notifications/roots/list_changed',
610
+ });
611
+ }
612
+ catch (_) {
613
+ // If this fails, its almost certainly because the connection was closed
614
+ // and we should just stop listening for future directory changes.
615
+ unlistenDirectories?.();
616
+ unlistenDirectories = undefined;
617
+ }
618
+ });
619
+ // Attempt to pro-actively unsubscribe if the mcp client closes. This API is
620
+ // very brittle though so we don't have any guarantees, hence the try/catch
621
+ // above as well.
622
+ //
623
+ // Be a good steward and don't just bash over onclose.
624
+ const oldOnClose = mcpClient.onclose;
625
+ mcpClient.onclose = () => {
626
+ oldOnClose?.();
627
+ unlistenDirectories?.();
628
+ unlistenDirectories = undefined;
629
+ };
483
630
  // patch Client.callTool to use request timeout as genai McpCallTool.callTool does not do it
484
631
  // TODO: remove this hack once GenAI SDK does callTool with request options
485
632
  if ('callTool' in mcpClient) {
@@ -537,9 +684,7 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
537
684
  let wwwAuthenticate = extractWWWAuthenticateHeader(errorString);
538
685
  // If we didn't get the header from the error string, try to get it from the server
539
686
  if (!wwwAuthenticate && mcpServerConfig.url) {
540
- if (process.env.DEBUG) {
541
- console.log(`No www-authenticate header in error, trying to fetch it from server...`);
542
- }
687
+ console.log(`No www-authenticate header in error, trying to fetch it from server...`);
543
688
  try {
544
689
  const response = await fetch(mcpServerConfig.url, {
545
690
  method: 'HEAD',
@@ -551,9 +696,7 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
551
696
  if (response.status === 401) {
552
697
  wwwAuthenticate = response.headers.get('www-authenticate');
553
698
  if (wwwAuthenticate) {
554
- if (process.env.DEBUG) {
555
- console.log(`Found www-authenticate header from server: ${wwwAuthenticate}`);
556
- }
699
+ console.log(`Found www-authenticate header from server: ${wwwAuthenticate}`);
557
700
  }
558
701
  }
559
702
  }
@@ -562,16 +705,12 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
562
705
  }
563
706
  }
564
707
  if (wwwAuthenticate) {
565
- if (process.env.DEBUG) {
566
- console.log(`Received 401 with www-authenticate header: ${wwwAuthenticate}`);
567
- }
708
+ console.log(`Received 401 with www-authenticate header: ${wwwAuthenticate}`);
568
709
  // Try automatic OAuth discovery and authentication
569
710
  const oauthSuccess = await handleAutomaticOAuth(mcpServerName, mcpServerConfig, wwwAuthenticate);
570
711
  if (oauthSuccess) {
571
712
  // Retry connection with OAuth token
572
- if (process.env.DEBUG) {
573
- console.log(`Retrying connection to '${mcpServerName}' with OAuth token...`);
574
- }
713
+ console.log(`Retrying connection to '${mcpServerName}' with OAuth token...`);
575
714
  // Get the valid token - we need to create a proper OAuth config
576
715
  // The token should already be available from the authentication process
577
716
  const credentials = await MCPOAuthTokenStorage.getToken(mcpServerName);
@@ -641,9 +780,7 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
641
780
  `Please authenticate using: /mcp auth ${mcpServerName}`);
642
781
  }
643
782
  // For SSE servers, try to discover OAuth configuration from the base URL
644
- if (process.env.DEBUG) {
645
- console.log(`[DISCOVERY] Attempting OAuth discovery for '${mcpServerName}'...`);
646
- }
783
+ console.log(`🔍 Attempting OAuth discovery for '${mcpServerName}'...`);
647
784
  if (mcpServerConfig.url) {
648
785
  const sseUrl = new URL(mcpServerConfig.url);
649
786
  const baseUrl = `${sseUrl.protocol}//${sseUrl.host}`;
@@ -651,9 +788,7 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
651
788
  // Try to discover OAuth configuration from the base URL
652
789
  const oauthConfig = await OAuthUtils.discoverOAuthConfig(baseUrl);
653
790
  if (oauthConfig) {
654
- if (process.env.DEBUG) {
655
- console.log(`Discovered OAuth configuration from base URL for server '${mcpServerName}'`);
656
- }
791
+ console.log(`Discovered OAuth configuration from base URL for server '${mcpServerName}'`);
657
792
  // Create OAuth configuration for authentication
658
793
  const oauthAuthConfig = {
659
794
  enabled: true,
@@ -662,10 +797,10 @@ export async function connectToMcpServer(mcpServerName, mcpServerConfig, debugMo
662
797
  scopes: oauthConfig.scopes || [],
663
798
  };
664
799
  // Perform OAuth authentication
665
- if (process.env.DEBUG) {
666
- console.log(`Starting OAuth authentication for server '${mcpServerName}'...`);
667
- }
668
- await MCPOAuthProvider.authenticate(mcpServerName, oauthAuthConfig);
800
+ // Pass the server URL for proper discovery
801
+ const serverUrl = mcpServerConfig.httpUrl || mcpServerConfig.url;
802
+ console.log(`Starting OAuth authentication for server '${mcpServerName}'...`);
803
+ await MCPOAuthProvider.authenticate(mcpServerName, oauthAuthConfig, serverUrl);
669
804
  // Retry connection with OAuth token
670
805
  const credentials = await MCPOAuthTokenStorage.getToken(mcpServerName);
671
806
  if (credentials) {
@@ -777,9 +912,7 @@ export async function createTransport(mcpServerName, mcpServerConfig, debugMode)
777
912
  });
778
913
  if (accessToken) {
779
914
  hasOAuthConfig = true;
780
- if (process.env.DEBUG) {
781
- console.log(`Found stored OAuth token for server '${mcpServerName}'`);
782
- }
915
+ console.log(`Found stored OAuth token for server '${mcpServerName}'`);
783
916
  }
784
917
  }
785
918
  }
@@ -833,9 +966,7 @@ export async function createTransport(mcpServerName, mcpServerConfig, debugMode)
833
966
  if (debugMode) {
834
967
  transport.stderr.on('data', (data) => {
835
968
  const stderrStr = data.toString().trim();
836
- if (process.env.DEBUG) {
837
- console.debug(`[DEBUG] [MCP STDERR (${mcpServerName})]: `, stderrStr);
838
- }
969
+ console.debug(`[DEBUG] [MCP STDERR (${mcpServerName})]: `, stderrStr);
839
970
  });
840
971
  }
841
972
  return transport;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../../src/tools/mcp-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-client.js","sourceRoot":"","sources":["../../../src/tools/mcp-client.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ declare class MemoryToolInvocation extends BaseToolInvocation<SaveMemoryParams,
25
25
  export declare class MemoryTool extends BaseDeclarativeTool<SaveMemoryParams, ToolResult> implements ModifiableDeclarativeTool<SaveMemoryParams> {
26
26
  static readonly Name: string;
27
27
  constructor();
28
- validateToolParams(params: SaveMemoryParams): string | null;
28
+ protected validateToolParamValues(params: SaveMemoryParams): string | null;
29
29
  protected createInvocation(params: SaveMemoryParams): MemoryToolInvocation;
30
30
  static performAddMemoryEntry(text: string, memoryFilePath: string, fsAdapter: {
31
31
  readFile: (path: string, encoding: 'utf-8') => Promise<string>;
@@ -10,7 +10,6 @@ import { homedir } from 'os';
10
10
  import * as Diff from 'diff';
11
11
  import { DEFAULT_DIFF_OPTIONS } from './diffOptions.js';
12
12
  import { tildeifyPath } from '../utils/paths.js';
13
- import { SchemaValidator } from '../utils/schemaValidator.js';
14
13
  const memoryToolSchemaData = {
15
14
  name: 'save_memory',
16
15
  description: 'Saves a specific piece of information or fact to your long-term memory. Use this when the user explicitly asks you to remember something, or when they state a clear, concise fact that seems important to retain for future interactions.',
@@ -218,11 +217,7 @@ export class MemoryTool extends BaseDeclarativeTool {
218
217
  constructor() {
219
218
  super(MemoryTool.Name, 'Save Memory', memoryToolDescription, Kind.Think, memoryToolSchemaData.parametersJsonSchema);
220
219
  }
221
- validateToolParams(params) {
222
- const errors = SchemaValidator.validate(this.schema.parametersJsonSchema, params);
223
- if (errors) {
224
- return errors;
225
- }
220
+ validateToolParamValues(params) {
226
221
  if (params.fact.trim() === '') {
227
222
  return 'Parameter "fact" must be a non-empty string.';
228
223
  }
@@ -1 +1 @@
1
- {"version":3,"file":"memoryTool.js","sourceRoot":"","sources":["../../../src/tools/memoryTool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memoryTool.js","sourceRoot":"","sources":["../../../src/tools/memoryTool.ts"],"names":[],"mappings":"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"}
@@ -29,6 +29,6 @@ export declare class ReadFileTool extends BaseDeclarativeTool<ReadFileToolParams
29
29
  private config;
30
30
  static readonly Name: string;
31
31
  constructor(config: Config);
32
- protected validateToolParams(params: ReadFileToolParams): string | null;
32
+ protected validateToolParamValues(params: ReadFileToolParams): string | null;
33
33
  protected createInvocation(params: ReadFileToolParams): ToolInvocation<ReadFileToolParams, ToolResult>;
34
34
  }