@opensumi/ide-ai-native 3.8.3-next-1745893346.0 → 3.8.3-next-1745899626.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.
@@ -1 +1 @@
1
- {"version":3,"file":"ai-core.contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-core.contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-core.contribution.d.ts","sourceRoot":"","sources":["../../src/browser/ai-core.contribution.ts"],"names":[],"mappings":"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"}
@@ -149,48 +149,43 @@ let AINativeBrowserContribution = class AINativeBrowserContribution {
149
149
  let enabledMCPServers = storage.get(mcp_server_manager_1.MCPServersEnabledKey, [common_1.BUILTIN_MCP_SERVER_NAME]);
150
150
  const oldMCPServers = this.preferenceService.get(ide_core_browser_1.AINativeSettingSectionsId.MCPServers, []);
151
151
  let mcpServerFromWorkspace = this.preferenceService.resolve('mcp', {
152
- mcpServers: [],
152
+ mcpServers: {},
153
153
  }, undefined);
154
154
  if (mcpServerFromWorkspace.scope === ide_core_common_1.PreferenceScope.Default && oldMCPServers.length > 0) {
155
155
  // 如果用户没有配置,也没有存储,则从旧配置迁移
156
156
  const newMCPServers = {
157
- mcpServers: [],
157
+ mcpServers: {},
158
158
  };
159
159
  const mcpServersEnabled = new Set([common_1.BUILTIN_MCP_SERVER_NAME]);
160
160
  oldMCPServers.forEach((server) => {
161
161
  if (server.type === types_1.MCP_SERVER_TYPE.SSE) {
162
- newMCPServers.mcpServers.push({
163
- [server.name]: {
164
- url: server.serverHost,
165
- },
166
- });
162
+ newMCPServers.mcpServers[server.name] = {
163
+ url: server.serverHost,
164
+ };
167
165
  }
168
166
  else if (server.type === types_1.MCP_SERVER_TYPE.STDIO) {
169
- newMCPServers.mcpServers.push({
170
- [server.name]: {
171
- command: server.command,
172
- args: server.args,
173
- env: server.env,
174
- },
175
- });
167
+ newMCPServers.mcpServers[server.name] = {
168
+ command: server.command,
169
+ args: server.args,
170
+ env: server.env,
171
+ };
176
172
  }
177
173
  if (server.enabled) {
178
174
  mcpServersEnabled.add(server.name);
179
175
  }
180
176
  });
181
177
  await this.preferenceService.set('mcp', newMCPServers, ide_core_common_1.PreferenceScope.Workspace);
182
- mcpServerFromWorkspace = this.preferenceService.resolve('mcp', undefined, undefined);
178
+ mcpServerFromWorkspace = this.preferenceService.resolve('mcp', {
179
+ mcpServers: {},
180
+ }, undefined);
183
181
  enabledMCPServers = Array.from(mcpServersEnabled);
184
182
  storage.set(mcp_server_manager_1.MCPServersEnabledKey, enabledMCPServers);
185
183
  }
186
184
  const userServers = (_a = mcpServerFromWorkspace.value) === null || _a === void 0 ? void 0 : _a.mcpServers;
187
185
  // 总是初始化内置服务器,根据配置决定是否启用
188
186
  this.sumiMCPServerBackendProxy.$initBuiltinMCPServer(enabledMCPServers.includes(common_1.BUILTIN_MCP_SERVER_NAME));
189
- if (userServers && userServers.length > 0) {
190
- const mcpServers = (await Promise.all(userServers.map(async (server) => {
191
- const name = Object.keys(server)[0];
192
- return await this.mcpConfigService.getServerConfigByName(name);
193
- }))).filter((server) => server !== undefined);
187
+ if (userServers && Object.keys(userServers).length > 0) {
188
+ const mcpServers = (await Promise.all(Object.keys(userServers).map(async (name) => await this.mcpConfigService.getServerConfigByName(name)))).filter((server) => server !== undefined);
194
189
  await this.sumiMCPServerBackendProxy.$initExternalMCPServers(mcpServers);
195
190
  }
196
191
  this.mcpConfigService.fireMCPServersChange(true);
@@ -1 +1 @@
1
- {"version":3,"file":"ai-core.contribution.js","sourceRoot":"","sources":["../../src/browser/ai-core.contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ai-core.contribution.js","sourceRoot":"","sources":["../../src/browser/ai-core.contribution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-config.view.d.ts","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAa3C,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAsNjC,CAAC"}
1
+ {"version":3,"file":"mcp-config.view.d.ts","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"AACA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAc3C,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EA4NjC,CAAC"}
@@ -16,7 +16,7 @@ const MCPConfigView = () => {
16
16
  const [formVisible, setFormVisible] = react_1.default.useState(false);
17
17
  const [editingServer, setEditingServer] = react_1.default.useState();
18
18
  const [loadingServer, setLoadingServer] = react_1.default.useState();
19
- const [isReady, setIsReady] = react_1.default.useState(false);
19
+ const [isReady, setIsReady] = react_1.default.useState(mcpConfigService.isInitialized);
20
20
  const loadServers = (0, react_1.useCallback)(async () => {
21
21
  const allServers = await mcpConfigService.getServers();
22
22
  setServers(allServers);
@@ -59,9 +59,14 @@ const MCPConfigView = () => {
59
59
  await mcpConfigService.deleteServer(serverName);
60
60
  await loadServers();
61
61
  }, [mcpConfigService, loadServers]);
62
- const handleSaveServer = (0, react_1.useCallback)(async (data) => {
63
- await mcpConfigService.saveServer(data);
62
+ const handleSaveServer = (0, react_1.useCallback)(async (prev, data) => {
64
63
  setFormVisible(false);
64
+ await mcpConfigService.saveServer(prev, data);
65
+ if (prev === null || prev === void 0 ? void 0 : prev.enabled) {
66
+ setLoadingServer(data.name);
67
+ await mcpConfigService.controlServer(data.name, true);
68
+ setLoadingServer(undefined);
69
+ }
65
70
  await loadServers();
66
71
  }, [mcpConfigService, loadServers]);
67
72
  const handleSyncServer = (0, react_1.useCallback)(async (server) => {
@@ -87,7 +92,8 @@ const MCPConfigView = () => {
87
92
  react_1.default.createElement("div", { className: mcp_config_module_less_1.default.serverActions },
88
93
  react_1.default.createElement(ide_components_1.Popover, { id: 'mcp-server-action-popover', trigger: ide_components_1.PopoverTriggerType.hover, content: server.isStarted ? (0, ide_core_common_1.localize)('ai.native.mcp.disable.title') : (0, ide_core_common_1.localize)('ai.native.mcp.enable.title') },
89
94
  react_1.default.createElement(ide_components_1.Button, { type: 'default', className: (0, classnames_1.default)(mcp_config_module_less_1.default.serverActionButton, server.isStarted && mcp_config_module_less_1.default.active), onClick: () => handleServerControl(server.name, !server.isStarted) },
90
- react_1.default.createElement("i", { className: `codicon ${loadingServer === server.name || (!isReady && server.name !== common_1.BUILTIN_MCP_SERVER_NAME)
95
+ react_1.default.createElement("i", { className: `codicon ${loadingServer === server.name ||
96
+ (!isReady && server.name !== common_1.BUILTIN_MCP_SERVER_NAME && !server.isStarted)
91
97
  ? 'codicon-loading kt-icon-loading'
92
98
  : server.isStarted
93
99
  ? 'codicon-check'
@@ -111,7 +117,7 @@ const MCPConfigView = () => {
111
117
  react_1.default.createElement("div", { className: mcp_config_module_less_1.default.detailRow },
112
118
  react_1.default.createElement("span", { className: mcp_config_module_less_1.default.detailLabel }, "Server Link:"),
113
119
  react_1.default.createElement("span", { className: (0, classnames_1.default)(mcp_config_module_less_1.default.detailContent, mcp_config_module_less_1.default.link) }, server.url)))))))),
114
- react_1.default.createElement(mcp_server_form_1.MCPServerForm, { visible: formVisible, initialData: editingServer, servers: servers, onSave: handleSaveServer, onCancel: () => setFormVisible(false) })));
120
+ react_1.default.createElement(mcp_server_form_1.MCPServerForm, { visible: formVisible, initialData: editingServer, servers: servers, onSave: (data) => handleSaveServer(editingServer, data), onCancel: () => setFormVisible(false) })));
115
121
  };
116
122
  exports.MCPConfigView = MCPConfigView;
117
123
  //# sourceMappingURL=mcp-config.view.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-config.view.js","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-config.view.js","sourceRoot":"","sources":["../../../../../src/browser/mcp/config/components/mcp-config.view.tsx"],"names":[],"mappings":"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"}
@@ -12,15 +12,17 @@ export declare class MCPConfigService extends Disposable {
12
12
  private readonly logger;
13
13
  private chatStorage;
14
14
  private whenReadyDeferred;
15
+ private _isInitialized;
15
16
  private readonly mcpServersChangeEventEmitter;
16
17
  constructor();
17
18
  private init;
18
19
  get whenReady(): Promise<void>;
20
+ get isInitialized(): boolean;
19
21
  get onMCPServersChange(): import("@opensumi/ide-core-browser").Event<boolean>;
20
22
  fireMCPServersChange(isInit?: boolean): void;
21
23
  getServers(): Promise<MCPServer[]>;
22
24
  controlServer(serverName: string, start: boolean): Promise<void>;
23
- saveServer(data: MCPServerFormData): Promise<void>;
25
+ saveServer(prev: MCPServerDescription | undefined, data: MCPServerFormData): Promise<void>;
24
26
  deleteServer(serverName: string): Promise<void>;
25
27
  syncServer(serverName: string): Promise<void>;
26
28
  getServerConfigByName(serverName: string): Promise<MCPServerDescription | undefined>;
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-config.service.d.ts","sourceRoot":"","sources":["../../../../src/browser/mcp/config/mcp-config.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,UAAU,EAOX,MAAM,2BAA2B,CAAC;AAKnC,OAAO,EACL,oBAAoB,EAIrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAmB,MAAM,uBAAuB,CAAC;AAGnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,qBACa,gBAAiB,SAAQ,UAAU;IAE9C,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAwB;IAGlE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAG9D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAGjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAGlD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAyB;IAGhE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,iBAAiB,CAAwB;IAEjD,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAA0B;;YAkBzD,IAAI;IAKlB,IAAI,SAAS,kBAEZ;IAED,IAAI,kBAAkB,wDAErB;IAED,oBAAoB,CAAC,MAAM,GAAE,OAAe;IAItC,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAsDlC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE,UAAU,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BlD,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/C,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAgC1F,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAarC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CAqBtC"}
1
+ {"version":3,"file":"mcp-config.service.d.ts","sourceRoot":"","sources":["../../../../src/browser/mcp/config/mcp-config.service.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,UAAU,EAOX,MAAM,2BAA2B,CAAC;AAKnC,OAAO,EACL,oBAAoB,EAIrB,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAmB,MAAM,uBAAuB,CAAC;AAGnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEjE,qBACa,gBAAiB,SAAQ,UAAU;IAE9C,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAwB;IAGlE,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAwB;IAG9D,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAoB;IAGtD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAkB;IAGjD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAkB;IAGlD,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAyB;IAGhE,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IAEjC,OAAO,CAAC,WAAW,CAAW;IAC9B,OAAO,CAAC,iBAAiB,CAAwB;IAEjD,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAA0B;;YAmBzD,IAAI;IAKlB,IAAI,SAAS,kBAEZ;IAED,IAAI,aAAa,YAEhB;IAED,IAAI,kBAAkB,wDAErB;IAED,oBAAoB,CAAC,MAAM,GAAE,OAAe;IAOtC,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;IAwDlC,aAAa,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBhE,UAAU,CAAC,IAAI,EAAE,oBAAoB,GAAG,SAAS,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkC1F,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAe/C,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7C,qBAAqB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IA+B1F,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAarC,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC;CAqBtC"}
@@ -16,12 +16,14 @@ let MCPConfigService = class MCPConfigService extends ide_core_common_1.Disposab
16
16
  constructor() {
17
17
  super();
18
18
  this.whenReadyDeferred = new ide_core_common_1.Deferred();
19
+ this._isInitialized = false;
19
20
  this.mcpServersChangeEventEmitter = new ide_core_common_1.Emitter();
20
21
  this.init();
21
22
  this.disposables.push(this.mcpServerProxyService.onChangeMCPServers(() => {
22
23
  this.fireMCPServersChange();
23
24
  }));
24
25
  this.disposables.push(this.preferenceService.onSpecificPreferenceChange('mcp', () => {
26
+ // 通过修改配置增加的 server 需要重新添加到列表中
25
27
  this.fireMCPServersChange();
26
28
  }));
27
29
  }
@@ -32,23 +34,28 @@ let MCPConfigService = class MCPConfigService extends ide_core_common_1.Disposab
32
34
  get whenReady() {
33
35
  return this.whenReadyDeferred.promise;
34
36
  }
37
+ get isInitialized() {
38
+ return this._isInitialized;
39
+ }
35
40
  get onMCPServersChange() {
36
41
  return this.mcpServersChangeEventEmitter.event;
37
42
  }
38
43
  fireMCPServersChange(isInit = false) {
44
+ if (isInit) {
45
+ this._isInitialized = true;
46
+ }
39
47
  this.mcpServersChangeEventEmitter.fire(isInit);
40
48
  }
41
49
  async getServers() {
42
50
  // Get workspace MCP server configurations
43
- const { value: mcpConfig, scope } = this.preferenceService.resolve('mcp', { mcpServers: [] }, undefined);
51
+ const { value: mcpConfig, scope } = this.preferenceService.resolve('mcp', { mcpServers: {} }, undefined);
44
52
  if (scope === ide_core_common_1.PreferenceScope.Default) {
45
53
  const runningServers = await this.mcpServerProxyService.$getServers();
46
54
  const builtinServer = runningServers.find((server) => server.name === common_1.BUILTIN_MCP_SERVER_NAME);
47
55
  return builtinServer ? [builtinServer] : [];
48
56
  }
49
- const userServers = mcpConfig === null || mcpConfig === void 0 ? void 0 : mcpConfig.mcpServers.map((server) => {
50
- const name = Object.keys(server)[0];
51
- const serverConfig = server[name];
57
+ const userServers = Object.keys(mcpConfig.mcpServers).map((name) => {
58
+ const serverConfig = mcpConfig.mcpServers[name];
52
59
  if (serverConfig.url) {
53
60
  return {
54
61
  name,
@@ -69,6 +76,9 @@ let MCPConfigService = class MCPConfigService extends ide_core_common_1.Disposab
69
76
  // Merge server configs with running status
70
77
  const allServers = userServers === null || userServers === void 0 ? void 0 : userServers.map((server) => {
71
78
  const runningServer = runningServers.find((s) => s.name === server.name);
79
+ if (!runningServer) {
80
+ this.sumiMCPServerBackendProxy.$addOrUpdateServer(server);
81
+ }
72
82
  return {
73
83
  ...server,
74
84
  isStarted: (runningServer === null || runningServer === void 0 ? void 0 : runningServer.isStarted) || false,
@@ -106,54 +116,55 @@ let MCPConfigService = class MCPConfigService extends ide_core_common_1.Disposab
106
116
  throw error;
107
117
  }
108
118
  }
109
- async saveServer(data) {
119
+ async saveServer(prev, data) {
110
120
  await this.whenReady;
111
- const { value: mcpConfig } = this.preferenceService.resolve('mcp', { mcpServers: [] }, undefined);
121
+ const { value: mcpConfig } = this.preferenceService.resolve('mcp', { mcpServers: {} }, undefined);
112
122
  const servers = mcpConfig.mcpServers;
113
- const existingIndex = servers === null || servers === void 0 ? void 0 : servers.findIndex((s) => Object.keys(s)[0] === data.name);
123
+ const existingServer = (prev === null || prev === void 0 ? void 0 : prev.name) ? servers[prev.name] : undefined;
114
124
  let serverConfig;
115
125
  if (data.type === types_1.MCP_SERVER_TYPE.SSE) {
116
- serverConfig = { [data.name]: { url: data.url } };
126
+ serverConfig = { url: data.url };
117
127
  }
118
128
  else {
119
129
  serverConfig = {
120
- [data.name]: {
121
- command: data.command,
122
- args: data.args,
123
- env: data.env,
124
- },
130
+ command: data.command,
131
+ args: data.args,
132
+ env: data.env,
125
133
  };
126
134
  }
127
- if (existingIndex !== undefined && existingIndex >= 0) {
128
- servers[existingIndex] = serverConfig;
129
- }
130
- else {
131
- servers.push(serverConfig);
135
+ if (existingServer) {
136
+ delete servers[existingServer.name];
132
137
  }
138
+ servers[data.name] = serverConfig;
133
139
  await this.sumiMCPServerBackendProxy.$addOrUpdateServer(data);
140
+ // 更新情况下,如果原有服务是启用状态,则进行如下操作:
141
+ // 1. 关闭旧的服务
142
+ // 2. 启动新的服务
143
+ if (prev === null || prev === void 0 ? void 0 : prev.enabled) {
144
+ await this.sumiMCPServerBackendProxy.$removeServer(prev.name);
145
+ }
134
146
  await this.preferenceService.set('mcp', { mcpServers: servers });
135
147
  }
136
148
  async deleteServer(serverName) {
137
- const { value: mcpConfig } = this.preferenceService.resolve('mcp', { mcpServers: [] }, undefined);
138
- const servers = mcpConfig === null || mcpConfig === void 0 ? void 0 : mcpConfig.mcpServers;
139
- const serverIndex = servers === null || servers === void 0 ? void 0 : servers.findIndex((s) => Object.keys(s)[0] === serverName);
140
- if (serverIndex !== undefined && serverIndex >= 0) {
141
- servers === null || servers === void 0 ? void 0 : servers.splice(serverIndex, 1);
149
+ const { value: mcpConfig } = this.preferenceService.resolve('mcp', { mcpServers: {} }, undefined);
150
+ const servers = mcpConfig.mcpServers;
151
+ const existingServer = servers[serverName];
152
+ if (existingServer) {
153
+ delete servers[serverName];
154
+ await this.sumiMCPServerBackendProxy.$removeServer(serverName);
155
+ await this.preferenceService.set('mcp', { mcpServers: servers });
142
156
  }
143
- await this.sumiMCPServerBackendProxy.$removeServer(serverName);
144
- await this.preferenceService.set('mcp', { mcpServers: servers });
145
157
  }
146
158
  async syncServer(serverName) {
147
159
  await this.sumiMCPServerBackendProxy.$syncServer(serverName);
148
160
  }
149
161
  async getServerConfigByName(serverName) {
150
- const { value: mcpConfig } = this.preferenceService.resolve('mcp', { mcpServers: [] }, undefined);
162
+ const { value: mcpConfig } = this.preferenceService.resolve('mcp', { mcpServers: {} }, undefined);
151
163
  await this.whenReady;
152
164
  const enabledMCPServers = this.chatStorage.get(mcp_server_manager_1.MCPServersEnabledKey, [common_1.BUILTIN_MCP_SERVER_NAME]);
153
- const servers = mcpConfig === null || mcpConfig === void 0 ? void 0 : mcpConfig.mcpServers;
154
- const server = servers === null || servers === void 0 ? void 0 : servers.find((s) => Object.keys(s)[0] === serverName);
165
+ const server = mcpConfig.mcpServers[serverName];
155
166
  if (server) {
156
- if (server[serverName].url) {
167
+ if (server.url) {
157
168
  return {
158
169
  name: serverName,
159
170
  type: types_1.MCP_SERVER_TYPE.SSE,
@@ -187,10 +198,10 @@ let MCPConfigService = class MCPConfigService extends ide_core_common_1.Disposab
187
198
  }
188
199
  }
189
200
  async openConfigFile() {
190
- let config = this.preferenceService.resolve('mcp', { mcpServers: [] }, undefined);
201
+ let config = this.preferenceService.resolve('mcp', { mcpServers: {} }, undefined);
191
202
  if (config.scope === ide_core_common_1.PreferenceScope.Default) {
192
- await this.preferenceService.set('mcp', { mcpServers: [] }, ide_core_common_1.PreferenceScope.Workspace);
193
- config = this.preferenceService.resolve('mcp', { mcpServers: [] }, undefined);
203
+ await this.preferenceService.set('mcp', { mcpServers: {} }, ide_core_common_1.PreferenceScope.Workspace);
204
+ config = this.preferenceService.resolve('mcp', { mcpServers: {} }, undefined);
194
205
  }
195
206
  const uri = config.configUri;
196
207
  if (uri) {
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-config.service.js","sourceRoot":"","sources":["../../../../src/browser/mcp/config/mcp-config.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-config.service.js","sourceRoot":"","sources":["../../../../src/browser/mcp/config/mcp-config.service.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-preferences.d.ts","sourceRoot":"","sources":["../../../src/browser/mcp/mcp-preferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAgB,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEtE,eAAO,MAAM,YAAY,8BAA6B,CAAC;AAEvD,eAAO,MAAM,oBAAoB,EAAE,gBAUlC,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,WAiCvB,CAAC"}
1
+ {"version":3,"file":"mcp-preferences.d.ts","sourceRoot":"","sources":["../../../src/browser/mcp/mcp-preferences.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,EAAgB,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEtE,eAAO,MAAM,YAAY,8BAA6B,CAAC;AAEvD,eAAO,MAAM,oBAAoB,EAAE,gBAUlC,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,WA+CvB,CAAC"}
@@ -9,7 +9,7 @@ exports.MCPPreferencesSchema = {
9
9
  mcp: {
10
10
  $ref: exports.MCPSchemaUri,
11
11
  description: 'MCP configuration for Workspace.',
12
- defaultValue: { mcpServers: [] },
12
+ defaultValue: { mcpServers: {} },
13
13
  },
14
14
  },
15
15
  };
@@ -18,12 +18,12 @@ exports.MCPSchema = {
18
18
  type: 'object',
19
19
  title: 'MCP',
20
20
  required: [],
21
- default: { mcpServers: [] },
21
+ default: { mcpServers: {} },
22
22
  properties: {
23
23
  mcpServers: {
24
- type: 'array',
24
+ type: 'object',
25
25
  description: 'List of MCP Servers. Add new servers or edit existing ones by using IntelliSense.',
26
- items: {
26
+ additionalProperties: {
27
27
  type: 'object',
28
28
  properties: {
29
29
  command: {
@@ -33,16 +33,30 @@ exports.MCPSchema = {
33
33
  args: {
34
34
  type: 'array',
35
35
  description: 'The arguments for the command to start the MCP server.',
36
+ items: {
37
+ type: 'string',
38
+ },
36
39
  },
37
40
  env: {
38
41
  type: 'object',
39
42
  description: 'The environment variables for the command to start the MCP server.',
43
+ additionalProperties: {
44
+ type: 'string',
45
+ },
40
46
  },
41
47
  url: {
42
48
  type: 'string',
43
49
  description: 'The SSE URL for the MCP server.',
44
50
  },
45
51
  },
52
+ oneOf: [
53
+ {
54
+ required: ['command'],
55
+ },
56
+ {
57
+ required: ['url'],
58
+ },
59
+ ],
46
60
  },
47
61
  },
48
62
  },
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-preferences.js","sourceRoot":"","sources":["../../../src/browser/mcp/mcp-preferences.ts"],"names":[],"mappings":";;;AAGa,QAAA,YAAY,GAAG,GAAG,6CAAgB,OAAO,CAAC;AAE1C,QAAA,oBAAoB,GAAqB;IACpD,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,UAAU;IACjB,UAAU,EAAE;QACV,GAAG,EAAE;YACH,IAAI,EAAE,oBAAY;YAClB,WAAW,EAAE,kCAAkC;YAC/C,YAAY,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;SACjC;KACF;CACF,CAAC;AAEW,QAAA,SAAS,GAAgB;IACpC,GAAG,EAAE,oBAAY;IACjB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,KAAK;IACZ,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC3B,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,mFAAmF;YAChG,KAAK,EAAE;gBACL,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,sCAAsC;qBACpD;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO;wBACb,WAAW,EAAE,wDAAwD;qBACtE;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;qBAClF;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,iCAAiC;qBAC/C;iBACF;aACF;SACF;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"mcp-preferences.js","sourceRoot":"","sources":["../../../src/browser/mcp/mcp-preferences.ts"],"names":[],"mappings":";;;AAGa,QAAA,YAAY,GAAG,GAAG,6CAAgB,OAAO,CAAC;AAE1C,QAAA,oBAAoB,GAAqB;IACpD,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,UAAU;IACjB,UAAU,EAAE;QACV,GAAG,EAAE;YACH,IAAI,EAAE,oBAAY;YAClB,WAAW,EAAE,kCAAkC;YAC/C,YAAY,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;SACjC;KACF;CACF,CAAC;AAEW,QAAA,SAAS,GAAgB;IACpC,GAAG,EAAE,oBAAY;IACjB,IAAI,EAAE,QAAQ;IACd,KAAK,EAAE,KAAK;IACZ,QAAQ,EAAE,EAAE;IACZ,OAAO,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;IAC3B,UAAU,EAAE;QACV,UAAU,EAAE;YACV,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,mFAAmF;YAChG,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,sCAAsC;qBACpD;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO;wBACb,WAAW,EAAE,wDAAwD;wBACrE,KAAK,EAAE;4BACL,IAAI,EAAE,QAAQ;yBACf;qBACF;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,oEAAoE;wBACjF,oBAAoB,EAAE;4BACpB,IAAI,EAAE,QAAQ;yBACf;qBACF;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,WAAW,EAAE,iCAAiC;qBAC/C;iBACF;gBACD,KAAK,EAAE;oBACL;wBACE,QAAQ,EAAE,CAAC,SAAS,CAAC;qBACtB;oBACD;wBACE,QAAQ,EAAE,CAAC,KAAK,CAAC;qBAClB;iBACF;aACF;SACF;KACF;CACF,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-ai-native",
3
- "version": "3.8.3-next-1745893346.0",
3
+ "version": "3.8.3-next-1745899626.0",
4
4
  "files": [
5
5
  "lib",
6
6
  "src"
@@ -24,27 +24,27 @@
24
24
  "@ai-sdk/openai": "^1.1.9",
25
25
  "@ai-sdk/openai-compatible": "^0.1.11",
26
26
  "@modelcontextprotocol/sdk": "^1.3.1",
27
- "@opensumi/ide-addons": "3.8.3-next-1745893346.0",
28
- "@opensumi/ide-components": "3.8.3-next-1745893346.0",
29
- "@opensumi/ide-connection": "3.8.3-next-1745893346.0",
30
- "@opensumi/ide-core-common": "3.8.3-next-1745893346.0",
31
- "@opensumi/ide-core-node": "3.8.3-next-1745893346.0",
32
- "@opensumi/ide-debug": "3.8.3-next-1745893346.0",
33
- "@opensumi/ide-design": "3.8.3-next-1745893346.0",
34
- "@opensumi/ide-editor": "3.8.3-next-1745893346.0",
35
- "@opensumi/ide-file-search": "3.8.3-next-1745893346.0",
36
- "@opensumi/ide-file-service": "3.8.3-next-1745893346.0",
37
- "@opensumi/ide-main-layout": "3.8.3-next-1745893346.0",
38
- "@opensumi/ide-markers": "3.8.3-next-1745893346.0",
39
- "@opensumi/ide-monaco": "3.8.3-next-1745893346.0",
40
- "@opensumi/ide-outline": "3.8.3-next-1745893346.0",
41
- "@opensumi/ide-overlay": "3.8.3-next-1745893346.0",
42
- "@opensumi/ide-preferences": "3.8.3-next-1745893346.0",
43
- "@opensumi/ide-search": "3.8.3-next-1745893346.0",
44
- "@opensumi/ide-terminal-next": "3.8.3-next-1745893346.0",
45
- "@opensumi/ide-theme": "3.8.3-next-1745893346.0",
46
- "@opensumi/ide-utils": "3.8.3-next-1745893346.0",
47
- "@opensumi/ide-workspace": "3.8.3-next-1745893346.0",
27
+ "@opensumi/ide-addons": "3.8.3-next-1745899626.0",
28
+ "@opensumi/ide-components": "3.8.3-next-1745899626.0",
29
+ "@opensumi/ide-connection": "3.8.3-next-1745899626.0",
30
+ "@opensumi/ide-core-common": "3.8.3-next-1745899626.0",
31
+ "@opensumi/ide-core-node": "3.8.3-next-1745899626.0",
32
+ "@opensumi/ide-debug": "3.8.3-next-1745899626.0",
33
+ "@opensumi/ide-design": "3.8.3-next-1745899626.0",
34
+ "@opensumi/ide-editor": "3.8.3-next-1745899626.0",
35
+ "@opensumi/ide-file-search": "3.8.3-next-1745899626.0",
36
+ "@opensumi/ide-file-service": "3.8.3-next-1745899626.0",
37
+ "@opensumi/ide-main-layout": "3.8.3-next-1745899626.0",
38
+ "@opensumi/ide-markers": "3.8.3-next-1745899626.0",
39
+ "@opensumi/ide-monaco": "3.8.3-next-1745899626.0",
40
+ "@opensumi/ide-outline": "3.8.3-next-1745899626.0",
41
+ "@opensumi/ide-overlay": "3.8.3-next-1745899626.0",
42
+ "@opensumi/ide-preferences": "3.8.3-next-1745899626.0",
43
+ "@opensumi/ide-search": "3.8.3-next-1745899626.0",
44
+ "@opensumi/ide-terminal-next": "3.8.3-next-1745899626.0",
45
+ "@opensumi/ide-theme": "3.8.3-next-1745899626.0",
46
+ "@opensumi/ide-utils": "3.8.3-next-1745899626.0",
47
+ "@opensumi/ide-workspace": "3.8.3-next-1745899626.0",
48
48
  "@xterm/xterm": "5.5.0",
49
49
  "ai": "^4.1.45",
50
50
  "ansi-regex": "^2.0.0",
@@ -61,7 +61,7 @@
61
61
  "zod-to-json-schema": "^3.24.1"
62
62
  },
63
63
  "devDependencies": {
64
- "@opensumi/ide-core-browser": "3.8.3-next-1745893346.0"
64
+ "@opensumi/ide-core-browser": "3.8.3-next-1745899626.0"
65
65
  },
66
- "gitHead": "04be39f1c35bb7bdaf9dcab643d72c5e8632d404"
66
+ "gitHead": "06785c730322453175f1c41c2a0c0cdd2037b938"
67
67
  }
@@ -427,43 +427,41 @@ export class AINativeBrowserContribution
427
427
  let enabledMCPServers = storage.get<string[]>(MCPServersEnabledKey, [BUILTIN_MCP_SERVER_NAME]);
428
428
 
429
429
  const oldMCPServers = this.preferenceService.get<MCPServerDescription[]>(AINativeSettingSectionsId.MCPServers, []);
430
- let mcpServerFromWorkspace = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
430
+ let mcpServerFromWorkspace = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
431
431
  'mcp',
432
432
  {
433
- mcpServers: [] as any,
433
+ mcpServers: {},
434
434
  },
435
435
  undefined,
436
436
  );
437
437
  if (mcpServerFromWorkspace.scope === PreferenceScope.Default && oldMCPServers.length > 0) {
438
438
  // 如果用户没有配置,也没有存储,则从旧配置迁移
439
439
  const newMCPServers = {
440
- mcpServers: [] as any,
440
+ mcpServers: {},
441
441
  };
442
442
  const mcpServersEnabled = new Set<string>([BUILTIN_MCP_SERVER_NAME]);
443
443
  oldMCPServers.forEach((server) => {
444
444
  if (server.type === MCP_SERVER_TYPE.SSE) {
445
- newMCPServers.mcpServers.push({
446
- [server.name]: {
447
- url: (server as any).serverHost,
448
- },
449
- });
445
+ newMCPServers.mcpServers[server.name] = {
446
+ url: (server as any).serverHost,
447
+ };
450
448
  } else if (server.type === MCP_SERVER_TYPE.STDIO) {
451
- newMCPServers.mcpServers.push({
452
- [server.name]: {
453
- command: server.command,
454
- args: server.args,
455
- env: server.env,
456
- },
457
- });
449
+ newMCPServers.mcpServers[server.name] = {
450
+ command: server.command,
451
+ args: server.args,
452
+ env: server.env,
453
+ };
458
454
  }
459
455
  if (server.enabled) {
460
456
  mcpServersEnabled.add(server.name);
461
457
  }
462
458
  });
463
459
  await this.preferenceService.set('mcp', newMCPServers, PreferenceScope.Workspace);
464
- mcpServerFromWorkspace = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
460
+ mcpServerFromWorkspace = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
465
461
  'mcp',
466
- undefined,
462
+ {
463
+ mcpServers: {},
464
+ },
467
465
  undefined,
468
466
  );
469
467
  enabledMCPServers = Array.from(mcpServersEnabled);
@@ -473,13 +471,10 @@ export class AINativeBrowserContribution
473
471
  // 总是初始化内置服务器,根据配置决定是否启用
474
472
  this.sumiMCPServerBackendProxy.$initBuiltinMCPServer(enabledMCPServers.includes(BUILTIN_MCP_SERVER_NAME));
475
473
 
476
- if (userServers && userServers.length > 0) {
474
+ if (userServers && Object.keys(userServers).length > 0) {
477
475
  const mcpServers = (
478
476
  await Promise.all(
479
- userServers.map(async (server) => {
480
- const name = Object.keys(server)[0];
481
- return await this.mcpConfigService.getServerConfigByName(name);
482
- }),
477
+ Object.keys(userServers).map(async (name) => await this.mcpConfigService.getServerConfigByName(name)),
483
478
  )
484
479
  ).filter((server) => server !== undefined) as MCPServerDescription[];
485
480
  await this.sumiMCPServerBackendProxy.$initExternalMCPServers(mcpServers);
@@ -6,6 +6,7 @@ import { useInjectable } from '@opensumi/ide-core-browser';
6
6
  import { MCPConfigServiceToken, localize } from '@opensumi/ide-core-common';
7
7
 
8
8
  import { BUILTIN_MCP_SERVER_NAME } from '../../../../common';
9
+ import { MCPServerDescription } from '../../../../common/mcp-server-manager';
9
10
  import { MCPServer } from '../../../../common/types';
10
11
  import { MCPConfigService } from '../mcp-config.service';
11
12
 
@@ -16,9 +17,9 @@ export const MCPConfigView: React.FC = () => {
16
17
  const mcpConfigService = useInjectable<MCPConfigService>(MCPConfigServiceToken);
17
18
  const [servers, setServers] = React.useState<MCPServer[]>([]);
18
19
  const [formVisible, setFormVisible] = React.useState(false);
19
- const [editingServer, setEditingServer] = React.useState<MCPServerFormData | undefined>();
20
+ const [editingServer, setEditingServer] = React.useState<MCPServerDescription | undefined>();
20
21
  const [loadingServer, setLoadingServer] = React.useState<string | undefined>();
21
- const [isReady, setIsReady] = React.useState(false);
22
+ const [isReady, setIsReady] = React.useState(mcpConfigService.isInitialized);
22
23
 
23
24
  const loadServers = useCallback(async () => {
24
25
  const allServers = await mcpConfigService.getServers();
@@ -78,9 +79,14 @@ export const MCPConfigView: React.FC = () => {
78
79
  );
79
80
 
80
81
  const handleSaveServer = useCallback(
81
- async (data: MCPServerFormData) => {
82
- await mcpConfigService.saveServer(data);
82
+ async (prev: MCPServerDescription | undefined, data: MCPServerFormData) => {
83
83
  setFormVisible(false);
84
+ await mcpConfigService.saveServer(prev, data);
85
+ if (prev?.enabled) {
86
+ setLoadingServer(data.name);
87
+ await mcpConfigService.controlServer(data.name, true);
88
+ setLoadingServer(undefined);
89
+ }
84
90
  await loadServers();
85
91
  },
86
92
  [mcpConfigService, loadServers],
@@ -135,7 +141,8 @@ export const MCPConfigView: React.FC = () => {
135
141
  >
136
142
  <i
137
143
  className={`codicon ${
138
- loadingServer === server.name || (!isReady && server.name !== BUILTIN_MCP_SERVER_NAME)
144
+ loadingServer === server.name ||
145
+ (!isReady && server.name !== BUILTIN_MCP_SERVER_NAME && !server.isStarted)
139
146
  ? 'codicon-loading kt-icon-loading'
140
147
  : server.isStarted
141
148
  ? 'codicon-check'
@@ -221,7 +228,7 @@ export const MCPConfigView: React.FC = () => {
221
228
  visible={formVisible}
222
229
  initialData={editingServer}
223
230
  servers={servers}
224
- onSave={handleSaveServer}
231
+ onSave={(data) => handleSaveServer(editingServer, data)}
225
232
  onCancel={() => setFormVisible(false)}
226
233
  />
227
234
  </div>
@@ -52,6 +52,8 @@ export class MCPConfigService extends Disposable {
52
52
  private chatStorage: IStorage;
53
53
  private whenReadyDeferred = new Deferred<void>();
54
54
 
55
+ private _isInitialized = false;
56
+
55
57
  private readonly mcpServersChangeEventEmitter = new Emitter<boolean>();
56
58
 
57
59
  constructor() {
@@ -65,6 +67,7 @@ export class MCPConfigService extends Disposable {
65
67
  );
66
68
  this.disposables.push(
67
69
  this.preferenceService.onSpecificPreferenceChange('mcp', () => {
70
+ // 通过修改配置增加的 server 需要重新添加到列表中
68
71
  this.fireMCPServersChange();
69
72
  }),
70
73
  );
@@ -79,19 +82,26 @@ export class MCPConfigService extends Disposable {
79
82
  return this.whenReadyDeferred.promise;
80
83
  }
81
84
 
85
+ get isInitialized() {
86
+ return this._isInitialized;
87
+ }
88
+
82
89
  get onMCPServersChange() {
83
90
  return this.mcpServersChangeEventEmitter.event;
84
91
  }
85
92
 
86
93
  fireMCPServersChange(isInit: boolean = false) {
94
+ if (isInit) {
95
+ this._isInitialized = true;
96
+ }
87
97
  this.mcpServersChangeEventEmitter.fire(isInit);
88
98
  }
89
99
 
90
100
  async getServers(): Promise<MCPServer[]> {
91
101
  // Get workspace MCP server configurations
92
- const { value: mcpConfig, scope } = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
102
+ const { value: mcpConfig, scope } = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
93
103
  'mcp',
94
- { mcpServers: [] },
104
+ { mcpServers: {} },
95
105
  undefined,
96
106
  );
97
107
 
@@ -101,9 +111,8 @@ export class MCPConfigService extends Disposable {
101
111
  return builtinServer ? [builtinServer] : [];
102
112
  }
103
113
 
104
- const userServers = mcpConfig?.mcpServers.map((server) => {
105
- const name = Object.keys(server)[0];
106
- const serverConfig = server[name];
114
+ const userServers = Object.keys(mcpConfig!.mcpServers).map((name) => {
115
+ const serverConfig = mcpConfig!.mcpServers[name];
107
116
  if (serverConfig.url) {
108
117
  return {
109
118
  name,
@@ -126,6 +135,9 @@ export class MCPConfigService extends Disposable {
126
135
  // Merge server configs with running status
127
136
  const allServers = userServers?.map((server) => {
128
137
  const runningServer = runningServers.find((s) => s.name === server.name);
138
+ if (!runningServer) {
139
+ this.sumiMCPServerBackendProxy.$addOrUpdateServer(server as MCPServerDescription);
140
+ }
129
141
  return {
130
142
  ...server,
131
143
  isStarted: runningServer?.isStarted || false,
@@ -166,50 +178,53 @@ export class MCPConfigService extends Disposable {
166
178
  }
167
179
  }
168
180
 
169
- async saveServer(data: MCPServerFormData): Promise<void> {
181
+ async saveServer(prev: MCPServerDescription | undefined, data: MCPServerFormData): Promise<void> {
170
182
  await this.whenReady;
171
- const { value: mcpConfig } = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
183
+ const { value: mcpConfig } = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
172
184
  'mcp',
173
- { mcpServers: [] },
185
+ { mcpServers: {} },
174
186
  undefined,
175
187
  );
176
188
  const servers = mcpConfig!.mcpServers;
177
- const existingIndex = servers?.findIndex((s) => Object.keys(s)[0] === data.name);
189
+ const existingServer = prev?.name ? servers[prev.name] : undefined;
178
190
 
179
191
  let serverConfig;
180
192
  if (data.type === MCP_SERVER_TYPE.SSE) {
181
- serverConfig = { [data.name]: { url: (data as SSEMCPServerDescription).url } };
193
+ serverConfig = { url: (data as SSEMCPServerDescription).url };
182
194
  } else {
183
195
  serverConfig = {
184
- [data.name]: {
185
- command: (data as StdioMCPServerDescription).command,
186
- args: (data as StdioMCPServerDescription).args,
187
- env: (data as StdioMCPServerDescription).env,
188
- },
196
+ command: (data as StdioMCPServerDescription).command,
197
+ args: (data as StdioMCPServerDescription).args,
198
+ env: (data as StdioMCPServerDescription).env,
189
199
  };
190
200
  }
191
- if (existingIndex !== undefined && existingIndex >= 0) {
192
- servers[existingIndex] = serverConfig;
193
- } else {
194
- servers.push(serverConfig);
201
+ if (existingServer) {
202
+ delete servers[existingServer.name];
195
203
  }
204
+ servers[data.name] = serverConfig;
196
205
  await this.sumiMCPServerBackendProxy.$addOrUpdateServer(data as MCPServerDescription);
206
+ // 更新情况下,如果原有服务是启用状态,则进行如下操作:
207
+ // 1. 关闭旧的服务
208
+ // 2. 启动新的服务
209
+ if (prev?.enabled) {
210
+ await this.sumiMCPServerBackendProxy.$removeServer(prev.name);
211
+ }
197
212
  await this.preferenceService.set('mcp', { mcpServers: servers });
198
213
  }
199
214
 
200
215
  async deleteServer(serverName: string): Promise<void> {
201
- const { value: mcpConfig } = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
216
+ const { value: mcpConfig } = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
202
217
  'mcp',
203
- { mcpServers: [] },
218
+ { mcpServers: {} },
204
219
  undefined,
205
220
  );
206
- const servers = mcpConfig?.mcpServers;
207
- const serverIndex = servers?.findIndex((s) => Object.keys(s)[0] === serverName);
208
- if (serverIndex !== undefined && serverIndex >= 0) {
209
- servers?.splice(serverIndex, 1);
221
+ const servers = mcpConfig!.mcpServers;
222
+ const existingServer = servers[serverName];
223
+ if (existingServer) {
224
+ delete servers[serverName];
225
+ await this.sumiMCPServerBackendProxy.$removeServer(serverName);
226
+ await this.preferenceService.set('mcp', { mcpServers: servers });
210
227
  }
211
- await this.sumiMCPServerBackendProxy.$removeServer(serverName);
212
- await this.preferenceService.set('mcp', { mcpServers: servers });
213
228
  }
214
229
 
215
230
  async syncServer(serverName: string): Promise<void> {
@@ -217,17 +232,16 @@ export class MCPConfigService extends Disposable {
217
232
  }
218
233
 
219
234
  async getServerConfigByName(serverName: string): Promise<MCPServerDescription | undefined> {
220
- const { value: mcpConfig } = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
235
+ const { value: mcpConfig } = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
221
236
  'mcp',
222
- { mcpServers: [] },
237
+ { mcpServers: {} },
223
238
  undefined,
224
239
  );
225
240
  await this.whenReady;
226
241
  const enabledMCPServers = this.chatStorage.get<string[]>(MCPServersEnabledKey, [BUILTIN_MCP_SERVER_NAME]);
227
- const servers = mcpConfig?.mcpServers;
228
- const server = servers?.find((s) => Object.keys(s)[0] === serverName);
242
+ const server = mcpConfig!.mcpServers[serverName];
229
243
  if (server) {
230
- if (server[serverName].url) {
244
+ if (server.url) {
231
245
  return {
232
246
  name: serverName,
233
247
  type: MCP_SERVER_TYPE.SSE,
@@ -262,16 +276,16 @@ export class MCPConfigService extends Disposable {
262
276
  }
263
277
 
264
278
  async openConfigFile(): Promise<void> {
265
- let config = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
279
+ let config = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
266
280
  'mcp',
267
- { mcpServers: [] },
281
+ { mcpServers: {} },
268
282
  undefined,
269
283
  );
270
284
  if (config.scope === PreferenceScope.Default) {
271
- await this.preferenceService.set('mcp', { mcpServers: [] }, PreferenceScope.Workspace);
272
- config = this.preferenceService.resolve<{ mcpServers: Record<string, any>[] }>(
285
+ await this.preferenceService.set('mcp', { mcpServers: {} }, PreferenceScope.Workspace);
286
+ config = this.preferenceService.resolve<{ mcpServers: Record<string, any> }>(
273
287
  'mcp',
274
- { mcpServers: [] },
288
+ { mcpServers: {} },
275
289
  undefined,
276
290
  );
277
291
  }
@@ -10,7 +10,7 @@ export const MCPPreferencesSchema: PreferenceSchema = {
10
10
  mcp: {
11
11
  $ref: MCPSchemaUri,
12
12
  description: 'MCP configuration for Workspace.',
13
- defaultValue: { mcpServers: [] },
13
+ defaultValue: { mcpServers: {} },
14
14
  },
15
15
  },
16
16
  };
@@ -20,12 +20,12 @@ export const MCPSchema: IJSONSchema = {
20
20
  type: 'object',
21
21
  title: 'MCP',
22
22
  required: [],
23
- default: { mcpServers: [] },
23
+ default: { mcpServers: {} },
24
24
  properties: {
25
25
  mcpServers: {
26
- type: 'array',
26
+ type: 'object',
27
27
  description: 'List of MCP Servers. Add new servers or edit existing ones by using IntelliSense.',
28
- items: {
28
+ additionalProperties: {
29
29
  type: 'object',
30
30
  properties: {
31
31
  command: {
@@ -35,16 +35,30 @@ export const MCPSchema: IJSONSchema = {
35
35
  args: {
36
36
  type: 'array',
37
37
  description: 'The arguments for the command to start the MCP server.',
38
+ items: {
39
+ type: 'string',
40
+ },
38
41
  },
39
42
  env: {
40
43
  type: 'object',
41
44
  description: 'The environment variables for the command to start the MCP server.',
45
+ additionalProperties: {
46
+ type: 'string',
47
+ },
42
48
  },
43
49
  url: {
44
50
  type: 'string',
45
51
  description: 'The SSE URL for the MCP server.',
46
52
  },
47
53
  },
54
+ oneOf: [
55
+ {
56
+ required: ['command'],
57
+ },
58
+ {
59
+ required: ['url'],
60
+ },
61
+ ],
48
62
  },
49
63
  },
50
64
  },