@theia/ai-mcp 1.63.0-next.52 → 1.63.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/lib/browser/mcp-command-contribution.d.ts.map +1 -1
  2. package/lib/browser/mcp-command-contribution.js +2 -1
  3. package/lib/browser/mcp-command-contribution.js.map +1 -1
  4. package/lib/browser/mcp-frontend-application-contribution.d.ts +10 -2
  5. package/lib/browser/mcp-frontend-application-contribution.d.ts.map +1 -1
  6. package/lib/browser/mcp-frontend-application-contribution.js +30 -9
  7. package/lib/browser/mcp-frontend-application-contribution.js.map +1 -1
  8. package/lib/browser/mcp-frontend-service.d.ts +5 -2
  9. package/lib/browser/mcp-frontend-service.d.ts.map +1 -1
  10. package/lib/browser/mcp-frontend-service.js +29 -1
  11. package/lib/browser/mcp-frontend-service.js.map +1 -1
  12. package/lib/browser/mcp-preferences.d.ts.map +1 -1
  13. package/lib/browser/mcp-preferences.js +24 -4
  14. package/lib/browser/mcp-preferences.js.map +1 -1
  15. package/lib/common/mcp-server-manager.d.ts +45 -17
  16. package/lib/common/mcp-server-manager.d.ts.map +1 -1
  17. package/lib/common/mcp-server-manager.js +12 -1
  18. package/lib/common/mcp-server-manager.js.map +1 -1
  19. package/lib/node/mcp-server-manager-impl.d.ts +4 -1
  20. package/lib/node/mcp-server-manager-impl.d.ts.map +1 -1
  21. package/lib/node/mcp-server-manager-impl.js +17 -3
  22. package/lib/node/mcp-server-manager-impl.js.map +1 -1
  23. package/lib/node/mcp-server.d.ts +7 -7
  24. package/lib/node/mcp-server.d.ts.map +1 -1
  25. package/lib/node/mcp-server.js +119 -49
  26. package/lib/node/mcp-server.js.map +1 -1
  27. package/package.json +6 -6
  28. package/src/browser/mcp-command-contribution.ts +2 -1
  29. package/src/browser/mcp-frontend-application-contribution.ts +45 -11
  30. package/src/browser/mcp-frontend-service.ts +35 -5
  31. package/src/browser/mcp-preferences.ts +27 -4
  32. package/src/common/mcp-server-manager.ts +54 -17
  33. package/src/node/mcp-server-manager-impl.ts +21 -4
  34. package/src/node/mcp-server.ts +138 -60
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-command-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-command-contribution.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAO,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAmB,MAAM,8BAA8B,CAAC;AAEnF,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AACF,eAAO,MAAM,aAAa;;;CAGzB,CAAC;AAEF,qBACa,sBAAuB,YAAW,mBAAmB;IAE9D,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,uBAAuB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAGzC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;YAE5C,qBAAqB;IASnC,gBAAgB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;CAiE3D"}
1
+ {"version":3,"file":"mcp-command-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-command-contribution.ts"],"names":[],"mappings":"AAeA,OAAO,EAAE,uBAAuB,EAAE,MAAM,uDAAuD,CAAC;AAChG,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,cAAc,EAAO,MAAM,aAAa,CAAC;AACxF,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,EAAE,kBAAkB,EAAmB,MAAM,8BAA8B,CAAC;AAEnF,eAAO,MAAM,cAAc;;;CAG1B,CAAC;AACF,eAAO,MAAM,aAAa;;;CAGzB,CAAC;AAEF,qBACa,sBAAuB,YAAW,mBAAmB;IAE9D,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,uBAAuB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,cAAc,EAAE,cAAc,CAAC;IAGzC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;YAE5C,qBAAqB;IASnC,gBAAgB,CAAC,eAAe,EAAE,eAAe,GAAG,IAAI;CAkE3D"}
@@ -81,7 +81,8 @@ let MCPCommandContribution = class MCPCommandContribution {
81
81
  await this.mcpFrontendService.startServer(selection);
82
82
  const serverDescription = await this.mcpFrontendService.getServerDescription(selection);
83
83
  if (serverDescription && serverDescription.status) {
84
- if (serverDescription.status === mcp_server_manager_1.MCPServerStatus.Running) {
84
+ if (serverDescription.status === mcp_server_manager_1.MCPServerStatus.Running
85
+ || serverDescription.status === mcp_server_manager_1.MCPServerStatus.Connected) {
85
86
  let toolNames = undefined;
86
87
  if (serverDescription.tools) {
87
88
  toolNames = serverDescription.tools.map(tool => tool.name).join(',');
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-command-contribution.js","sourceRoot":"","sources":["../../src/browser/mcp-command-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-command-contribution.js","sourceRoot":"","sources":["../../src/browser/mcp-command-contribution.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,22 @@
1
1
  import { FrontendApplicationContribution, PreferenceService } from '@theia/core/lib/browser';
2
2
  import { MCPServerDescription, MCPServerManager } from '../common';
3
3
  import { MCPFrontendService } from '../common/mcp-server-manager';
4
- interface MCPServersPreferenceValue {
4
+ interface BaseMCPServerPreferenceValue {
5
+ autostart?: boolean;
6
+ }
7
+ interface LocalMCPServerPreferenceValue extends BaseMCPServerPreferenceValue {
5
8
  command: string;
6
9
  args?: string[];
7
10
  env?: {
8
11
  [key: string]: string;
9
12
  };
10
- autostart?: boolean;
11
13
  }
14
+ interface RemoteMCPServerPreferenceValue extends BaseMCPServerPreferenceValue {
15
+ serverUrl: string;
16
+ serverAuthToken?: string;
17
+ serverAuthTokenHeader?: string;
18
+ }
19
+ type MCPServersPreferenceValue = LocalMCPServerPreferenceValue | RemoteMCPServerPreferenceValue;
12
20
  interface MCPServersPreference {
13
21
  [name: string]: MCPServersPreferenceValue;
14
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-frontend-application-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAsB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAGnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,UAAU,yBAAyB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAChC,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,oBAAoB;IAC1B,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC5C;AAED,kBAAU,oBAAoB,CAAC;IAC3B,SAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,yBAAyB,CAMtE;CACJ;AAeD,qBACa,kCAAmC,YAAW,+BAA+B;IAGtF,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,OAAO,EAAE,gBAAgB,CAAC;IAGpC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAEjD,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAa;IAErE,OAAO,IAAI,IAAI;cAmBC,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3F,SAAS,CAAC,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,GAAG,IAAI;IAgCrE,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,IAAI;IAavE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC;CAY3F"}
1
+ {"version":3,"file":"mcp-frontend-application-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-frontend-application-contribution.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,+BAA+B,EAAsB,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjH,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAGnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAElE,UAAU,4BAA4B;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,UAAU,6BAA8B,SAAQ,4BAA4B;IACxE,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;CACnC;AAED,UAAU,8BAA+B,SAAQ,4BAA4B;IACzE,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAClC;AAED,KAAK,yBAAyB,GAAG,6BAA6B,GAAG,8BAA8B,CAAC;AAEhG,UAAU,oBAAoB;IAC1B,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB,CAAA;CAC5C;AAED,kBAAU,oBAAoB,CAAC;IAC3B,SAAgB,OAAO,CAAC,GAAG,EAAE,OAAO,GAAG,GAAG,IAAI,yBAAyB,CAUtE;CACJ;AAeD,qBACa,kCAAmC,YAAW,+BAA+B;IAGtF,SAAS,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAG/C,SAAS,CAAC,OAAO,EAAE,gBAAgB,CAAC;IAGpC,SAAS,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAEjD,SAAS,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,CAAa;IAErE,OAAO,IAAI,IAAI;cAmBC,gBAAgB,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3F,SAAS,CAAC,mBAAmB,CAAC,UAAU,EAAE,oBAAoB,GAAG,IAAI;IAgCrE,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC,GAAG,IAAI;IAavE,SAAS,CAAC,YAAY,CAAC,OAAO,EAAE,oBAAoB,GAAG,GAAG,CAAC,MAAM,EAAE,oBAAoB,CAAC;CA+B3F"}
@@ -23,15 +23,18 @@ const common_1 = require("../common");
23
23
  const mcp_preferences_1 = require("./mcp-preferences");
24
24
  const mcp_server_manager_1 = require("../common/mcp-server-manager");
25
25
  ;
26
- ;
27
26
  var MCPServersPreference;
28
27
  (function (MCPServersPreference) {
29
28
  function isValue(obj) {
30
29
  return !!obj && typeof obj === 'object' &&
31
- 'command' in obj && typeof obj.command === 'string' &&
30
+ ('command' in obj || 'serverUrl' in obj) &&
31
+ (!('command' in obj) || typeof obj.command === 'string') &&
32
32
  (!('args' in obj) || Array.isArray(obj.args) && obj.args.every(arg => typeof arg === 'string')) &&
33
33
  (!('env' in obj) || !!obj.env && typeof obj.env === 'object' && Object.values(obj.env).every(value => typeof value === 'string')) &&
34
- (!('autostart' in obj) || typeof obj.autostart === 'boolean');
34
+ (!('autostart' in obj) || typeof obj.autostart === 'boolean') &&
35
+ (!('serverUrl' in obj) || typeof obj.serverUrl === 'string') &&
36
+ (!('serverAuthToken' in obj) || typeof obj.serverAuthToken === 'string') &&
37
+ (!('serverAuthTokenHeader' in obj) || typeof obj.serverAuthTokenHeader === 'string');
35
38
  }
36
39
  MCPServersPreference.isValue = isValue;
37
40
  })(MCPServersPreference || (MCPServersPreference = {}));
@@ -117,12 +120,30 @@ let McpFrontendApplicationContribution = class McpFrontendApplicationContributio
117
120
  convertToMap(servers) {
118
121
  const map = new Map();
119
122
  Object.entries(servers).forEach(([name, description]) => {
120
- map.set(name, {
121
- name,
122
- ...description,
123
- autostart: 'autostart' in description ? description.autostart : true,
124
- env: description.env || undefined
125
- });
123
+ let filteredDescription;
124
+ if ('serverUrl' in description) {
125
+ // Create RemoteMCPServerDescription by picking only remote-specific properties
126
+ const { serverUrl, serverAuthToken, serverAuthTokenHeader, autostart } = description;
127
+ filteredDescription = {
128
+ name,
129
+ serverUrl,
130
+ ...(serverAuthToken && { serverAuthToken }),
131
+ ...(serverAuthTokenHeader && { serverAuthTokenHeader }),
132
+ autostart: autostart !== null && autostart !== void 0 ? autostart : true,
133
+ };
134
+ }
135
+ else {
136
+ // Create LocalMCPServerDescription by picking only local-specific properties
137
+ const { command, args, env, autostart } = description;
138
+ filteredDescription = {
139
+ name,
140
+ command,
141
+ ...(args && { args }),
142
+ ...(env && { env }),
143
+ autostart: autostart !== null && autostart !== void 0 ? autostart : true,
144
+ };
145
+ }
146
+ map.set(name, filteredDescription);
126
147
  });
127
148
  return map;
128
149
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/mcp-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-frontend-application-contribution.js","sourceRoot":"","sources":["../../src/browser/mcp-frontend-application-contribution.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,13 @@
1
- import { MCPFrontendService, MCPServer, MCPServerDescription, MCPServerManager } from '../common/mcp-server-manager';
1
+ import { MCPFrontendService, MCPServerDescription, MCPServerManager } from '../common/mcp-server-manager';
2
2
  import { ToolInvocationRegistry, ToolRequest, PromptService } from '@theia/ai-core';
3
+ import { ListToolsResult } from '@modelcontextprotocol/sdk/types';
3
4
  export declare class MCPFrontendServiceImpl implements MCPFrontendService {
4
5
  protected readonly mcpServerManager: MCPServerManager;
5
6
  protected readonly toolInvocationRegistry: ToolInvocationRegistry;
6
7
  protected readonly promptService: PromptService;
7
8
  startServer(serverName: string): Promise<void>;
9
+ hasServer(serverName: string): Promise<boolean>;
10
+ isServerStarted(serverName: string): Promise<boolean>;
8
11
  registerToolsForAllStartedServers(): Promise<void>;
9
12
  registerTools(serverName: string): Promise<void>;
10
13
  getPromptTemplateId(serverName: string): string;
@@ -13,7 +16,7 @@ export declare class MCPFrontendServiceImpl implements MCPFrontendService {
13
16
  getStartedServers(): Promise<string[]>;
14
17
  getServerNames(): Promise<string[]>;
15
18
  getServerDescription(name: string): Promise<MCPServerDescription | undefined>;
16
- getTools(serverName: string): Promise<ReturnType<MCPServer['getTools']> | undefined>;
19
+ getTools(serverName: string): Promise<ListToolsResult | undefined>;
17
20
  addOrUpdateServer(description: MCPServerDescription): Promise<void>;
18
21
  private convertToToolRequest;
19
22
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-frontend-service.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-frontend-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AACrH,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEpF,qBACa,sBAAuB,YAAW,kBAAkB;IAG7D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAE1C,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtD,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAI/C,SAAS,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;IAW/E,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAItC,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7B,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAI7E,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC;IASpF,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE,OAAO,CAAC,oBAAoB;CAyB/B"}
1
+ {"version":3,"file":"mcp-frontend-service.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-frontend-service.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAC1G,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,aAAa,EAA0C,MAAM,gBAAgB,CAAC;AAC5H,OAAO,EAAE,eAAe,EAAe,MAAM,iCAAiC,CAAC;AAE/E,qBACa,sBAAuB,YAAW,kBAAkB;IAG7D,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAGtD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAGlE,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAE1C,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK9C,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAK/C,eAAe,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKrD,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC;IAOlD,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAYtD,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM;IAI/C,SAAS,CAAC,oBAAoB,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;IAW/E,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAMnD,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAItC,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI7B,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAI7E,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,SAAS,CAAC;IASlE,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE,OAAO,CAAC,oBAAoB;CA4C/B"}
@@ -25,6 +25,14 @@ let MCPFrontendServiceImpl = class MCPFrontendServiceImpl {
25
25
  await this.mcpServerManager.startServer(serverName);
26
26
  await this.registerTools(serverName);
27
27
  }
28
+ async hasServer(serverName) {
29
+ const serverNames = await this.getServerNames();
30
+ return serverNames.includes(serverName);
31
+ }
32
+ async isServerStarted(serverName) {
33
+ const startedServers = await this.getStartedServers();
34
+ return startedServers.includes(serverName);
35
+ }
28
36
  async registerToolsForAllStartedServers() {
29
37
  const startedServers = await this.getStartedServers();
30
38
  for (const serverName of startedServers) {
@@ -93,8 +101,28 @@ let MCPFrontendServiceImpl = class MCPFrontendServiceImpl {
93
101
  },
94
102
  description: tool.description,
95
103
  handler: async (arg_string) => {
104
+ var _a;
96
105
  try {
97
- return await this.mcpServerManager.callTool(serverName, tool.name, arg_string);
106
+ const result = await this.mcpServerManager.callTool(serverName, tool.name, arg_string);
107
+ if (result.isError) {
108
+ const textContent = result.content.find(callContent => callContent.type === 'text');
109
+ return { content: [{ type: 'error', data: (_a = textContent === null || textContent === void 0 ? void 0 : textContent.text) !== null && _a !== void 0 ? _a : 'Unknown Error' }] };
110
+ }
111
+ const content = result.content.map(callContent => {
112
+ switch (callContent.type) {
113
+ case 'image':
114
+ return { type: 'image', base64data: callContent.data, mimeType: callContent.mimeType };
115
+ case 'text':
116
+ return { type: 'text', text: callContent.text };
117
+ case 'resource': {
118
+ return { type: 'text', text: JSON.stringify(callContent.resource) };
119
+ }
120
+ default: {
121
+ return { type: 'text', text: JSON.stringify(callContent) };
122
+ }
123
+ }
124
+ });
125
+ return { content };
98
126
  }
99
127
  catch (error) {
100
128
  console.error(`Error in tool handler for ${tool.name} on MCP server ${serverName}:`, error);
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-frontend-service.js","sourceRoot":"","sources":["../../src/browser/mcp-frontend-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-frontend-service.js","sourceRoot":"","sources":["../../src/browser/mcp-frontend-service.ts"],"names":[],"mappings":";;;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,4DAAkE;AAClE,qEAA0G;AAC1G,4CAA4H;AAIrH,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAW/B,KAAK,CAAC,WAAW,CAAC,UAAkB;QAChC,MAAM,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,UAAkB;QAC9B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;QAChD,OAAO,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,UAAkB;QACpC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtD,OAAO,cAAc,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC/C,CAAC;IAED,KAAK,CAAC,iCAAiC;QACnC,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACtD,KAAK,MAAM,UAAU,IAAI,cAAc,EAAE,CAAC;YACtC,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QACzC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,UAAkB;QAClC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QACtD,IAAI,aAAa,EAAE,CAAC;YAChB,MAAM,YAAY,GAAkB,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;YACjH,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,CAC/B,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,WAAW,CAAC,CACxD,CAAC;YAEF,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;QACxD,CAAC;IACL,CAAC;IAED,mBAAmB,CAAC,UAAkB;QAClC,OAAO,OAAO,UAAU,QAAQ,CAAC;IACrC,CAAC;IAES,oBAAoB,CAAC,UAAkB,EAAE,YAA2B;QAC1E,MAAM,UAAU,GAAG,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;QAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAExC,IAAI,CAAC,aAAa,CAAC,wBAAwB,CAAC;YACxC,EAAE,EAAE,UAAU;YACd,QAAQ;SACX,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,UAAkB;QAC/B,IAAI,CAAC,sBAAsB,CAAC,kBAAkB,CAAC,OAAO,UAAU,EAAE,CAAC,CAAC;QACpE,IAAI,CAAC,aAAa,CAAC,oBAAoB,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,CAAC,CAAC;QAC9E,MAAM,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;IAED,iBAAiB;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,EAAE,CAAC;IACrD,CAAC;IAED,cAAc;QACV,OAAO,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,IAAY;QACnC,OAAO,IAAI,CAAC,gBAAgB,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;IAC5D,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,UAAkB;QAC7B,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mCAAmC,GAAG,KAAK,CAAC,CAAC;YAC3D,OAAO,SAAS,CAAC;QACrB,CAAC;IACL,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,WAAiC;QACrD,OAAO,IAAI,CAAC,gBAAgB,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAChE,CAAC;IAEO,oBAAoB,CAAC,IAAwE,EAAE,UAAkB;QACrH,MAAM,EAAE,GAAG,OAAO,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5C,OAAO;YACH,EAAE,EAAE,EAAE;YACN,IAAI,EAAE,EAAE;YACR,YAAY,EAAE,OAAO,UAAU,EAAE;YACjC,UAAU,EAAE,qBAAW,CAAC,uBAAuB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBAChE,IAAI,EAAE,IAAI,CAAC,WAAW,CAAC,IAAI;gBAC3B,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU;gBACvC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ;aACtC,CAAC,CAAC,CAAC;gBACA,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,EAAE;aACjB;YACD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,KAAK,EAAE,UAAkB,EAA4B,EAAE;;gBAC5D,IAAI,CAAC;oBACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,UAAU,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;oBACvF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACjB,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,WAAW,CAAC,IAAI,KAAK,MAAM,CAA4B,CAAC;wBAC/G,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,IAAI,mCAAI,eAAe,EAAE,CAAC,EAAE,CAAC;oBACxF,CAAC;oBACD,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAwB,WAAW,CAAC,EAAE;wBACpE,QAAQ,WAAW,CAAC,IAAI,EAAE,CAAC;4BACvB,KAAK,OAAO;gCACR,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,EAAE,CAAC;4BAC3F,KAAK,MAAM;gCACP,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,CAAC,IAAI,EAAE,CAAC;4BACpD,KAAK,UAAU,CAAC,CAAC,CAAC;gCACd,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,EAAE,CAAC;4BACxE,CAAC;4BACD,OAAO,CAAC,CAAC,CAAC;gCACN,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,EAAE,CAAC;4BAC/D,CAAC;wBACL,CAAC;oBACL,CAAC,CAAC,CAAC;oBACH,OAAO,EAAE,OAAO,EAAE,CAAC;gBACvB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,IAAI,CAAC,IAAI,kBAAkB,UAAU,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC5F,MAAM,KAAK,CAAC;gBAChB,CAAC;YACL,CAAC;SACJ,CAAC;IACN,CAAC;CACJ,CAAA;AAvIY,wDAAsB;AAGZ;IADlB,IAAA,kBAAM,EAAC,qCAAgB,CAAC;;gEAC6B;AAGnC;IADlB,IAAA,kBAAM,EAAC,gCAAsB,CAAC;;sEACmC;AAG/C;IADlB,IAAA,kBAAM,EAAC,uBAAa,CAAC;;6DAC0B;iCATvC,sBAAsB;IADlC,IAAA,sBAAU,GAAE;GACA,sBAAsB,CAuIlC"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-preferences.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-preferences.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6DAA6D,CAAC;AAE/F,eAAO,MAAM,gBAAgB,+BAA+B,CAAC;AAE7D,eAAO,MAAM,0BAA0B,EAAE,gBAmExC,CAAC"}
1
+ {"version":3,"file":"mcp-preferences.d.ts","sourceRoot":"","sources":["../../src/browser/mcp-preferences.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6DAA6D,CAAC;AAE/F,eAAO,MAAM,gBAAgB,+BAA+B,CAAC;AAE7D,eAAO,MAAM,0BAA0B,EAAE,gBA0FxC,CAAC"}
@@ -23,9 +23,10 @@ exports.McpServersPreferenceSchema = {
23
23
  properties: {
24
24
  [exports.MCP_SERVERS_PREF]: {
25
25
  type: 'object',
26
- title: core_1.nls.localize('theia/ai/mcp/servers/title', 'MCP Servers Configuration'),
27
- markdownDescription: core_1.nls.localize('theia/ai/mcp/servers/mdDescription', 'Configure MCP servers with command, arguments, optionally environment variables, and autostart \
28
- (true by default). Each server is identified by a unique key, such as "brave-search" or "filesystem". \
26
+ title: core_1.nls.localize('theia/ai/mcp/servers/title', 'MCP Server Configuration'),
27
+ markdownDescription: core_1.nls.localize('theia/ai/mcp/servers/mdDescription', 'Configure MCP servers either local with command, arguments and optionally environment variables, \
28
+ or remote with server URL, authentication token and optionally an authentication header name. Additionally it is possible to configure autostart (true by default). \
29
+ Each server is identified by a unique key, such as "brave-search" or "filesystem". \
29
30
  To start a server, use the "MCP: Start MCP Server" command, which enables you to select the desired server. \
30
31
  To stop a server, use the "MCP: Stop MCP Server" command. \
31
32
  Please note that autostart will only take effect after a restart, you need to start a server manually for the first time.\
@@ -50,6 +51,10 @@ Example configuration:\n\
50
51
  "CUSTOM_ENV_VAR": "custom-value"\n\
51
52
  },\n\
52
53
  "autostart": false\n\
54
+ },\n\
55
+ "jira": {\n\
56
+ "serverUrl": "YOUR_JIRA_MCP_SERVER_URL",\n\
57
+ "serverAuthToken": "YOUR_JIRA_MCP_SERVER_TOKEN"\n\
53
58
  }\n\
54
59
  }\n```'),
55
60
  additionalProperties: {
@@ -78,9 +83,24 @@ Example configuration:\n\
78
83
  title: core_1.nls.localize('theia/ai/mcp/servers/autostart/title', 'Autostart'),
79
84
  markdownDescription: core_1.nls.localize('theia/ai/mcp/servers/autostart/mdDescription', 'Automatically start this server when the frontend starts. Newly added servers are not immediately auto started, but on restart'),
80
85
  default: true
86
+ },
87
+ serverUrl: {
88
+ type: 'string',
89
+ title: core_1.nls.localize('theia/ai/mcp/servers/serverUrl/title', 'Server URL'),
90
+ markdownDescription: core_1.nls.localize('theia/ai/mcp/servers/serverUrl/mdDescription', 'The URL of the remote MCP server. If provided, the server will connect to this URL instead of starting a local process.'),
91
+ },
92
+ serverAuthToken: {
93
+ type: 'string',
94
+ title: core_1.nls.localize('theia/ai/mcp/servers/serverAuthToken/title', 'Authentication Token'),
95
+ markdownDescription: core_1.nls.localize('theia/ai/mcp/servers/serverAuthToken/mdDescription', 'The authentication token for the server, if required. This is used to authenticate with the remote server.'),
96
+ },
97
+ serverAuthTokenHeader: {
98
+ type: 'string',
99
+ title: core_1.nls.localize('theia/ai/mcp/servers/serverAuthTokenHeader/title', 'Authentication Header Name'),
100
+ markdownDescription: core_1.nls.localize('theia/ai/mcp/servers/serverAuthTokenHeader/mdDescription', 'The header name to use for the server authentication token. If not provided, "Authorization" with "Bearer" will be used.'),
81
101
  }
82
102
  },
83
- required: ['command', 'args']
103
+ required: []
84
104
  }
85
105
  }
86
106
  }
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-preferences.js","sourceRoot":"","sources":["../../src/browser/mcp-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,sCAAkC;AAGrB,QAAA,gBAAgB,GAAG,4BAA4B,CAAC;AAEhD,QAAA,0BAA0B,GAAqB;IAC1D,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,CAAC,wBAAgB,CAAC,EAAE;YAClB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,4BAA4B,EAAE,2BAA2B,CAAC;YAC9E,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BvE,CAAC;YACF,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,mCAAmC,CAAC;wBAC9F,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,4CAA4C,EAAE,iEAAiE,CAAC;qBACnJ;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,iCAAiC,EAAE,2BAA2B,CAAC;wBACnF,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,yCAAyC,EAAE,+CAA+C,CAAC;qBAC9H;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,gCAAgC,EAAE,uBAAuB,CAAC;wBAC9E,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,2EAA2E,CAAC;wBACxJ,oBAAoB,EAAE;4BACpB,IAAI,EAAE,QAAQ;yBACf;qBACF;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EAAE,WAAW,CAAC;wBACxE,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAC9E,gIAAgI,CAAC;wBACnI,OAAO,EAAE,IAAI;qBACd;iBACF;gBACD,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC;aAC9B;SACF;KACF;CACF,CAAC"}
1
+ {"version":3,"file":"mcp-preferences.js","sourceRoot":"","sources":["../../src/browser/mcp-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAEhF,sCAAkC;AAGrB,QAAA,gBAAgB,GAAG,4BAA4B,CAAC;AAEhD,QAAA,0BAA0B,GAAqB;IAC1D,IAAI,EAAE,QAAQ;IACd,UAAU,EAAE;QACV,CAAC,wBAAgB,CAAC,EAAE;YAClB,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,4BAA4B,EAAE,0BAA0B,CAAC;YAC7E,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAgCvE,CAAC;YACF,oBAAoB,EAAE;gBACpB,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,OAAO,EAAE;wBACP,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,mCAAmC,CAAC;wBAC9F,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,4CAA4C,EAAE,iEAAiE,CAAC;qBACnJ;oBACD,IAAI,EAAE;wBACJ,IAAI,EAAE,OAAO;wBACb,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,iCAAiC,EAAE,2BAA2B,CAAC;wBACnF,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,yCAAyC,EAAE,+CAA+C,CAAC;qBAC9H;oBACD,GAAG,EAAE;wBACH,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,gCAAgC,EAAE,uBAAuB,CAAC;wBAC9E,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,wCAAwC,EAAE,2EAA2E,CAAC;wBACxJ,oBAAoB,EAAE;4BACpB,IAAI,EAAE,QAAQ;yBACf;qBACF;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EAAE,WAAW,CAAC;wBACxE,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAC9E,gIAAgI,CAAC;wBACnI,OAAO,EAAE,IAAI;qBACd;oBACD,SAAS,EAAE;wBACT,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,sCAAsC,EAAE,YAAY,CAAC;wBACzE,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,8CAA8C,EAC9E,yHAAyH,CAAC;qBAC7H;oBACD,eAAe,EAAE;wBACf,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,4CAA4C,EAAE,sBAAsB,CAAC;wBACzF,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,oDAAoD,EACpF,4GAA4G,CAAC;qBAChH;oBACD,qBAAqB,EAAE;wBACrB,IAAI,EAAE,QAAQ;wBACd,KAAK,EAAE,UAAG,CAAC,QAAQ,CAAC,kDAAkD,EAAE,4BAA4B,CAAC;wBACrG,mBAAmB,EAAE,UAAG,CAAC,QAAQ,CAAC,0DAA0D,EAC1F,0HAA0H,CAAC;qBAC9H;iBACF;gBACD,QAAQ,EAAE,EAAE;aACb;SACF;KACF;CACF,CAAC"}
@@ -1,15 +1,17 @@
1
- import type { Client } from '@modelcontextprotocol/sdk/client/index';
1
+ import { CallToolResult, ListResourcesResult, ListToolsResult, ReadResourceResult } from '@modelcontextprotocol/sdk/types';
2
2
  import { Event } from '@theia/core/lib/common/event';
3
3
  export declare const MCPFrontendService: unique symbol;
4
4
  export interface MCPFrontendService {
5
5
  startServer(serverName: string): Promise<void>;
6
+ hasServer(serverName: string): Promise<boolean>;
7
+ isServerStarted(serverName: string): Promise<boolean>;
6
8
  registerToolsForAllStartedServers(): Promise<void>;
7
9
  stopServer(serverName: string): Promise<void>;
8
10
  addOrUpdateServer(description: MCPServerDescription): Promise<void>;
9
11
  getStartedServers(): Promise<string[]>;
10
12
  getServerNames(): Promise<string[]>;
11
13
  getServerDescription(name: string): Promise<MCPServerDescription | undefined>;
12
- getTools(serverName: string): Promise<ReturnType<MCPServer['getTools']> | undefined>;
14
+ getTools(serverName: string): Promise<ListToolsResult | undefined>;
13
15
  getPromptTemplateId(serverName: string): string;
14
16
  }
15
17
  export declare const MCPFrontendNotificationService: unique symbol;
@@ -18,15 +20,17 @@ export interface MCPFrontendNotificationService {
18
20
  didUpdateMCPServers(): void;
19
21
  }
20
22
  export interface MCPServer {
21
- callTool(toolName: string, arg_string: string): ReturnType<Client['callTool']>;
22
- getTools(): ReturnType<Client['listTools']>;
23
+ callTool(toolName: string, arg_string: string): Promise<CallToolResult>;
24
+ getTools(): Promise<ListToolsResult>;
25
+ readResource(resourceId: string): Promise<ReadResourceResult>;
26
+ getResources(): Promise<ListResourcesResult>;
23
27
  description: MCPServerDescription;
24
28
  }
25
29
  export interface MCPServerManager {
26
- callTool(serverName: string, toolName: string, arg_string: string): ReturnType<MCPServer['callTool']>;
30
+ callTool(serverName: string, toolName: string, arg_string: string): Promise<CallToolResult>;
27
31
  removeServer(name: string): void;
28
32
  addOrUpdateServer(description: MCPServerDescription): void;
29
- getTools(serverName: string): ReturnType<MCPServer['getTools']>;
33
+ getTools(serverName: string): Promise<ListToolsResult>;
30
34
  getServerNames(): Promise<string[]>;
31
35
  getServerDescription(name: string): Promise<MCPServerDescription | undefined>;
32
36
  startServer(serverName: string): Promise<void>;
@@ -34,6 +38,8 @@ export interface MCPServerManager {
34
38
  getRunningServers(): Promise<string[]>;
35
39
  setClient(client: MCPFrontendNotificationService): void;
36
40
  disconnectClient(client: MCPFrontendNotificationService): void;
41
+ readResource(serverName: string, resourceId: string): Promise<ReadResourceResult>;
42
+ getResources(serverName: string): Promise<ListResourcesResult>;
37
43
  }
38
44
  export interface ToolInformation {
39
45
  name: string;
@@ -41,15 +47,36 @@ export interface ToolInformation {
41
47
  }
42
48
  export declare enum MCPServerStatus {
43
49
  NotRunning = "Not Running",
50
+ NotConnected = "Not Connected",
44
51
  Starting = "Starting",
52
+ Connecting = "Connecting",
45
53
  Running = "Running",
54
+ Connected = "Connected",
46
55
  Errored = "Errored"
47
56
  }
48
- export interface MCPServerDescription {
57
+ export interface BaseMCPServerDescription {
49
58
  /**
50
59
  * The unique name of the MCP server.
51
60
  */
52
61
  name: string;
62
+ /**
63
+ * Flag indicating whether the server should automatically start when the application starts.
64
+ */
65
+ autostart?: boolean;
66
+ /**
67
+ * The current status of the server. Optional because only set by the server.
68
+ */
69
+ status?: MCPServerStatus;
70
+ /**
71
+ * Last error message that the server has returned.
72
+ */
73
+ error?: string;
74
+ /**
75
+ * List of available tools for the server. Returns the name and description if available.
76
+ */
77
+ tools?: ToolInformation[];
78
+ }
79
+ export interface LocalMCPServerDescription extends BaseMCPServerDescription {
53
80
  /**
54
81
  * The command to execute the MCP server.
55
82
  */
@@ -64,23 +91,24 @@ export interface MCPServerDescription {
64
91
  env?: {
65
92
  [key: string]: string;
66
93
  };
94
+ }
95
+ export interface RemoteMCPServerDescription extends BaseMCPServerDescription {
67
96
  /**
68
- * Flag indicating whether the server should automatically start when the application starts.
69
- */
70
- autostart?: boolean;
71
- /**
72
- * The current status of the server. Optional because only set by the server.
97
+ * The URL of the remote MCP server.
73
98
  */
74
- status?: MCPServerStatus;
99
+ serverUrl: string;
75
100
  /**
76
- * Last error message that the server has returned.
101
+ * The authentication token for the server, if required.
77
102
  */
78
- error?: string;
103
+ serverAuthToken?: string;
79
104
  /**
80
- * List of available tools for the server. Returns the name and description if available.
105
+ * The header name to use for the server authentication token.
81
106
  */
82
- tools?: ToolInformation[];
107
+ serverAuthTokenHeader?: string;
83
108
  }
109
+ export type MCPServerDescription = LocalMCPServerDescription | RemoteMCPServerDescription;
110
+ export declare function isLocalMCPServerDescription(description: MCPServerDescription): description is LocalMCPServerDescription;
111
+ export declare function isRemoteMCPServerDescription(description: MCPServerDescription): description is RemoteMCPServerDescription;
84
112
  export declare const MCPServerManager: unique symbol;
85
113
  export declare const MCPServerManagerPath = "/services/mcpservermanager";
86
114
  //# sourceMappingURL=mcp-server-manager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server-manager.d.ts","sourceRoot":"","sources":["../../src/common/mcp-server-manager.ts"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wCAAwC,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAErD,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAC/D,MAAM,WAAW,kBAAkB;IAC/B,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,iCAAiC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACpC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;IAC9E,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;IACrF,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;CACnD;AAED,eAAO,MAAM,8BAA8B,eAA2C,CAAC;AACvF,MAAM,WAAW,8BAA8B;IAC3C,QAAQ,CAAC,qBAAqB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;IAC5C,mBAAmB,IAAI,IAAI,CAAC;CAC/B;AAED,MAAM,WAAW,SAAS;IACtB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IAC/E,QAAQ,IAAI,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;IAC5C,WAAW,EAAE,oBAAoB,CAAC;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IACtG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAC3D,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC;IAChE,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACpC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC,CAAC;IAC9E,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC/C,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9C,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACvC,SAAS,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI,CAAC;IACxD,gBAAgB,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI,CAAC;CAClE;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,oBAAY,eAAe;IACvB,UAAU,gBAAgB;IAC1B,QAAQ,aAAa;IACrB,OAAO,YAAY;IACnB,OAAO,YAAY;CACtB;AAED,MAAM,WAAW,oBAAoB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,GAAG,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IAEhC;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,MAAM,CAAC,EAAE,eAAe,CAAC;IAEzB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,KAAK,CAAC,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,eAAO,MAAM,gBAAgB,eAA6B,CAAC;AAC3D,eAAO,MAAM,oBAAoB,+BAA+B,CAAC"}
1
+ {"version":3,"file":"mcp-server-manager.d.ts","sourceRoot":"","sources":["../../src/common/mcp-server-manager.ts"],"names":[],"mappings":"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"}
@@ -15,16 +15,27 @@
15
15
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
16
  // *****************************************************************************
17
17
  Object.defineProperty(exports, "__esModule", { value: true });
18
- exports.MCPServerManagerPath = exports.MCPServerManager = exports.MCPServerStatus = exports.MCPFrontendNotificationService = exports.MCPFrontendService = void 0;
18
+ exports.MCPServerManagerPath = exports.MCPServerManager = exports.isRemoteMCPServerDescription = exports.isLocalMCPServerDescription = exports.MCPServerStatus = exports.MCPFrontendNotificationService = exports.MCPFrontendService = void 0;
19
19
  exports.MCPFrontendService = Symbol('MCPFrontendService');
20
20
  exports.MCPFrontendNotificationService = Symbol('MCPFrontendNotificationService');
21
21
  var MCPServerStatus;
22
22
  (function (MCPServerStatus) {
23
23
  MCPServerStatus["NotRunning"] = "Not Running";
24
+ MCPServerStatus["NotConnected"] = "Not Connected";
24
25
  MCPServerStatus["Starting"] = "Starting";
26
+ MCPServerStatus["Connecting"] = "Connecting";
25
27
  MCPServerStatus["Running"] = "Running";
28
+ MCPServerStatus["Connected"] = "Connected";
26
29
  MCPServerStatus["Errored"] = "Errored";
27
30
  })(MCPServerStatus || (exports.MCPServerStatus = MCPServerStatus = {}));
31
+ function isLocalMCPServerDescription(description) {
32
+ return description.command !== undefined;
33
+ }
34
+ exports.isLocalMCPServerDescription = isLocalMCPServerDescription;
35
+ function isRemoteMCPServerDescription(description) {
36
+ return description.serverUrl !== undefined;
37
+ }
38
+ exports.isRemoteMCPServerDescription = isRemoteMCPServerDescription;
28
39
  exports.MCPServerManager = Symbol('MCPServerManager');
29
40
  exports.MCPServerManagerPath = '/services/mcpservermanager';
30
41
  //# sourceMappingURL=mcp-server-manager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server-manager.js","sourceRoot":"","sources":["../../src/common/mcp-server-manager.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAKnE,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAalD,QAAA,8BAA8B,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAC;AA+BvF,IAAY,eAKX;AALD,WAAY,eAAe;IACvB,6CAA0B,CAAA;IAC1B,wCAAqB,CAAA;IACrB,sCAAmB,CAAA;IACnB,sCAAmB,CAAA;AACvB,CAAC,EALW,eAAe,+BAAf,eAAe,QAK1B;AA4CY,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAC9C,QAAA,oBAAoB,GAAG,4BAA4B,CAAC"}
1
+ {"version":3,"file":"mcp-server-manager.js","sourceRoot":"","sources":["../../src/common/mcp-server-manager.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;;;AAKnE,QAAA,kBAAkB,GAAG,MAAM,CAAC,oBAAoB,CAAC,CAAC;AAelD,QAAA,8BAA8B,GAAG,MAAM,CAAC,gCAAgC,CAAC,CAAC;AAmCvF,IAAY,eAQX;AARD,WAAY,eAAe;IACvB,6CAA0B,CAAA;IAC1B,iDAA8B,CAAA;IAC9B,wCAAqB,CAAA;IACrB,4CAAyB,CAAA;IACzB,sCAAmB,CAAA;IACnB,0CAAuB,CAAA;IACvB,sCAAmB,CAAA;AACvB,CAAC,EARW,eAAe,+BAAf,eAAe,QAQ1B;AAiED,SAAgB,2BAA2B,CAAC,WAAiC;IACzE,OAAQ,WAAyC,CAAC,OAAO,KAAK,SAAS,CAAC;AAC5E,CAAC;AAFD,kEAEC;AACD,SAAgB,4BAA4B,CAAC,WAAiC;IAC1E,OAAQ,WAA0C,CAAC,SAAS,KAAK,SAAS,CAAC;AAC/E,CAAC;AAFD,oEAEC;AAEY,QAAA,gBAAgB,GAAG,MAAM,CAAC,kBAAkB,CAAC,CAAC;AAC9C,QAAA,oBAAoB,GAAG,4BAA4B,CAAC"}
@@ -1,13 +1,14 @@
1
1
  import { MCPServerDescription, MCPServerManager, MCPFrontendNotificationService } from '../common/mcp-server-manager';
2
2
  import { MCPServer } from './mcp-server';
3
3
  import { Disposable } from '@theia/core/lib/common/disposable';
4
+ import { CallToolResult, ListResourcesResult, ReadResourceResult } from '@modelcontextprotocol/sdk/types';
4
5
  export declare class MCPServerManagerImpl implements MCPServerManager {
5
6
  protected servers: Map<string, MCPServer>;
6
7
  protected clients: Array<MCPFrontendNotificationService>;
7
8
  protected serverListeners: Map<string, Disposable>;
8
9
  stopServer(serverName: string): Promise<void>;
9
10
  getRunningServers(): Promise<string[]>;
10
- callTool(serverName: string, toolName: string, arg_string: string): ReturnType<MCPServer['callTool']>;
11
+ callTool(serverName: string, toolName: string, arg_string: string): Promise<CallToolResult>;
11
12
  startServer(serverName: string): Promise<void>;
12
13
  getServerNames(): Promise<string[]>;
13
14
  getServerDescription(name: string): Promise<MCPServerDescription | undefined>;
@@ -17,5 +18,7 @@ export declare class MCPServerManagerImpl implements MCPServerManager {
17
18
  setClient(client: MCPFrontendNotificationService): void;
18
19
  disconnectClient(client: MCPFrontendNotificationService): void;
19
20
  private notifyClients;
21
+ readResource(serverName: string, resourceId: string): Promise<ReadResourceResult>;
22
+ getResources(serverName: string): Promise<ListResourcesResult>;
20
23
  }
21
24
  //# sourceMappingURL=mcp-server-manager-impl.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server-manager-impl.d.ts","sourceRoot":"","sources":["../../src/node/mcp-server-manager-impl.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AACtH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAE/D,qBACa,oBAAqB,YAAW,gBAAgB;IAEzD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAa;IACtD,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,8BAA8B,CAAC,CAAM;IAC9D,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAa;IAEzD,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAU5C,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAQ/F,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS9C,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAInC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAKtE,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAQ5E,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,IAAI;IAoB1D,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAkBhC,SAAS,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI;IAIvD,gBAAgB,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI;IAU9D,OAAO,CAAC,aAAa;CAGxB"}
1
+ {"version":3,"file":"mcp-server-manager-impl.d.ts","sourceRoot":"","sources":["../../src/node/mcp-server-manager-impl.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,8BAA8B,EAAE,MAAM,8BAA8B,CAAC;AACtH,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,mCAAmC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAE1G,qBACa,oBAAqB,YAAW,gBAAgB;IAEzD,SAAS,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAa;IACtD,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,8BAA8B,CAAC,CAAM;IAC9D,SAAS,CAAC,eAAe,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAa;IAEzD,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAU7C,iBAAiB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAU5C,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC;IAQrF,WAAW,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAS9C,cAAc,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAInC,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,GAAG,SAAS,CAAC;IAKtE,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;IAQ5E,iBAAiB,CAAC,WAAW,EAAE,oBAAoB,GAAG,IAAI;IAoB1D,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAkBhC,SAAS,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI;IAIvD,gBAAgB,CAAC,MAAM,EAAE,8BAA8B,GAAG,IAAI;IAU9D,OAAO,CAAC,aAAa;IAIrB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAQjF,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAOjE"}
@@ -30,7 +30,7 @@ let MCPServerManagerImpl = class MCPServerManagerImpl {
30
30
  if (!server) {
31
31
  throw new Error(`MCP server "${serverName}" not found.`);
32
32
  }
33
- server.stop();
33
+ await server.stop();
34
34
  console.log(`MCP server "${serverName}" stopped.`);
35
35
  this.notifyClients();
36
36
  }
@@ -63,14 +63,14 @@ let MCPServerManagerImpl = class MCPServerManagerImpl {
63
63
  }
64
64
  async getServerDescription(name) {
65
65
  const server = this.servers.get(name);
66
- return server ? server.getDescription() : undefined;
66
+ return server ? await server.getDescription() : undefined;
67
67
  }
68
68
  async getTools(serverName) {
69
69
  const server = this.servers.get(serverName);
70
70
  if (!server) {
71
71
  throw new Error(`MCP server "${serverName}" not found.`);
72
72
  }
73
- return server.getTools();
73
+ return await server.getTools();
74
74
  }
75
75
  addOrUpdateServer(description) {
76
76
  const existingServer = this.servers.get(description.name);
@@ -121,6 +121,20 @@ let MCPServerManagerImpl = class MCPServerManagerImpl {
121
121
  notifyClients() {
122
122
  this.clients.forEach(client => client.didUpdateMCPServers());
123
123
  }
124
+ readResource(serverName, resourceId) {
125
+ const server = this.servers.get(serverName);
126
+ if (!server) {
127
+ throw new Error(`MCP server "${serverName}" not found.`);
128
+ }
129
+ return server.readResource(resourceId);
130
+ }
131
+ getResources(serverName) {
132
+ const server = this.servers.get(serverName);
133
+ if (!server) {
134
+ throw new Error(`MCP server "${serverName}" not found.`);
135
+ }
136
+ return server.getResources();
137
+ }
124
138
  };
125
139
  exports.MCPServerManagerImpl = MCPServerManagerImpl;
126
140
  exports.MCPServerManagerImpl = MCPServerManagerImpl = tslib_1.__decorate([