@opensumi/ide-ai-native 3.8.1-next-1741262660.0 → 3.8.1-next-1741331921.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (59) hide show
  1. package/lib/browser/components/ChatInput.js +1 -1
  2. package/lib/browser/components/ChatInput.js.map +1 -1
  3. package/lib/browser/mcp/config/components/mcp-config.module.less +13 -0
  4. package/lib/browser/mcp/config/components/mcp-config.view.d.ts.map +1 -1
  5. package/lib/browser/mcp/config/components/mcp-config.view.js +46 -21
  6. package/lib/browser/mcp/config/components/mcp-config.view.js.map +1 -1
  7. package/lib/browser/mcp/config/components/mcp-server-form.d.ts +8 -4
  8. package/lib/browser/mcp/config/components/mcp-server-form.d.ts.map +1 -1
  9. package/lib/browser/mcp/config/components/mcp-server-form.js +113 -38
  10. package/lib/browser/mcp/config/components/mcp-server-form.js.map +1 -1
  11. package/lib/browser/mcp/config/components/mcp-server-form.module.less +24 -1
  12. package/lib/browser/mcp/mcp-server-proxy.service.d.ts +1 -1
  13. package/lib/browser/mcp/mcp-server-proxy.service.d.ts.map +1 -1
  14. package/lib/browser/mcp/mcp-server-proxy.service.js +1 -1
  15. package/lib/browser/mcp/mcp-server-proxy.service.js.map +1 -1
  16. package/lib/browser/types.d.ts.map +1 -1
  17. package/lib/browser/types.js.map +1 -1
  18. package/lib/common/index.d.ts +2 -0
  19. package/lib/common/index.d.ts.map +1 -1
  20. package/lib/common/index.js.map +1 -1
  21. package/lib/common/mcp-server-manager.d.ts +21 -3
  22. package/lib/common/mcp-server-manager.d.ts.map +1 -1
  23. package/lib/common/mcp-server-manager.js.map +1 -1
  24. package/lib/common/types.d.ts +14 -1
  25. package/lib/common/types.d.ts.map +1 -1
  26. package/lib/common/types.js +7 -1
  27. package/lib/common/types.js.map +1 -1
  28. package/lib/node/mcp/sumi-mcp-server.d.ts +14 -3
  29. package/lib/node/mcp/sumi-mcp-server.d.ts.map +1 -1
  30. package/lib/node/mcp/sumi-mcp-server.js +30 -12
  31. package/lib/node/mcp/sumi-mcp-server.js.map +1 -1
  32. package/lib/node/mcp-server-manager-impl.d.ts.map +1 -1
  33. package/lib/node/mcp-server-manager-impl.js +22 -8
  34. package/lib/node/mcp-server-manager-impl.js.map +1 -1
  35. package/lib/node/mcp-server.sse.d.ts +192 -0
  36. package/lib/node/mcp-server.sse.d.ts.map +1 -0
  37. package/lib/node/mcp-server.sse.js +93 -0
  38. package/lib/node/mcp-server.sse.js.map +1 -0
  39. package/lib/node/{mcp-server.d.ts → mcp-server.stdio.d.ts} +2 -2
  40. package/lib/node/mcp-server.stdio.d.ts.map +1 -0
  41. package/lib/node/{mcp-server.js → mcp-server.stdio.js} +8 -6
  42. package/lib/node/mcp-server.stdio.js.map +1 -0
  43. package/package.json +24 -23
  44. package/src/browser/components/ChatInput.tsx +1 -1
  45. package/src/browser/mcp/config/components/mcp-config.module.less +13 -0
  46. package/src/browser/mcp/config/components/mcp-config.view.tsx +128 -91
  47. package/src/browser/mcp/config/components/mcp-server-form.module.less +24 -1
  48. package/src/browser/mcp/config/components/mcp-server-form.tsx +188 -70
  49. package/src/browser/mcp/mcp-server-proxy.service.ts +1 -1
  50. package/src/browser/types.ts +0 -1
  51. package/src/common/index.ts +2 -0
  52. package/src/common/mcp-server-manager.ts +22 -3
  53. package/src/common/types.ts +16 -1
  54. package/src/node/mcp/sumi-mcp-server.ts +31 -14
  55. package/src/node/mcp-server-manager-impl.ts +20 -9
  56. package/src/node/mcp-server.sse.ts +103 -0
  57. package/src/node/{mcp-server.ts → mcp-server.stdio.ts} +4 -3
  58. package/lib/node/mcp-server.d.ts.map +0 -1
  59. package/lib/node/mcp-server.js.map +0 -1
@@ -0,0 +1,192 @@
1
+ import { ILogger } from '@opensumi/ide-core-common';
2
+ import { IMCPServer } from '../common/mcp-server-manager';
3
+ export declare class SSEMCPServer implements IMCPServer {
4
+ private readonly logger?;
5
+ private name;
6
+ serverHost: string;
7
+ private client;
8
+ private started;
9
+ constructor(name: string, serverHost: string, logger?: ILogger | undefined);
10
+ isStarted(): boolean;
11
+ getServerName(): string;
12
+ start(): Promise<void>;
13
+ callTool(toolName: string, toolCallId: string, arg_string: string): Promise<import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
14
+ _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
15
+ }, {
16
+ content: import("zod").ZodArray<import("zod").ZodUnion<[import("zod").ZodObject<{
17
+ type: import("zod").ZodLiteral<"text">;
18
+ text: import("zod").ZodString;
19
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
20
+ type: import("zod").ZodLiteral<"text">;
21
+ text: import("zod").ZodString;
22
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
23
+ type: import("zod").ZodLiteral<"text">;
24
+ text: import("zod").ZodString;
25
+ }, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<{
26
+ type: import("zod").ZodLiteral<"image">;
27
+ data: import("zod").ZodString;
28
+ mimeType: import("zod").ZodString;
29
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
30
+ type: import("zod").ZodLiteral<"image">;
31
+ data: import("zod").ZodString;
32
+ mimeType: import("zod").ZodString;
33
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
34
+ type: import("zod").ZodLiteral<"image">;
35
+ data: import("zod").ZodString;
36
+ mimeType: import("zod").ZodString;
37
+ }, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<{
38
+ type: import("zod").ZodLiteral<"resource">;
39
+ resource: import("zod").ZodUnion<[import("zod").ZodObject<import("zod").objectUtil.extendShape<{
40
+ uri: import("zod").ZodString;
41
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
42
+ }, {
43
+ text: import("zod").ZodString;
44
+ }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
45
+ uri: import("zod").ZodString;
46
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
47
+ }, {
48
+ text: import("zod").ZodString;
49
+ }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
50
+ uri: import("zod").ZodString;
51
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
52
+ }, {
53
+ text: import("zod").ZodString;
54
+ }>, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<import("zod").objectUtil.extendShape<{
55
+ uri: import("zod").ZodString;
56
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
57
+ }, {
58
+ blob: import("zod").ZodString;
59
+ }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
60
+ uri: import("zod").ZodString;
61
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
62
+ }, {
63
+ blob: import("zod").ZodString;
64
+ }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
65
+ uri: import("zod").ZodString;
66
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
67
+ }, {
68
+ blob: import("zod").ZodString;
69
+ }>, import("zod").ZodTypeAny, "passthrough">>]>;
70
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
71
+ type: import("zod").ZodLiteral<"resource">;
72
+ resource: import("zod").ZodUnion<[import("zod").ZodObject<import("zod").objectUtil.extendShape<{
73
+ uri: import("zod").ZodString;
74
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
75
+ }, {
76
+ text: import("zod").ZodString;
77
+ }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
78
+ uri: import("zod").ZodString;
79
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
80
+ }, {
81
+ text: import("zod").ZodString;
82
+ }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
83
+ uri: import("zod").ZodString;
84
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
85
+ }, {
86
+ text: import("zod").ZodString;
87
+ }>, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<import("zod").objectUtil.extendShape<{
88
+ uri: import("zod").ZodString;
89
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
90
+ }, {
91
+ blob: import("zod").ZodString;
92
+ }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
93
+ uri: import("zod").ZodString;
94
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
95
+ }, {
96
+ blob: import("zod").ZodString;
97
+ }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
98
+ uri: import("zod").ZodString;
99
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
100
+ }, {
101
+ blob: import("zod").ZodString;
102
+ }>, import("zod").ZodTypeAny, "passthrough">>]>;
103
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
104
+ type: import("zod").ZodLiteral<"resource">;
105
+ resource: import("zod").ZodUnion<[import("zod").ZodObject<import("zod").objectUtil.extendShape<{
106
+ uri: import("zod").ZodString;
107
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
108
+ }, {
109
+ text: import("zod").ZodString;
110
+ }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
111
+ uri: import("zod").ZodString;
112
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
113
+ }, {
114
+ text: import("zod").ZodString;
115
+ }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
116
+ uri: import("zod").ZodString;
117
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
118
+ }, {
119
+ text: import("zod").ZodString;
120
+ }>, import("zod").ZodTypeAny, "passthrough">>, import("zod").ZodObject<import("zod").objectUtil.extendShape<{
121
+ uri: import("zod").ZodString;
122
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
123
+ }, {
124
+ blob: import("zod").ZodString;
125
+ }>, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
126
+ uri: import("zod").ZodString;
127
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
128
+ }, {
129
+ blob: import("zod").ZodString;
130
+ }>, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<import("zod").objectUtil.extendShape<{
131
+ uri: import("zod").ZodString;
132
+ mimeType: import("zod").ZodOptional<import("zod").ZodString>;
133
+ }, {
134
+ blob: import("zod").ZodString;
135
+ }>, import("zod").ZodTypeAny, "passthrough">>]>;
136
+ }, import("zod").ZodTypeAny, "passthrough">>]>, "many">;
137
+ isError: import("zod").ZodOptional<import("zod").ZodDefault<import("zod").ZodBoolean>>;
138
+ }>, import("zod").ZodTypeAny, "passthrough"> | import("zod").objectOutputType<import("zod").objectUtil.extendShape<{
139
+ _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
140
+ }, {
141
+ toolResult: import("zod").ZodUnknown;
142
+ }>, import("zod").ZodTypeAny, "passthrough">>;
143
+ getTools(): Promise<import("zod").objectOutputType<import("zod").objectUtil.extendShape<import("zod").objectUtil.extendShape<{
144
+ _meta: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
145
+ }, {
146
+ nextCursor: import("zod").ZodOptional<import("zod").ZodString>;
147
+ }>, {
148
+ tools: import("zod").ZodArray<import("zod").ZodObject<{
149
+ name: import("zod").ZodString;
150
+ description: import("zod").ZodOptional<import("zod").ZodString>;
151
+ inputSchema: import("zod").ZodObject<{
152
+ type: import("zod").ZodLiteral<"object">;
153
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
154
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
155
+ type: import("zod").ZodLiteral<"object">;
156
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
157
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
158
+ type: import("zod").ZodLiteral<"object">;
159
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
160
+ }, import("zod").ZodTypeAny, "passthrough">>;
161
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
162
+ name: import("zod").ZodString;
163
+ description: import("zod").ZodOptional<import("zod").ZodString>;
164
+ inputSchema: import("zod").ZodObject<{
165
+ type: import("zod").ZodLiteral<"object">;
166
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
167
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
168
+ type: import("zod").ZodLiteral<"object">;
169
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
170
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
171
+ type: import("zod").ZodLiteral<"object">;
172
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
173
+ }, import("zod").ZodTypeAny, "passthrough">>;
174
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
175
+ name: import("zod").ZodString;
176
+ description: import("zod").ZodOptional<import("zod").ZodString>;
177
+ inputSchema: import("zod").ZodObject<{
178
+ type: import("zod").ZodLiteral<"object">;
179
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
180
+ }, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{
181
+ type: import("zod").ZodLiteral<"object">;
182
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
183
+ }, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{
184
+ type: import("zod").ZodLiteral<"object">;
185
+ properties: import("zod").ZodOptional<import("zod").ZodObject<{}, "passthrough", import("zod").ZodTypeAny, import("zod").objectOutputType<{}, import("zod").ZodTypeAny, "passthrough">, import("zod").objectInputType<{}, import("zod").ZodTypeAny, "passthrough">>>;
186
+ }, import("zod").ZodTypeAny, "passthrough">>;
187
+ }, import("zod").ZodTypeAny, "passthrough">>, "many">;
188
+ }>, import("zod").ZodTypeAny, "passthrough">>;
189
+ update(serverHost: string): void;
190
+ stop(): Promise<void>;
191
+ }
192
+ //# sourceMappingURL=mcp-server.sse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-server.sse.d.ts","sourceRoot":"","sources":["../../src/node/mcp-server.sse.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SSEMCPServer = void 0;
4
+ const tslib_1 = require("tslib");
5
+ // have to import with extension since the exports map is ./* -> ./dist/cjs/*
6
+ const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
7
+ const sse_js_1 = require("@modelcontextprotocol/sdk/client/sse.js");
8
+ const eventsource_1 = require("eventsource");
9
+ const package_json_1 = tslib_1.__importDefault(require("../../package.json"));
10
+ global.EventSource = eventsource_1.EventSource;
11
+ class SSEMCPServer {
12
+ constructor(name, serverHost, logger) {
13
+ this.logger = logger;
14
+ this.started = false;
15
+ this.name = name;
16
+ this.serverHost = serverHost;
17
+ }
18
+ isStarted() {
19
+ return this.started;
20
+ }
21
+ getServerName() {
22
+ return this.name;
23
+ }
24
+ async start() {
25
+ var _a;
26
+ if (this.started) {
27
+ return;
28
+ }
29
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.log(`Starting server "${this.name}" with serverHost: ${this.serverHost}`);
30
+ const transport = new sse_js_1.SSEClientTransport(new URL(this.serverHost), {
31
+ eventSourceInit: {},
32
+ });
33
+ transport.onerror = (error) => {
34
+ var _a;
35
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.error('Transport Error:', error);
36
+ };
37
+ this.client = new index_js_1.Client({
38
+ name: 'sumi-ide-sse-mcp-client',
39
+ version: package_json_1.default.version,
40
+ }, {
41
+ capabilities: {},
42
+ });
43
+ this.client.onerror = (error) => {
44
+ var _a;
45
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.error('Error in MCP client:', error);
46
+ };
47
+ await this.client.connect(transport);
48
+ this.started = true;
49
+ }
50
+ async callTool(toolName, toolCallId, arg_string) {
51
+ var _a;
52
+ let args;
53
+ try {
54
+ args = JSON.parse(arg_string);
55
+ }
56
+ catch (error) {
57
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.error(`Failed to parse arguments for calling tool "${toolName}" in MCP server "${this.name}" with serverHost "${this.serverHost}".
58
+ Invalid JSON: ${arg_string}`, error);
59
+ }
60
+ const params = {
61
+ name: toolName,
62
+ arguments: args,
63
+ toolCallId,
64
+ };
65
+ return this.client.callTool(params);
66
+ }
67
+ async getTools() {
68
+ var _a;
69
+ const tools = await this.client.listTools();
70
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.log(`Got tools from MCP server "${this.name}" with serverHost "${this.serverHost}":`, tools);
71
+ return tools;
72
+ }
73
+ update(serverHost) {
74
+ this.serverHost = serverHost;
75
+ }
76
+ async stop() {
77
+ var _a, _b, _c;
78
+ if (!this.started || !this.client) {
79
+ return;
80
+ }
81
+ (_a = this.logger) === null || _a === void 0 ? void 0 : _a.log(`Stopping MCP server "${this.name}"`);
82
+ try {
83
+ await this.client.close();
84
+ }
85
+ catch (error) {
86
+ (_b = this.logger) === null || _b === void 0 ? void 0 : _b.error(`Failed to stop MCP server "${this.name}":`, error);
87
+ }
88
+ (_c = this.logger) === null || _c === void 0 ? void 0 : _c.log(`MCP server "${this.name}" stopped`);
89
+ this.started = false;
90
+ }
91
+ }
92
+ exports.SSEMCPServer = SSEMCPServer;
93
+ //# sourceMappingURL=mcp-server.sse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-server.sse.js","sourceRoot":"","sources":["../../src/node/mcp-server.sse.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { ILogger } from '@opensumi/ide-core-common';
2
2
  import { IMCPServer } from '../common/mcp-server-manager';
3
- export declare class StdioMCPServerImpl implements IMCPServer {
3
+ export declare class StdioMCPServer implements IMCPServer {
4
4
  private readonly logger?;
5
5
  private name;
6
6
  command: string;
@@ -193,4 +193,4 @@ export declare class StdioMCPServerImpl implements IMCPServer {
193
193
  }): void;
194
194
  stop(): Promise<void>;
195
195
  }
196
- //# sourceMappingURL=mcp-server.d.ts.map
196
+ //# sourceMappingURL=mcp-server.stdio.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-server.stdio.d.ts","sourceRoot":"","sources":["../../src/node/mcp-server.stdio.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.StdioMCPServerImpl = void 0;
3
+ exports.StdioMCPServer = void 0;
4
+ const tslib_1 = require("tslib");
4
5
  // have to import with extension since the exports map is ./* -> ./dist/cjs/*
5
6
  const index_js_1 = require("@modelcontextprotocol/sdk/client/index.js");
6
7
  const stdio_js_1 = require("@modelcontextprotocol/sdk/client/stdio.js");
7
- class StdioMCPServerImpl {
8
+ const package_json_1 = tslib_1.__importDefault(require("../../package.json"));
9
+ class StdioMCPServer {
8
10
  constructor(name, command, args, env, logger) {
9
11
  this.logger = logger;
10
12
  this.started = false;
@@ -41,8 +43,8 @@ class StdioMCPServerImpl {
41
43
  (_a = this.logger) === null || _a === void 0 ? void 0 : _a.error('Transport Error:', error);
42
44
  };
43
45
  this.client = new index_js_1.Client({
44
- name: 'opensumi-mcp-client',
45
- version: '1.0.0',
46
+ name: 'sumi-ide-stdio-mcp-client',
47
+ version: package_json_1.default.version,
46
48
  }, {
47
49
  capabilities: {},
48
50
  });
@@ -94,5 +96,5 @@ class StdioMCPServerImpl {
94
96
  this.started = false;
95
97
  }
96
98
  }
97
- exports.StdioMCPServerImpl = StdioMCPServerImpl;
98
- //# sourceMappingURL=mcp-server.js.map
99
+ exports.StdioMCPServer = StdioMCPServer;
100
+ //# sourceMappingURL=mcp-server.stdio.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-server.stdio.js","sourceRoot":"","sources":["../../src/node/mcp-server.stdio.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opensumi/ide-ai-native",
3
- "version": "3.8.1-next-1741262660.0",
3
+ "version": "3.8.1-next-1741331921.0",
4
4
  "files": [
5
5
  "lib",
6
6
  "src"
@@ -24,31 +24,32 @@
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.1-next-1741262660.0",
28
- "@opensumi/ide-components": "3.8.1-next-1741262660.0",
29
- "@opensumi/ide-connection": "3.8.1-next-1741262660.0",
30
- "@opensumi/ide-core-common": "3.8.1-next-1741262660.0",
31
- "@opensumi/ide-core-node": "3.8.1-next-1741262660.0",
32
- "@opensumi/ide-debug": "3.8.1-next-1741262660.0",
33
- "@opensumi/ide-design": "3.8.1-next-1741262660.0",
34
- "@opensumi/ide-editor": "3.8.1-next-1741262660.0",
35
- "@opensumi/ide-file-search": "3.8.1-next-1741262660.0",
36
- "@opensumi/ide-file-service": "3.8.1-next-1741262660.0",
37
- "@opensumi/ide-main-layout": "3.8.1-next-1741262660.0",
38
- "@opensumi/ide-markers": "3.8.1-next-1741262660.0",
39
- "@opensumi/ide-monaco": "3.8.1-next-1741262660.0",
40
- "@opensumi/ide-overlay": "3.8.1-next-1741262660.0",
41
- "@opensumi/ide-preferences": "3.8.1-next-1741262660.0",
42
- "@opensumi/ide-search": "3.8.1-next-1741262660.0",
43
- "@opensumi/ide-terminal-next": "3.8.1-next-1741262660.0",
44
- "@opensumi/ide-theme": "3.8.1-next-1741262660.0",
45
- "@opensumi/ide-utils": "3.8.1-next-1741262660.0",
46
- "@opensumi/ide-workspace": "3.8.1-next-1741262660.0",
27
+ "@opensumi/ide-addons": "3.8.1-next-1741331921.0",
28
+ "@opensumi/ide-components": "3.8.1-next-1741331921.0",
29
+ "@opensumi/ide-connection": "3.8.1-next-1741331921.0",
30
+ "@opensumi/ide-core-common": "3.8.1-next-1741331921.0",
31
+ "@opensumi/ide-core-node": "3.8.1-next-1741331921.0",
32
+ "@opensumi/ide-debug": "3.8.1-next-1741331921.0",
33
+ "@opensumi/ide-design": "3.8.1-next-1741331921.0",
34
+ "@opensumi/ide-editor": "3.8.1-next-1741331921.0",
35
+ "@opensumi/ide-file-search": "3.8.1-next-1741331921.0",
36
+ "@opensumi/ide-file-service": "3.8.1-next-1741331921.0",
37
+ "@opensumi/ide-main-layout": "3.8.1-next-1741331921.0",
38
+ "@opensumi/ide-markers": "3.8.1-next-1741331921.0",
39
+ "@opensumi/ide-monaco": "3.8.1-next-1741331921.0",
40
+ "@opensumi/ide-overlay": "3.8.1-next-1741331921.0",
41
+ "@opensumi/ide-preferences": "3.8.1-next-1741331921.0",
42
+ "@opensumi/ide-search": "3.8.1-next-1741331921.0",
43
+ "@opensumi/ide-terminal-next": "3.8.1-next-1741331921.0",
44
+ "@opensumi/ide-theme": "3.8.1-next-1741331921.0",
45
+ "@opensumi/ide-utils": "3.8.1-next-1741331921.0",
46
+ "@opensumi/ide-workspace": "3.8.1-next-1741331921.0",
47
47
  "@xterm/xterm": "5.5.0",
48
48
  "ai": "^4.1.45",
49
49
  "ansi-regex": "^2.0.0",
50
50
  "diff": "^7.0.0",
51
51
  "dom-align": "^1.7.0",
52
+ "eventsource": "^3.0.5",
52
53
  "rc-collapse": "^4.0.0",
53
54
  "react-chat-elements": "^12.0.10",
54
55
  "react-highlight": "^0.15.0",
@@ -58,7 +59,7 @@
58
59
  "zod-to-json-schema": "^3.24.1"
59
60
  },
60
61
  "devDependencies": {
61
- "@opensumi/ide-core-browser": "3.8.1-next-1741262660.0"
62
+ "@opensumi/ide-core-browser": "3.8.1-next-1741331921.0"
62
63
  },
63
- "gitHead": "fb1b7474d3ab54dea0bc42ab84f4571437b76441"
64
+ "gitHead": "87d34fe3dc264cd8864637576d25c0f8c821d859"
64
65
  }
@@ -512,7 +512,7 @@ export const ChatInput = React.forwardRef((props: IChatInputProps, ref) => {
512
512
  >
513
513
  <EnhanceIcon
514
514
  wrapperClassName={styles.action_btn}
515
- className={'codicon codicon-server'}
515
+ className={'codicon codicon-radio-tower'}
516
516
  onClick={handleShowMCPConfig}
517
517
  tabIndex={0}
518
518
  role='button'
@@ -85,6 +85,10 @@
85
85
  align-items: center;
86
86
  }
87
87
 
88
+ .typeTag {
89
+ margin-left: 7px;
90
+ }
91
+
88
92
  .serverType {
89
93
  background-color: var(--editor-background);
90
94
  color: var(--descriptionForeground);
@@ -162,6 +166,15 @@
162
166
  align-items: center;
163
167
  gap: 8px;
164
168
  flex-wrap: wrap;
169
+ &.link {
170
+ cursor: pointer;
171
+ opacity: 0.6;
172
+ transition: all 0.2s ease;
173
+ &:hover {
174
+ opacity: 1;
175
+ text-decoration: underline;
176
+ }
177
+ }
165
178
  }
166
179
 
167
180
  .toolTag {