@codingame/monaco-vscode-mcp-service-override 34.1.3 → 35.0.0

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 (34) hide show
  1. package/package.json +2 -2
  2. package/vscode/src/vs/platform/mcp/common/allowedMcpServersService.js +1 -1
  3. package/vscode/src/vs/platform/mcp/common/mcpGalleryService.js +2 -2
  4. package/vscode/src/vs/workbench/contrib/mcp/browser/mcp.contribution.js +6 -5
  5. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpAddContextContribution.js +2 -2
  6. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommands.d.ts +7 -0
  7. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpCommands.js +247 -73
  8. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpElicitationService.js +25 -25
  9. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpLanguageFeatures.js +23 -23
  10. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpMigration.js +4 -4
  11. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpResourceQuickAccess.js +8 -8
  12. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditor.js +37 -37
  13. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerEditorInput.js +2 -2
  14. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerIcons.js +5 -5
  15. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServerWidgets.js +5 -5
  16. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpServersView.js +17 -17
  17. package/vscode/src/vs/workbench/contrib/mcp/browser/mcpWorkbenchService.js +10 -10
  18. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/extensionMcpDiscovery.js +4 -4
  19. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/installedMcpServersDiscovery.js +2 -2
  20. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/nativeMcpDiscoveryAbstract.js +1 -1
  21. package/vscode/src/vs/workbench/contrib/mcp/common/mcpContextKeys.js +4 -4
  22. package/vscode/src/vs/workbench/contrib/mcp/common/mcpLanguageModelToolContribution.js +8 -6
  23. package/vscode/src/vs/workbench/contrib/mcp/common/mcpRegistry.js +13 -13
  24. package/vscode/src/vs/workbench/contrib/mcp/common/mcpSamplingLog.js +1 -1
  25. package/vscode/src/vs/workbench/contrib/mcp/common/mcpSamplingService.js +11 -11
  26. package/vscode/src/vs/workbench/contrib/mcp/common/mcpSandboxService.js +3 -3
  27. package/vscode/src/vs/workbench/contrib/mcp/common/mcpServerConnection.js +3 -3
  28. package/vscode/src/vs/workbench/contrib/mcp/common/mcpService.d.ts +4 -9
  29. package/vscode/src/vs/workbench/contrib/mcp/common/mcpService.js +5 -48
  30. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpAccessService.d.ts +12 -0
  31. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpAccessService.js +3 -0
  32. package/vscode/src/vs/workbench/services/authentication/browser/authenticationMcpService.js +9 -9
  33. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/pluginMcpDiscovery.d.ts +0 -15
  34. package/vscode/src/vs/workbench/contrib/mcp/common/discovery/pluginMcpDiscovery.js +0 -118
@@ -15,7 +15,7 @@ import { createMarkdownCommandLink, MarkdownString } from '@codingame/monaco-vsc
15
15
  import { DisposableStore, Disposable, toDisposable } from '@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle';
16
16
  import '@codingame/monaco-vscode-api/vscode/vs/base/common/observableInternal/index';
17
17
  import { ThemeIcon } from '@codingame/monaco-vscode-api/vscode/vs/base/common/themables';
18
- import { isDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
18
+ import { hasKey, isDefined } from '@codingame/monaco-vscode-api/vscode/vs/base/common/types';
19
19
  import { URI } from '@codingame/monaco-vscode-api/vscode/vs/base/common/uri';
20
20
  import { Range } from '@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range';
21
21
  import { SuggestController } from '@codingame/monaco-vscode-api/vscode/vs/editor/contrib/suggest/browser/suggestController';
@@ -41,12 +41,20 @@ import { IAuthenticationService } from '@codingame/monaco-vscode-api/vscode/vs/w
41
41
  import { IAuthenticationQueryService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/authentication/common/authenticationQuery.service';
42
42
  import { WORKSPACE_STANDALONE_CONFIGURATIONS, MCP_CONFIGURATION_KEY } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/configuration/common/configuration';
43
43
  import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
44
+ import { IOutputService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/output/common/output.service';
44
45
  import { IRemoteUserDataProfilesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/remoteUserDataProfiles.service';
45
46
  import { IUserDataProfileService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/userDataProfile/common/userDataProfile.service';
46
47
  import { IViewsService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/views/common/viewsService.service';
48
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-root/state';
49
+ import { McpServerStatus } from '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-session/state';
50
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-chat/state';
51
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-terminal/state';
52
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-changeset/state';
53
+ import '@codingame/monaco-vscode-api/vscode/vs/platform/agentHost/common/state/protocol/channels-resource-watch/state';
47
54
  import { CHAT_CONFIG_MENU_ID } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/actions/chatActions';
48
55
  import { ChatViewId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat';
49
56
  import { IChatWidgetService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/chat.service';
57
+ import { IAgentHostCustomizationService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/browser/agentSessions/agentHost/agentHostCustomizationService.service';
50
58
  import { ChatContextKeys } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/actions/chatContextKeys';
51
59
  import { ChatModeKind, ChatAgentLocation } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/constants';
52
60
  import { isContributionDisabled, ContributionEnablementState } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/chat/common/enablement';
@@ -79,7 +87,7 @@ class ListMcpServerCommand extends Action2 {
79
87
  constructor() {
80
88
  super({
81
89
  id: McpCommandIds.ListServer,
82
- title: ( localize2(11148, "List Servers")),
90
+ title: ( localize2(11764, "List Servers")),
83
91
  icon: Codicon.server,
84
92
  category,
85
93
  f1: true,
@@ -93,14 +101,44 @@ class ListMcpServerCommand extends Action2 {
93
101
  });
94
102
  }
95
103
  async run(accessor) {
96
- const mcpService = accessor.get(IMcpService);
97
- const commandService = accessor.get(ICommandService);
98
- const quickInput = accessor.get(IQuickInputService);
104
+ const services = {
105
+ chatWidgetService: accessor.get(IChatWidgetService),
106
+ agentHostCustomizations: accessor.get(IAgentHostCustomizationService),
107
+ mcpService: accessor.get(IMcpService),
108
+ commandService: accessor.get(ICommandService),
109
+ quickInput: accessor.get(IQuickInputService)
110
+ };
111
+ return this._runWithMode(services, undefined);
112
+ }
113
+ async _runWithMode(services, initialMode) {
114
+ let mode = initialMode;
115
+ if (mode === undefined) {
116
+ const sessionResource = services.chatWidgetService.lastFocusedWidget?.viewModel?.sessionResource;
117
+ const hasAgentHostMcp = sessionResource && services.agentHostCustomizations.getMcpServers(sessionResource).length > 0;
118
+ mode = hasAgentHostMcp ? {
119
+ agentHostSession: sessionResource
120
+ } : "local";
121
+ }
122
+ if (mode === "local") {
123
+ await this._runLocal(services);
124
+ return;
125
+ }
126
+ const nextMode = await this._runAgentHost(services, mode.agentHostSession);
127
+ if (nextMode === "local") {
128
+ await this._runWithMode(services, "local");
129
+ }
130
+ }
131
+ async _runLocal(services) {
132
+ const {
133
+ mcpService,
134
+ commandService,
135
+ quickInput
136
+ } = services;
99
137
  const store = ( new DisposableStore());
100
138
  const pick = quickInput.createQuickPick({
101
139
  useSeparators: true
102
140
  });
103
- pick.placeholder = ( localize(11149, "Select an MCP Server"));
141
+ pick.placeholder = ( localize(11765, "Select an MCP Server"));
104
142
  mcpService.activateCollections();
105
143
  store.add(pick);
106
144
  store.add(autorun(reader => {
@@ -111,8 +149,8 @@ class ListMcpServerCommand extends Action2 {
111
149
  const firstRun = pick.items.length === 0;
112
150
  pick.items = [{
113
151
  id: "$add",
114
- label: ( localize(11150, "Add Server")),
115
- description: ( localize(11151, "Add a new server configuration")),
152
+ label: ( localize(11766, "Add Server")),
153
+ description: ( localize(11767, "Add a new server configuration")),
116
154
  alwaysShow: true,
117
155
  iconClass: ThemeIcon.asClassName(Codicon.add)
118
156
  }, ...( Object.values(servers)).filter(s => s.length).flatMap(servers => [{
@@ -124,7 +162,7 @@ class ListMcpServerCommand extends Action2 {
124
162
  return {
125
163
  id: server.definition.id,
126
164
  label: server.definition.label,
127
- description: disabled ? ( localize(11152, "Disabled")) : ( McpConnectionState.toString(server.connectionState.read(reader)))
165
+ description: disabled ? ( localize(11768, "Disabled")) : ( McpConnectionState.toString(server.connectionState.read(reader)))
128
166
  };
129
167
  }))])];
130
168
  if (firstRun && pick.items.length > 3) {
@@ -148,12 +186,148 @@ class ListMcpServerCommand extends Action2 {
148
186
  commandService.executeCommand(McpCommandIds.ServerOptions, picked.id);
149
187
  }
150
188
  }
189
+ async _runAgentHost(services, agentHostSession) {
190
+ const {
191
+ agentHostCustomizations,
192
+ commandService,
193
+ quickInput
194
+ } = services;
195
+ const BACK_ID = "$back";
196
+ const store = ( new DisposableStore());
197
+ const pick = quickInput.createQuickPick({
198
+ useSeparators: true
199
+ });
200
+ pick.placeholder = ( localize(11769, "Select an MCP Server for this session"));
201
+ store.add(pick);
202
+ const refresh = () => {
203
+ const firstRun = pick.items.length === 0;
204
+ const servers = agentHostCustomizations.getMcpServers(agentHostSession);
205
+ pick.items = [...(servers.length === 0 ? [{
206
+ id: "$empty",
207
+ label: ( localize(11770, "No MCP servers")),
208
+ description: ( localize(11771, "This session does not expose any MCP servers")),
209
+ alwaysShow: true
210
+ }] : ( servers.map(server => ({
211
+ id: server.id,
212
+ label: server.name,
213
+ description: server.enabled ? mcpServerStatusToLabel(server.status) : ( localize(11768, "Disabled"))
214
+ })))), {
215
+ type: "separator"
216
+ }, {
217
+ id: BACK_ID,
218
+ label: ( localize(11772, "Show locally configured servers...")),
219
+ iconClass: ThemeIcon.asClassName(Codicon.arrowLeft),
220
+ alwaysShow: true
221
+ }];
222
+ if (firstRun && servers.length > 0) {
223
+ pick.activeItems = [pick.items[0]];
224
+ }
225
+ };
226
+ refresh();
227
+ store.add(agentHostCustomizations.onDidChangeCustomizations(() => refresh()));
228
+ const picked = await ( new Promise(resolve => {
229
+ store.add(pick.onDidAccept(() => {
230
+ resolve(pick.activeItems[0]);
231
+ }));
232
+ store.add(pick.onDidHide(() => {
233
+ resolve(undefined);
234
+ }));
235
+ pick.show();
236
+ }));
237
+ store.dispose();
238
+ if (!picked || picked.id === "$empty") {
239
+ return undefined;
240
+ }
241
+ if (picked.id === BACK_ID) {
242
+ return "local";
243
+ }
244
+ await commandService.executeCommand(McpCommandIds.AgentHostServerOptions, agentHostSession, picked.id);
245
+ return undefined;
246
+ }
247
+ }
248
+ function mcpServerStatusToLabel(status) {
249
+ switch (status) {
250
+ case McpServerStatus.Starting:
251
+ return localize(11773, "Starting");
252
+ case McpServerStatus.Ready:
253
+ return localize(11774, "Running");
254
+ case McpServerStatus.AuthRequired:
255
+ return localize(11775, "Authentication required");
256
+ case McpServerStatus.Error:
257
+ return localize(11776, "Error");
258
+ case McpServerStatus.Stopped:
259
+ return localize(11777, "Stopped");
260
+ default:
261
+ return "";
262
+ }
263
+ }
264
+ class McpAgentHostServerOptionsCommand extends Action2 {
265
+ constructor() {
266
+ super({
267
+ id: McpCommandIds.AgentHostServerOptions,
268
+ title: ( localize2(11778, "Agent Host Server Options")),
269
+ category,
270
+ f1: false
271
+ });
272
+ }
273
+ async run(accessor, agentHostSession, customizationId) {
274
+ const agentHostCustomizations = accessor.get(IAgentHostCustomizationService);
275
+ const quickInputService = accessor.get(IQuickInputService);
276
+ const outputService = accessor.get(IOutputService);
277
+ const server = agentHostCustomizations.getMcpServers(agentHostSession).find(s => s.id === customizationId);
278
+ if (!server) {
279
+ return;
280
+ }
281
+ const logOutputChannelId = server.logOutputChannelId;
282
+ const items = [{
283
+ type: "separator",
284
+ label: ( localize(11779, "Status"))
285
+ }, {
286
+ label: server.enabled ? ( localize(11780, "Disable Server")) : ( localize(11781, "Enable Server")),
287
+ description: server.enabled ? mcpServerStatusToLabel(server.status) : ( localize(11768, "Disabled")),
288
+ action: "toggle"
289
+ }];
290
+ if (server.state.kind === McpServerStatus.AuthRequired) {
291
+ items.push({
292
+ label: ( localize(11782, "Authenticate")),
293
+ description: server.state.resource.resource,
294
+ action: "authenticate"
295
+ });
296
+ }
297
+ if (logOutputChannelId) {
298
+ items.push({
299
+ label: ( localize(11783, "Show Output")),
300
+ action: "showOutput"
301
+ });
302
+ }
303
+ const picked = await quickInputService.pick(items, {
304
+ placeHolder: server.name
305
+ });
306
+ if (!picked || !hasKey(picked, {
307
+ action: true
308
+ })) {
309
+ return;
310
+ }
311
+ if (picked.action === "showOutput") {
312
+ if (logOutputChannelId) {
313
+ await outputService.showChannel(logOutputChannelId);
314
+ }
315
+ return;
316
+ }
317
+ if (picked.action === "authenticate") {
318
+ await agentHostCustomizations.authenticateMcpServer(agentHostSession, server.id);
319
+ return;
320
+ }
321
+ if (picked.action === "toggle") {
322
+ server.setEnabled(!server.enabled);
323
+ }
324
+ }
151
325
  }
152
326
  class McpConfirmationServerOptionsCommand extends Action2 {
153
327
  constructor() {
154
328
  super({
155
329
  id: McpCommandIds.ServerOptionsInConfirmation,
156
- title: ( localize2(11153, "Server Options")),
330
+ title: ( localize2(11784, "Server Options")),
157
331
  category,
158
332
  icon: Codicon.settingsGear,
159
333
  f1: false,
@@ -184,7 +358,7 @@ class McpServerOptionsCommand extends Action2 {
184
358
  constructor() {
185
359
  super({
186
360
  id: McpCommandIds.ServerOptions,
187
- title: ( localize2(11153, "Server Options")),
361
+ title: ( localize2(11784, "Server Options")),
188
362
  category,
189
363
  f1: false
190
364
  });
@@ -209,25 +383,25 @@ class McpServerOptionsCommand extends Action2 {
209
383
  const disabled = isContributionDisabled(server.enablement.get());
210
384
  items.push({
211
385
  type: "separator",
212
- label: ( localize(11154, "Status"))
386
+ label: ( localize(11779, "Status"))
213
387
  });
214
388
  if (disabled) {
215
389
  items.push({
216
- label: ( localize(11155, "Enable Server (Workspace)")),
390
+ label: ( localize(11785, "Enable Server (Workspace)")),
217
391
  action: "enable"
218
392
  });
219
393
  } else if (McpConnectionState.canBeStarted(serverState.state)) {
220
394
  items.push({
221
- label: ( localize(11156, "Start Server")),
395
+ label: ( localize(11786, "Start Server")),
222
396
  action: "start"
223
397
  });
224
398
  } else {
225
399
  items.push({
226
- label: ( localize(11157, "Stop Server")),
400
+ label: ( localize(11787, "Stop Server")),
227
401
  action: "stop"
228
402
  });
229
403
  items.push({
230
- label: ( localize(11158, "Restart Server")),
404
+ label: ( localize(11788, "Restart Server")),
231
405
  action: "restart"
232
406
  });
233
407
  }
@@ -235,26 +409,26 @@ class McpServerOptionsCommand extends Action2 {
235
409
  const configTarget = serverDefinition?.presentation?.origin || collection?.presentation?.origin;
236
410
  if (configTarget) {
237
411
  items.push({
238
- label: ( localize(11159, "Show Configuration")),
412
+ label: ( localize(11789, "Show Configuration")),
239
413
  action: "config"
240
414
  });
241
415
  }
242
416
  items.push({
243
- label: ( localize(11160, "Show Output")),
417
+ label: ( localize(11783, "Show Output")),
244
418
  action: "showOutput"
245
419
  });
246
420
  items.push({
247
421
  type: "separator",
248
- label: ( localize(11161, "Sampling"))
422
+ label: ( localize(11790, "Sampling"))
249
423
  }, {
250
- label: ( localize(11162, "Configure Model Access")),
251
- description: ( localize(11163, "Set the models the server can use via MCP sampling")),
424
+ label: ( localize(11791, "Configure Model Access")),
425
+ description: ( localize(11792, "Set the models the server can use via MCP sampling")),
252
426
  action: "configSampling"
253
427
  });
254
428
  if (samplingService.hasLogs(server)) {
255
429
  items.push({
256
- label: ( localize(11164, "Show Sampling Requests")),
257
- description: ( localize(11165, "Show the sampling requests for this server")),
430
+ label: ( localize(11793, "Show Sampling Requests")),
431
+ description: ( localize(11794, "Show the sampling requests for this server")),
258
432
  action: "samplingLog"
259
433
  });
260
434
  }
@@ -262,15 +436,15 @@ class McpServerOptionsCommand extends Action2 {
262
436
  if (capabilities === undefined || (capabilities & McpCapability.Resources)) {
263
437
  items.push({
264
438
  type: "separator",
265
- label: ( localize(11166, "Resources"))
439
+ label: ( localize(11795, "Resources"))
266
440
  });
267
441
  items.push({
268
- label: ( localize(11167, "Browse Resources")),
442
+ label: ( localize(11796, "Browse Resources")),
269
443
  action: "resources"
270
444
  });
271
445
  }
272
446
  const pick = await quickInputService.pick(items, {
273
- placeHolder: ( localize(11168, "Select action for '{0}'", server.definition.label))
447
+ placeHolder: ( localize(11797, "Select action for '{0}'", server.definition.label))
274
448
  });
275
449
  if (!pick) {
276
450
  return;
@@ -321,7 +495,7 @@ class McpServerOptionsCommand extends Action2 {
321
495
  editorService.openEditor({
322
496
  resource: undefined,
323
497
  contents: samplingService.getLogText(server),
324
- label: ( localize(11169, "MCP Sampling: {0}", server.definition.label))
498
+ label: ( localize(11798, "MCP Sampling: {0}", server.definition.label))
325
499
  });
326
500
  break;
327
501
  default:
@@ -338,14 +512,14 @@ class McpServerOptionsCommand extends Action2 {
338
512
  if (accountQuery.entities().getEntityCount().total > 1) {
339
513
  result.push({
340
514
  action: "disconnect",
341
- label: ( localize(11170, "Disconnect Account")),
515
+ label: ( localize(11799, "Disconnect Account")),
342
516
  description: `(${accountName})`,
343
517
  accountQuery
344
518
  });
345
519
  } else {
346
520
  result.push({
347
521
  action: "signout",
348
- label: ( localize(11171, "Sign Out")),
522
+ label: ( localize(11800, "Sign Out")),
349
523
  description: `(${accountName})`,
350
524
  accountQuery
351
525
  });
@@ -514,24 +688,24 @@ let MCPServerActionRendering = class MCPServerActionRendering extends Disposable
514
688
  text: s.definition.label,
515
689
  id: McpCommandIds.ServerOptions,
516
690
  arguments: [s.definition.id],
517
- tooltip: ( localize(11172, "Show server options for {0}", s.definition.label))
691
+ tooltip: ( localize(11801, "Show server options for {0}", s.definition.label))
518
692
  });
519
693
  const single = servers.length === 1;
520
694
  const names = ( ( servers.map(s => isServer(s) ? link(s) : "`" + s.label + "`")).map(l => single ? l : `- ${l}`)).join("\n");
521
695
  let markdown;
522
696
  if (state === DisplayedState.NewTools) {
523
697
  markdown = ( new MarkdownString(single ? ( localize(
524
- 11173,
698
+ 11802,
525
699
  "MCP server {0} has been updated and may have new tools available.",
526
700
  names
527
701
  )) : ( localize(
528
- 11174,
702
+ 11803,
529
703
  "MCP servers have been updated and may have new tools available:\n\n{0}",
530
704
  names
531
705
  ))));
532
706
  } else if (state === DisplayedState.Error) {
533
- markdown = ( new MarkdownString(single ? ( localize(11175, "MCP server {0} was unable to start successfully.", names)) : ( localize(
534
- 11176,
707
+ markdown = ( new MarkdownString(single ? ( localize(11804, "MCP server {0} was unable to start successfully.", names)) : ( localize(
708
+ 11805,
535
709
  "Multiple MCP servers were unable to start successfully:\n\n{0}",
536
710
  names
537
711
  ))));
@@ -558,7 +732,7 @@ let MCPServerActionRendering = class MCPServerActionRendering extends Disposable
558
732
  const divider = $("hr.mcp-hover-divider");
559
733
  container.appendChild(divider);
560
734
  const checkboxContainer = $("div.mcp-hover-setting");
561
- const settingLabelStr = ( localize(11177, "Automatically start MCP servers when sending a chat message"));
735
+ const settingLabelStr = ( localize(11806, "Automatically start MCP servers when sending a chat message"));
562
736
  const checkbox = store.add(( new Checkbox(settingLabelStr, config.get() !== McpAutoStartValue.Never, {
563
737
  ...defaultCheckboxStyles
564
738
  })));
@@ -586,11 +760,11 @@ let MCPServerActionRendering = class MCPServerActionRendering extends Disposable
586
760
  } = displayedStateCurrent.get()
587
761
  ) {
588
762
  if (state === DisplayedState.NewTools) {
589
- return localize(11178, "New tools available ({0})", servers.length || 1);
763
+ return localize(11807, "New tools available ({0})", servers.length || 1);
590
764
  } else if (state === DisplayedState.Error) {
591
- return localize(11179, "Error loading {0} tool(s)", servers.length || 1);
765
+ return localize(11808, "Error loading {0} tool(s)", servers.length || 1);
592
766
  } else if (state === DisplayedState.Refreshing) {
593
- return localize(11180, "Discovering tools...");
767
+ return localize(11809, "Discovering tools...");
594
768
  } else {
595
769
  return null;
596
770
  }
@@ -608,7 +782,7 @@ class ResetMcpTrustCommand extends Action2 {
608
782
  constructor() {
609
783
  super({
610
784
  id: McpCommandIds.ResetTrust,
611
- title: ( localize2(11181, "Reset Trust")),
785
+ title: ( localize2(11810, "Reset Trust")),
612
786
  category,
613
787
  f1: true,
614
788
  precondition: ( ContextKeyExpr.and(McpContextKeys.toolsCount.greater(0), ( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate())))
@@ -623,7 +797,7 @@ class ResetMcpCachedTools extends Action2 {
623
797
  constructor() {
624
798
  super({
625
799
  id: McpCommandIds.ResetCachedTools,
626
- title: ( localize2(11182, "Reset Cached Tools")),
800
+ title: ( localize2(11811, "Reset Cached Tools")),
627
801
  category,
628
802
  f1: true,
629
803
  precondition: ( ContextKeyExpr.and(McpContextKeys.toolsCount.greater(0), ( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate())))
@@ -638,9 +812,9 @@ class AddConfigurationAction extends Action2 {
638
812
  constructor() {
639
813
  super({
640
814
  id: McpCommandIds.AddConfiguration,
641
- title: ( localize2(11183, "Add Server...")),
815
+ title: ( localize2(11812, "Add Server...")),
642
816
  metadata: {
643
- description: ( localize2(11184, "Installs a new Model Context protocol to the mcp.json settings"))
817
+ description: ( localize2(11813, "Installs a new Model Context protocol to the mcp.json settings"))
644
818
  },
645
819
  category,
646
820
  f1: true,
@@ -662,9 +836,9 @@ class InstallFromManifestAction extends Action2 {
662
836
  constructor() {
663
837
  super({
664
838
  id: McpCommandIds.InstallFromManifest,
665
- title: ( localize2(11185, "Install Server from Manifest...")),
839
+ title: ( localize2(11814, "Install Server from Manifest...")),
666
840
  metadata: {
667
- description: ( localize2(11186, "Install an MCP server from a JSON manifest file"))
841
+ description: ( localize2(11815, "Install an MCP server from a JSON manifest file"))
668
842
  },
669
843
  category,
670
844
  f1: true,
@@ -680,7 +854,7 @@ class RemoveStoredInput extends Action2 {
680
854
  constructor() {
681
855
  super({
682
856
  id: McpCommandIds.RemoveStoredInput,
683
- title: ( localize2(11182, "Reset Cached Tools")),
857
+ title: ( localize2(11811, "Reset Cached Tools")),
684
858
  category,
685
859
  f1: false
686
860
  });
@@ -693,7 +867,7 @@ class EditStoredInput extends Action2 {
693
867
  constructor() {
694
868
  super({
695
869
  id: McpCommandIds.EditStoredInput,
696
- title: ( localize2(11187, "Edit Stored Input")),
870
+ title: ( localize2(11816, "Edit Stored Input")),
697
871
  category,
698
872
  f1: false
699
873
  });
@@ -707,7 +881,7 @@ class SetOAuthClientSecret extends Action2 {
707
881
  constructor() {
708
882
  super({
709
883
  id: McpCommandIds.SetOAuthClientSecret,
710
- title: ( localize2(11188, "Set OAuth Client Secret")),
884
+ title: ( localize2(11817, "Set OAuth Client Secret")),
711
885
  category,
712
886
  f1: false
713
887
  });
@@ -719,21 +893,21 @@ class SetOAuthClientSecret extends Action2 {
719
893
  const existing = await secretStorageService.get(key);
720
894
  const deleteButton = {
721
895
  iconClass: ThemeIcon.asClassName(Codicon.trash),
722
- tooltip: ( localize(11189, "Delete stored client secret"))
896
+ tooltip: ( localize(11818, "Delete stored client secret"))
723
897
  };
724
898
  const revealButton = {
725
899
  iconClass: ThemeIcon.asClassName(Codicon.eye),
726
- tooltip: ( localize(11190, "Show client secret"))
900
+ tooltip: ( localize(11819, "Show client secret"))
727
901
  };
728
902
  const hideButton = {
729
903
  iconClass: ThemeIcon.asClassName(Codicon.eyeClosed),
730
- tooltip: ( localize(11191, "Hide client secret"))
904
+ tooltip: ( localize(11820, "Hide client secret"))
731
905
  };
732
906
  const result = await ( new Promise(resolve => {
733
907
  const input = quickInputService.createInputBox();
734
- input.title = existing ? ( localize(11192, "Replace Client Secret for {0}", serverName)) : ( localize(11193, "Set Client Secret for {0}", serverName));
735
- input.prompt = ( localize(11194, "Enter the client secret for OAuth client '{0}'.", clientId));
736
- input.placeholder = existing ? ( localize(11195, "Enter a new client secret to replace the stored value")) : ( localize(11196, "Enter client secret"));
908
+ input.title = existing ? ( localize(11821, "Replace Client Secret for {0}", serverName)) : ( localize(11822, "Set Client Secret for {0}", serverName));
909
+ input.prompt = ( localize(11823, "Enter the client secret for OAuth client '{0}'.", clientId));
910
+ input.placeholder = existing ? ( localize(11824, "Enter a new client secret to replace the stored value")) : ( localize(11825, "Enter client secret"));
737
911
  input.password = true;
738
912
  input.ignoreFocusOut = true;
739
913
  if (existing) {
@@ -793,7 +967,7 @@ class ShowConfiguration extends Action2 {
793
967
  constructor() {
794
968
  super({
795
969
  id: McpCommandIds.ShowConfiguration,
796
- title: ( localize2(11197, "Show Configuration")),
970
+ title: ( localize2(11826, "Show Configuration")),
797
971
  category,
798
972
  f1: false
799
973
  });
@@ -823,7 +997,7 @@ class ShowOutput extends Action2 {
823
997
  constructor() {
824
998
  super({
825
999
  id: McpCommandIds.ShowOutput,
826
- title: ( localize2(11198, "Show Output")),
1000
+ title: ( localize2(11827, "Show Output")),
827
1001
  category,
828
1002
  f1: false
829
1003
  });
@@ -836,7 +1010,7 @@ class RestartServer extends Action2 {
836
1010
  constructor() {
837
1011
  super({
838
1012
  id: McpCommandIds.RestartServer,
839
- title: ( localize2(11199, "Restart Server")),
1013
+ title: ( localize2(11828, "Restart Server")),
840
1014
  category,
841
1015
  f1: false
842
1016
  });
@@ -855,7 +1029,7 @@ class StartServer extends Action2 {
855
1029
  constructor() {
856
1030
  super({
857
1031
  id: McpCommandIds.StartServer,
858
- title: ( localize2(11200, "Start Server")),
1032
+ title: ( localize2(11829, "Start Server")),
859
1033
  category,
860
1034
  f1: false
861
1035
  });
@@ -880,7 +1054,7 @@ class StopServer extends Action2 {
880
1054
  constructor() {
881
1055
  super({
882
1056
  id: McpCommandIds.StopServer,
883
- title: ( localize2(11201, "Stop Server")),
1057
+ title: ( localize2(11830, "Stop Server")),
884
1058
  category,
885
1059
  f1: false
886
1060
  });
@@ -894,8 +1068,8 @@ class McpBrowseCommand extends Action2 {
894
1068
  constructor() {
895
1069
  super({
896
1070
  id: McpCommandIds.Browse,
897
- title: ( localize2(11202, "MCP Servers")),
898
- tooltip: ( localize2(11203, "Browse MCP Servers")),
1071
+ title: ( localize2(11831, "MCP Servers")),
1072
+ tooltip: ( localize2(11832, "Browse MCP Servers")),
899
1073
  category,
900
1074
  icon: Codicon.search,
901
1075
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate()))),
@@ -918,7 +1092,7 @@ class McpBrowseCommand extends Action2 {
918
1092
  MenuRegistry.appendMenuItem(MenuId.CommandPalette, {
919
1093
  command: {
920
1094
  id: McpCommandIds.Browse,
921
- title: ( localize2(11204, "Browse MCP Servers")),
1095
+ title: ( localize2(11833, "Browse MCP Servers")),
922
1096
  category,
923
1097
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate())))
924
1098
  }
@@ -927,7 +1101,7 @@ class ShowInstalledMcpServersCommand extends Action2 {
927
1101
  constructor() {
928
1102
  super({
929
1103
  id: McpCommandIds.ShowInstalled,
930
- title: ( localize2(11205, "Show Installed Servers")),
1104
+ title: ( localize2(11834, "Show Installed Servers")),
931
1105
  category,
932
1106
  precondition: ( ContextKeyExpr.and(HasInstalledMcpServersContext, ( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate()))),
933
1107
  f1: true
@@ -945,7 +1119,7 @@ class ShowInstalledMcpServersCommand extends Action2 {
945
1119
  MenuRegistry.appendMenuItem(CHAT_CONFIG_MENU_ID, {
946
1120
  command: {
947
1121
  id: McpCommandIds.ShowInstalled,
948
- title: ( localize2(11206, "MCP Servers"))
1122
+ title: ( localize2(11835, "MCP Servers"))
949
1123
  },
950
1124
  when: ( ContextKeyExpr.and(ChatContextKeys.enabled, ( ContextKeyExpr.equals("view", ChatViewId)))),
951
1125
  order: 10,
@@ -970,7 +1144,7 @@ class OpenUserMcpResourceCommand extends OpenMcpResourceCommand {
970
1144
  constructor() {
971
1145
  super({
972
1146
  id: McpCommandIds.OpenUserMcp,
973
- title: ( localize2(11207, "Open User Configuration")),
1147
+ title: ( localize2(11836, "Open User Configuration")),
974
1148
  category,
975
1149
  f1: true,
976
1150
  precondition: ( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate())))
@@ -985,7 +1159,7 @@ class OpenRemoteUserMcpResourceCommand extends OpenMcpResourceCommand {
985
1159
  constructor() {
986
1160
  super({
987
1161
  id: McpCommandIds.OpenRemoteUserMcp,
988
- title: ( localize2(11208, "Open Remote User Configuration")),
1162
+ title: ( localize2(11837, "Open Remote User Configuration")),
989
1163
  category,
990
1164
  f1: true,
991
1165
  precondition: ( ContextKeyExpr.and(( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate()))), ( RemoteNameContext.notEqualsTo(""))))
@@ -1002,7 +1176,7 @@ class OpenWorkspaceFolderMcpResourceCommand extends Action2 {
1002
1176
  constructor() {
1003
1177
  super({
1004
1178
  id: McpCommandIds.OpenWorkspaceFolderMcp,
1005
- title: ( localize2(11209, "Open Workspace Folder MCP Configuration")),
1179
+ title: ( localize2(11838, "Open Workspace Folder MCP Configuration")),
1006
1180
  category,
1007
1181
  f1: true,
1008
1182
  precondition: ( ContextKeyExpr.and(( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate()))), ( WorkspaceFolderCountContext.notEqualsTo(0))))
@@ -1025,7 +1199,7 @@ class OpenWorkspaceMcpResourceCommand extends Action2 {
1025
1199
  constructor() {
1026
1200
  super({
1027
1201
  id: McpCommandIds.OpenWorkspaceMcp,
1028
- title: ( localize2(11210, "Open Workspace MCP Configuration")),
1202
+ title: ( localize2(11839, "Open Workspace MCP Configuration")),
1029
1203
  category,
1030
1204
  f1: true,
1031
1205
  precondition: ( ContextKeyExpr.and(( ContextKeyExpr.and(( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate()))), ( WorkbenchStateContext.isEqualTo("workspace"))))
@@ -1046,7 +1220,7 @@ class McpBrowseResourcesCommand extends Action2 {
1046
1220
  constructor() {
1047
1221
  super({
1048
1222
  id: McpCommandIds.BrowseResources,
1049
- title: ( localize2(11211, "Browse Resources...")),
1223
+ title: ( localize2(11840, "Browse Resources...")),
1050
1224
  category,
1051
1225
  precondition: ( ContextKeyExpr.and(McpContextKeys.serverCount.greater(0), ( ChatContextKeys.Setup.hidden.negate()), ( ChatContextKeys.Setup.disabledInWorkspace.negate()))),
1052
1226
  f1: true
@@ -1064,7 +1238,7 @@ class McpConfigureSamplingModels extends Action2 {
1064
1238
  constructor() {
1065
1239
  super({
1066
1240
  id: McpCommandIds.ConfigureSamplingModels,
1067
- title: ( localize2(11212, "Configure SamplingModel")),
1241
+ title: ( localize2(11841, "Configure SamplingModel")),
1068
1242
  category
1069
1243
  });
1070
1244
  }
@@ -1090,7 +1264,7 @@ class McpConfigureSamplingModels extends Action2 {
1090
1264
  );
1091
1265
  const picked = await quickInputService.pick(allItems, {
1092
1266
  placeHolder: ( localize(
1093
- 11213,
1267
+ 11842,
1094
1268
  "Pick the models {0} can access via MCP sampling",
1095
1269
  server.definition.label
1096
1270
  )),
@@ -1106,7 +1280,7 @@ class McpStartPromptingServerCommand extends Action2 {
1106
1280
  constructor() {
1107
1281
  super({
1108
1282
  id: McpCommandIds.StartPromptForServer,
1109
- title: ( localize2(11214, "Start Prompting Server")),
1283
+ title: ( localize2(11843, "Start Prompting Server")),
1110
1284
  category,
1111
1285
  f1: false
1112
1286
  });
@@ -1136,7 +1310,7 @@ class McpSkipCurrentAutostartCommand extends Action2 {
1136
1310
  constructor() {
1137
1311
  super({
1138
1312
  id: McpCommandIds.SkipCurrentAutostart,
1139
- title: ( localize2(11215, "Skip Current Autostart")),
1313
+ title: ( localize2(11844, "Skip Current Autostart")),
1140
1314
  category,
1141
1315
  f1: false
1142
1316
  });
@@ -1146,4 +1320,4 @@ class McpSkipCurrentAutostartCommand extends Action2 {
1146
1320
  }
1147
1321
  }
1148
1322
 
1149
- export { AddConfigurationAction, EditStoredInput, InstallFromManifestAction, ListMcpServerCommand, MCPServerActionRendering, McpBrowseCommand, McpBrowseResourcesCommand, McpConfigureSamplingModels, McpConfirmationServerOptionsCommand, McpServerOptionsCommand, McpSkipCurrentAutostartCommand, McpStartPromptingServerCommand, OpenRemoteUserMcpResourceCommand, OpenUserMcpResourceCommand, OpenWorkspaceFolderMcpResourceCommand, OpenWorkspaceMcpResourceCommand, RemoveStoredInput, ResetMcpCachedTools, ResetMcpTrustCommand, RestartServer, SetOAuthClientSecret, ShowConfiguration, ShowInstalledMcpServersCommand, ShowOutput, StartServer, StopServer };
1323
+ export { AddConfigurationAction, EditStoredInput, InstallFromManifestAction, ListMcpServerCommand, MCPServerActionRendering, McpAgentHostServerOptionsCommand, McpBrowseCommand, McpBrowseResourcesCommand, McpConfigureSamplingModels, McpConfirmationServerOptionsCommand, McpServerOptionsCommand, McpSkipCurrentAutostartCommand, McpStartPromptingServerCommand, OpenRemoteUserMcpResourceCommand, OpenUserMcpResourceCommand, OpenWorkspaceFolderMcpResourceCommand, OpenWorkspaceMcpResourceCommand, RemoveStoredInput, ResetMcpCachedTools, ResetMcpTrustCommand, RestartServer, SetOAuthClientSecret, ShowConfiguration, ShowInstalledMcpServersCommand, ShowOutput, StartServer, StopServer };