Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
microsoft
GitHub Repository: microsoft/vscode
Path: blob/main/src/vs/workbench/services/mcp/electron-browser/mcpWorkbenchManagementService.ts
3296 views
1
/*---------------------------------------------------------------------------------------------
2
* Copyright (c) Microsoft Corporation. All rights reserved.
3
* Licensed under the MIT License. See License.txt in the project root for license information.
4
*--------------------------------------------------------------------------------------------*/
5
6
import { IInstantiationService } from '../../../../platform/instantiation/common/instantiation.js';
7
import { IUserDataProfileService } from '../../../services/userDataProfile/common/userDataProfile.js';
8
import { InstantiationType, registerSingleton } from '../../../../platform/instantiation/common/extensions.js';
9
import { IWorkspaceContextService } from '../../../../platform/workspace/common/workspace.js';
10
import { IUriIdentityService } from '../../../../platform/uriIdentity/common/uriIdentity.js';
11
import { IRemoteAgentService } from '../../remote/common/remoteAgentService.js';
12
import { McpManagementChannelClient } from '../../../../platform/mcp/common/mcpManagementIpc.js';
13
import { IUserDataProfilesService } from '../../../../platform/userDataProfile/common/userDataProfile.js';
14
import { IRemoteUserDataProfilesService } from '../../userDataProfile/common/remoteUserDataProfiles.js';
15
import { WorkbenchMcpManagementService as BaseWorkbenchMcpManagementService, IWorkbenchMcpManagementService } from '../common/mcpWorkbenchManagementService.js';
16
import { ISharedProcessService } from '../../../../platform/ipc/electron-browser/services.js';
17
import { IAllowedMcpServersService } from '../../../../platform/mcp/common/mcpManagement.js';
18
19
export class WorkbenchMcpManagementService extends BaseWorkbenchMcpManagementService {
20
21
constructor(
22
@IAllowedMcpServersService allowedMcpServersService: IAllowedMcpServersService,
23
@IUserDataProfileService userDataProfileService: IUserDataProfileService,
24
@IUriIdentityService uriIdentityService: IUriIdentityService,
25
@IWorkspaceContextService workspaceContextService: IWorkspaceContextService,
26
@IRemoteAgentService remoteAgentService: IRemoteAgentService,
27
@IUserDataProfilesService userDataProfilesService: IUserDataProfilesService,
28
@IRemoteUserDataProfilesService remoteUserDataProfilesService: IRemoteUserDataProfilesService,
29
@IInstantiationService instantiationService: IInstantiationService,
30
@ISharedProcessService sharedProcessService: ISharedProcessService,
31
) {
32
const mcpManagementService = new McpManagementChannelClient(sharedProcessService.getChannel('mcpManagement'), allowedMcpServersService);
33
super(mcpManagementService, allowedMcpServersService, userDataProfileService, uriIdentityService, workspaceContextService, remoteAgentService, userDataProfilesService, remoteUserDataProfilesService, instantiationService);
34
this._register(mcpManagementService);
35
}
36
}
37
38
registerSingleton(IWorkbenchMcpManagementService, WorkbenchMcpManagementService, InstantiationType.Delayed);
39
40