@eclipse-glsp/server-mcp 2.8.0-next.1 → 2.8.0-next.5
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.
- package/README.md +7 -7
- package/lib/browser/modules/browser-mcp-server-module.js +1 -1
- package/lib/browser/modules/browser-mcp-server-module.js.map +1 -1
- package/lib/common/modules/abstract-mcp-server-module.d.ts +1 -2
- package/lib/common/modules/abstract-mcp-server-module.d.ts.map +1 -1
- package/lib/common/modules/abstract-mcp-server-module.js.map +1 -1
- package/lib/common/prompts/handlers/describe-diagram-mcp-prompt-handler.js +3 -2
- package/lib/common/prompts/handlers/describe-diagram-mcp-prompt-handler.js.map +1 -1
- package/lib/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.js +3 -2
- package/lib/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.js.map +1 -1
- package/lib/common/resources/handlers/diagram-png-mcp-resource-handler.js +5 -4
- package/lib/common/resources/handlers/diagram-png-mcp-resource-handler.js.map +1 -1
- package/lib/common/resources/handlers/diagram-svg-mcp-resource-handler.js +4 -3
- package/lib/common/resources/handlers/diagram-svg-mcp-resource-handler.js.map +1 -1
- package/lib/common/resources/services/element-types-provider.d.ts.map +1 -1
- package/lib/common/resources/services/element-types-provider.js +1 -2
- package/lib/common/resources/services/element-types-provider.js.map +1 -1
- package/lib/common/resources/services/mcp-model-serializer.d.ts +1 -2
- package/lib/common/resources/services/mcp-model-serializer.d.ts.map +1 -1
- package/lib/common/resources/services/mcp-model-serializer.js +3 -5
- package/lib/common/resources/services/mcp-model-serializer.js.map +1 -1
- package/lib/common/server/abstract-mcp-server-launcher.d.ts +3 -4
- package/lib/common/server/abstract-mcp-server-launcher.d.ts.map +1 -1
- package/lib/common/server/abstract-mcp-server-launcher.js +9 -14
- package/lib/common/server/abstract-mcp-server-launcher.js.map +1 -1
- package/lib/common/server/glsp-mcp-server.d.ts.map +1 -1
- package/lib/common/server/glsp-mcp-server.js +2 -2
- package/lib/common/server/glsp-mcp-server.js.map +1 -1
- package/lib/common/server/lru-event-store.js +2 -3
- package/lib/common/server/lru-event-store.js.map +1 -1
- package/lib/common/server/mcp-diagram-handler-dispatcher.js +4 -8
- package/lib/common/server/mcp-diagram-handler-dispatcher.js.map +1 -1
- package/lib/common/server/mcp-handler-shared.d.ts +1 -2
- package/lib/common/server/mcp-handler-shared.d.ts.map +1 -1
- package/lib/common/server/mcp-handler-shared.js +1 -1
- package/lib/common/server/mcp-handler-shared.js.map +1 -1
- package/lib/common/server/mcp-id-alias-service.js +1 -2
- package/lib/common/server/mcp-id-alias-service.js.map +1 -1
- package/lib/common/server/mcp-log-level-registry.js +10 -10
- package/lib/common/server/mcp-log-level-registry.js.map +1 -1
- package/lib/common/server/mcp-mime-types.d.ts +1 -1
- package/lib/common/server/mcp-mime-types.d.ts.map +1 -1
- package/lib/common/server/mcp-options.d.ts +1 -1
- package/lib/common/server/mcp-options.d.ts.map +1 -1
- package/lib/common/server/mcp-progress-reporter.js +1 -2
- package/lib/common/server/mcp-progress-reporter.js.map +1 -1
- package/lib/common/server/mcp-resource-handler.js +5 -9
- package/lib/common/server/mcp-resource-handler.js.map +1 -1
- package/lib/common/server/mcp-tool-handler.js +1 -2
- package/lib/common/server/mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/count-elements-mcp-tool-handler.js +4 -4
- package/lib/common/tools/handlers/count-elements-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.js +4 -3
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.js +5 -5
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/element-types-mcp-tool-handler.js +4 -3
- package/lib/common/tools/handlers/element-types-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/get-selection-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/get-selection-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/layout-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/layout-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/modify-edges-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/modify-edges-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.js +6 -6
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/query-elements-mcp-tool-handler.js +7 -7
- package/lib/common/tools/handlers/query-elements-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/redo-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/redo-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/session-info-mcp-tool-handler.js +4 -4
- package/lib/common/tools/handlers/session-info-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.js +5 -4
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/set-view-mcp-tool-handler.js +5 -4
- package/lib/common/tools/handlers/set-view-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/undo-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/undo-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/validate-diagram-mcp-tool-handler.js +0 -0
- package/lib/common/tools/handlers/validate-diagram-mcp-tool-handler.js.map +1 -1
- package/lib/common/util/markdown-util.js +1 -2
- package/lib/common/util/markdown-util.js.map +1 -1
- package/lib/node/modules/node-mcp-server-module.js +8 -8
- package/lib/node/modules/node-mcp-server-module.js.map +1 -1
- package/package.json +16 -16
- package/src/common/modules/abstract-mcp-server-module.ts +3 -3
- package/src/common/resources/services/element-types-provider.ts +2 -1
- package/src/common/resources/services/mcp-model-serializer.ts +1 -2
- package/src/common/server/abstract-mcp-server-launcher.ts +3 -3
- package/src/common/server/glsp-mcp-server.ts +2 -1
- package/src/common/server/mcp-handler-shared.ts +2 -4
- package/src/common/server/mcp-mime-types.ts +1 -1
- package/src/common/server/mcp-options.ts +1 -1
- package/src/common/server/mcp-resource-handler.ts +1 -1
- package/src/node/server/node-mcp-server-launcher.spec.ts +1 -1
package/README.md
CHANGED
|
@@ -6,18 +6,18 @@ An extension of the [GLSP Node Server](https://github.com/eclipse-glsp/glsp-serv
|
|
|
6
6
|
|
|
7
7
|
## What it provides
|
|
8
8
|
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
9
|
+
- **Tools** — Read/query and read/write operations to inspect, create, modify, delete, validate, and navigate diagram elements (and the active sessions themselves).
|
|
10
|
+
- **Resources** — URI-addressable read-only data; in the default ship-set this is `diagram-png` only (the rendered diagram screenshot, useful as embeddable image content). Other read endpoints ship as plain tools because in-the-wild MCP clients support tools more reliably than resources — see [Resource vs. Tool Mode](./ARCHITECTURE.md#resource-vs-tool-mode).
|
|
11
|
+
- **Prompts** — User-invokable templates (slash-command-style) that frame multi-step agent tasks against the diagram.
|
|
12
12
|
|
|
13
13
|
The MCP server is initialized as part of the GLSP server startup sequence and creates a new MCP session for each connecting MCP client. Each session runs a preconfigured AI agent persona (the _GLSP Modeling Agent_) that guides AI clients toward correct and safe usage of the modeling tools. It should be noted that the server startup sequence does not mean simply starting a server process, but rather that some kind of GLSP client starts the initialization.
|
|
14
14
|
|
|
15
15
|
## Installation
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
yarn add @eclipse-glsp/server-mcp
|
|
19
|
-
# or
|
|
20
18
|
npm install @eclipse-glsp/server-mcp
|
|
19
|
+
# or
|
|
20
|
+
pnpm add @eclipse-glsp/server-mcp
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
## Integrating into a GLSP Server
|
|
@@ -44,8 +44,8 @@ launcher.configure(serverModule, new NodeMcpServerModule());
|
|
|
44
44
|
|
|
45
45
|
The two modules are deliberately separate because they bind into different container scopes:
|
|
46
46
|
|
|
47
|
-
-
|
|
48
|
-
-
|
|
47
|
+
- `DefaultMcpDiagramModule` is mounted inside `configureDiagramModule`, so each `ClientSession.container` gets its own per-session services (`McpIdAliasService`, `McpModelSerializer`, the diagram-scope handler registries).
|
|
48
|
+
- `NodeMcpServerModule` is mounted at the launcher container, so the MCP HTTP server, the option holder, and the server-scope tool/resource handlers live as launcher singletons.
|
|
49
49
|
|
|
50
50
|
The MCP server itself is started lazily on the first GLSP `InitializeAction` that carries an `mcpServer` configuration.
|
|
51
51
|
|
|
@@ -35,6 +35,7 @@ const web_mcp_server_launcher_1 = require("../server/web-mcp-server-launcher");
|
|
|
35
35
|
* experimental status.
|
|
36
36
|
*/
|
|
37
37
|
class BrowserMcpServerModule extends abstract_mcp_server_module_1.AbstractMcpServerModule {
|
|
38
|
+
static { this.DEFAULT_OPTIONS = { ...abstract_mcp_server_module_1.DEFAULT_MCP_OPTIONS }; }
|
|
38
39
|
constructor(overrides = {}) {
|
|
39
40
|
super({ ...BrowserMcpServerModule.DEFAULT_OPTIONS, ...overrides });
|
|
40
41
|
}
|
|
@@ -46,5 +47,4 @@ class BrowserMcpServerModule extends abstract_mcp_server_module_1.AbstractMcpSer
|
|
|
46
47
|
}
|
|
47
48
|
}
|
|
48
49
|
exports.BrowserMcpServerModule = BrowserMcpServerModule;
|
|
49
|
-
BrowserMcpServerModule.DEFAULT_OPTIONS = { ...abstract_mcp_server_module_1.DEFAULT_MCP_OPTIONS };
|
|
50
50
|
//# sourceMappingURL=browser-mcp-server-module.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser-mcp-server-module.js","sourceRoot":"","sources":["../../../src/browser/modules/browser-mcp-server-module.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAGlF,gGAA+G;AAI/G,uFAAiF;AACjF,+EAAyE;AAEzE;;;;;;;;;;;;;;GAcG;AACH,MAAa,sBAAuB,SAAQ,oDAAuB;
|
|
1
|
+
{"version":3,"file":"browser-mcp-server-module.js","sourceRoot":"","sources":["../../../src/browser/modules/browser-mcp-server-module.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAGlF,gGAA+G;AAI/G,uFAAiF;AACjF,+EAAyE;AAEzE;;;;;;;;;;;;;;GAcG;AACH,MAAa,sBAAuB,SAAQ,oDAAuB;aAC/C,oBAAe,GAAsB,EAAE,GAAG,gDAAmB,EAAE,CAAC;IAEhF,YAAY,YAA+B,EAAE;QACzC,KAAK,CAAC,EAAE,GAAG,sBAAsB,CAAC,eAAe,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IACvE,CAAC;IAEkB,qBAAqB;QACpC,OAAO,8CAAoB,CAAC;IAChC,CAAC;IAEkB,qBAAqB;QACpC,OAAO,sDAAwB,CAAC;IACpC,CAAC;;AAbL,wDAcC"}
|
|
@@ -13,8 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { BindingContext } from '@eclipse-glsp/
|
|
17
|
-
import { AbstractMultiBinding, BindingTarget, GLSPModule } from '@eclipse-glsp/server';
|
|
16
|
+
import { AbstractMultiBinding, BindingContext, BindingTarget, GLSPModule } from '@eclipse-glsp/server';
|
|
18
17
|
import { interfaces } from 'inversify';
|
|
19
18
|
import { AbstractMcpServerLauncher } from '../server/abstract-mcp-server-launcher';
|
|
20
19
|
import { GLSPMcpServerFactory } from '../server/glsp-mcp-server';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-mcp-server-module.d.ts","sourceRoot":"","sources":["../../../src/common/modules/abstract-mcp-server-module.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;
|
|
1
|
+
{"version":3,"file":"abstract-mcp-server-module.d.ts","sourceRoot":"","sources":["../../../src/common/modules/abstract-mcp-server-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-mcp-server-module.js","sourceRoot":"","sources":["../../../src/common/modules/abstract-mcp-server-module.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;
|
|
1
|
+
{"version":3,"file":"abstract-mcp-server-module.js","sourceRoot":"","sources":["../../../src/common/modules/abstract-mcp-server-module.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,7 +51,7 @@ exports.DescribeDiagramArgsSchema = z.object({
|
|
|
51
51
|
* Server-scope on purpose — the prompt itself has no per-session state, so we avoid forcing
|
|
52
52
|
* the user to type a sessionId in the common single-diagram case.
|
|
53
53
|
*/
|
|
54
|
-
let DescribeDiagramMcpPromptHandler =
|
|
54
|
+
let DescribeDiagramMcpPromptHandler = class DescribeDiagramMcpPromptHandler extends mcp_prompt_handler_1.AbstractMcpPromptHandler {
|
|
55
55
|
constructor() {
|
|
56
56
|
super(...arguments);
|
|
57
57
|
this.name = DescribeDiagramMcpPromptHandler_1.NAME;
|
|
@@ -63,6 +63,8 @@ let DescribeDiagramMcpPromptHandler = DescribeDiagramMcpPromptHandler_1 = class
|
|
|
63
63
|
'`sessionId` is optional — defaults to the only open session.';
|
|
64
64
|
this.argsSchema = exports.DescribeDiagramArgsSchema;
|
|
65
65
|
}
|
|
66
|
+
static { DescribeDiagramMcpPromptHandler_1 = this; }
|
|
67
|
+
static { this.NAME = 'describe-diagram'; }
|
|
66
68
|
referencedToolNames() {
|
|
67
69
|
return [
|
|
68
70
|
count_elements_mcp_tool_handler_1.CountElementsMcpToolHandler.NAME,
|
|
@@ -91,7 +93,6 @@ let DescribeDiagramMcpPromptHandler = DescribeDiagramMcpPromptHandler_1 = class
|
|
|
91
93
|
}
|
|
92
94
|
};
|
|
93
95
|
exports.DescribeDiagramMcpPromptHandler = DescribeDiagramMcpPromptHandler;
|
|
94
|
-
DescribeDiagramMcpPromptHandler.NAME = 'describe-diagram';
|
|
95
96
|
__decorate([
|
|
96
97
|
(0, inversify_1.inject)(server_1.ClientSessionManager),
|
|
97
98
|
__metadata("design:type", Object)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"describe-diagram-mcp-prompt-handler.js","sourceRoot":"","sources":["../../../../src/common/prompts/handlers/describe-diagram-mcp-prompt-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA4D;AAC5D,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAA0F;AAC1F,wEAA2E;AAC3E,0GAAmG;AACnG,wGAAiG;AACjG,wGAAiG;AACjG,0GAAmG;AACnG,wGAAiG;AACjG,8FAAuF;AAE1E,QAAA,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4GAA4G,CAAC;CAC9H,CAAC,CAAC;AAGH;;;;;;;GAOG;AAEI,IAAM,+BAA+B,
|
|
1
|
+
{"version":3,"file":"describe-diagram-mcp-prompt-handler.js","sourceRoot":"","sources":["../../../../src/common/prompts/handlers/describe-diagram-mcp-prompt-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA4D;AAC5D,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAA0F;AAC1F,wEAA2E;AAC3E,0GAAmG;AACnG,wGAAiG;AACjG,wGAAiG;AACjG,0GAAmG;AACnG,wGAAiG;AACjG,8FAAuF;AAE1E,QAAA,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4GAA4G,CAAC;CAC9H,CAAC,CAAC;AAGH;;;;;;;GAOG;AAEI,IAAM,+BAA+B,GAArC,MAAM,+BAAgC,SAAQ,6CAA6C;IAA3F;;QAEM,SAAI,GAAG,iCAA+B,CAAC,IAAI,CAAC;QACnC,UAAK,GAAG,kBAAkB,CAAC;QACpC,gBAAW,GAChB,sEAAsE;YACtE,iHAAiH;YACjH,+CAA+C;YAC/C,yHAAyH;YACzH,8DAA8D,CAAC;QAC1D,eAAU,GAAG,iCAAyB,CAAC;IAgCpD,CAAC;;aAzCmB,SAAI,GAAG,kBAAkB,AAArB,CAAsB;IAajC,mBAAmB;QACxB,OAAO;YACH,6DAA2B,CAAC,IAAI;YAChC,2DAA0B,CAAC,IAAI;YAC/B,2DAA0B,CAAC,IAAI;YAC/B,6DAA2B,CAAC,IAAI;YAChC,2DAA0B,CAAC,IAAI;YAC/B,iDAAqB,CAAC,IAAI;SAC7B,CAAC;IACN,CAAC;IAES,YAAY,CAAC,IAAyB;QAC5C,MAAM,SAAS,GAAG,IAAA,2CAAsB,EAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACpF,MAAM,IAAI,GACN,sCAAsC,SAAS,kBAAkB;YACjE,iEAAiE,6DAA2B,CAAC,IAAI,QAAQ;YACzG,0FAA0F;YAC1F,UAAU,2DAA0B,CAAC,IAAI,YAAY,6DAA2B,CAAC,IAAI,QAAQ;YAC7F,4CAA4C,2DAA0B,CAAC,IAAI,uBAAuB;YAClG,oCAAoC;YACpC,yFAAyF;YACzF,yCAAyC,6DAA2B,CAAC,IAAI,kCAAkC;YAC3G,kDAAkD;YAClD,iGAAiG;YACjG,2HAA2H;YAC3H,SAAS,2DAA0B,CAAC,IAAI,WAAW,iDAAqB,CAAC,IAAI,yDAAyD,CAAC;QAC3I,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;IAC7E,CAAC;;AAzCQ,0EAA+B;AAYA;IAAvC,IAAA,kBAAM,EAAC,6BAAoB,CAAC;;6EAAsD;0CAZ1E,+BAA+B;IAD3C,IAAA,sBAAU,GAAE;GACA,+BAA+B,CA0C3C"}
|
|
@@ -49,7 +49,7 @@ exports.SuggestImprovementsArgsSchema = z.object({
|
|
|
49
49
|
* Server-scope on purpose — the prompt itself has no per-session state, so we avoid forcing
|
|
50
50
|
* the user to type a sessionId in the common single-diagram case.
|
|
51
51
|
*/
|
|
52
|
-
let SuggestImprovementsMcpPromptHandler =
|
|
52
|
+
let SuggestImprovementsMcpPromptHandler = class SuggestImprovementsMcpPromptHandler extends mcp_prompt_handler_1.AbstractMcpPromptHandler {
|
|
53
53
|
constructor() {
|
|
54
54
|
super(...arguments);
|
|
55
55
|
this.name = SuggestImprovementsMcpPromptHandler_1.NAME;
|
|
@@ -61,6 +61,8 @@ let SuggestImprovementsMcpPromptHandler = SuggestImprovementsMcpPromptHandler_1
|
|
|
61
61
|
'`sessionId` is optional — defaults to the only open session.';
|
|
62
62
|
this.argsSchema = exports.SuggestImprovementsArgsSchema;
|
|
63
63
|
}
|
|
64
|
+
static { SuggestImprovementsMcpPromptHandler_1 = this; }
|
|
65
|
+
static { this.NAME = 'suggest-improvements'; }
|
|
64
66
|
referencedToolNames() {
|
|
65
67
|
return [
|
|
66
68
|
validate_diagram_mcp_tool_handler_1.ValidateDiagramMcpToolHandler.NAME,
|
|
@@ -88,7 +90,6 @@ let SuggestImprovementsMcpPromptHandler = SuggestImprovementsMcpPromptHandler_1
|
|
|
88
90
|
}
|
|
89
91
|
};
|
|
90
92
|
exports.SuggestImprovementsMcpPromptHandler = SuggestImprovementsMcpPromptHandler;
|
|
91
|
-
SuggestImprovementsMcpPromptHandler.NAME = 'suggest-improvements';
|
|
92
93
|
__decorate([
|
|
93
94
|
(0, inversify_1.inject)(server_1.ClientSessionManager),
|
|
94
95
|
__metadata("design:type", Object)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest-improvements-mcp-prompt-handler.js","sourceRoot":"","sources":["../../../../src/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA4D;AAC5D,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAA0F;AAC1F,wEAA2E;AAC3E,wGAAiG;AACjG,0GAAmG;AACnG,wGAAiG;AACjG,8GAAuG;AAE1F,QAAA,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4GAA4G,CAAC;CAC9H,CAAC,CAAC;AAGH;;;;;;;GAOG;AAEI,IAAM,mCAAmC,
|
|
1
|
+
{"version":3,"file":"suggest-improvements-mcp-prompt-handler.js","sourceRoot":"","sources":["../../../../src/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA4D;AAC5D,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAA0F;AAC1F,wEAA2E;AAC3E,wGAAiG;AACjG,0GAAmG;AACnG,wGAAiG;AACjG,8GAAuG;AAE1F,QAAA,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IAClD,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,4GAA4G,CAAC;CAC9H,CAAC,CAAC;AAGH;;;;;;;GAOG;AAEI,IAAM,mCAAmC,GAAzC,MAAM,mCAAoC,SAAQ,6CAAiD;IAAnG;;QAEM,SAAI,GAAG,qCAAmC,CAAC,IAAI,CAAC;QACvC,UAAK,GAAG,8BAA8B,CAAC;QAChD,gBAAW,GAChB,+EAA+E;YAC/E,yGAAyG;YACzG,4GAA4G;YAC5G,iHAAiH;YACjH,8DAA8D,CAAC;QAC1D,eAAU,GAAG,qCAA6B,CAAC;IA+BxD,CAAC;;aAxCmB,SAAI,GAAG,sBAAsB,AAAzB,CAA0B;IAarC,mBAAmB;QACxB,OAAO;YACH,iEAA6B,CAAC,IAAI;YAClC,2DAA0B,CAAC,IAAI;YAC/B,6DAA2B,CAAC,IAAI;YAChC,2DAA0B,CAAC,IAAI;SAClC,CAAC;IACN,CAAC;IAES,YAAY,CAAC,IAA6B;QAChD,MAAM,SAAS,GAAG,IAAA,2CAAsB,EAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QACpF,MAAM,IAAI,GACN,oCAAoC,SAAS,qDAAqD;YAClG,oCAAoC,iEAA6B,CAAC,IAAI,+BAA+B;YACrG,2CAA2C,2DAA0B,CAAC,IAAI,2BAA2B;YACrG,gCAAgC;YAChC,4BAA4B,6DAA2B,CAAC,IAAI,0CAA0C;YACtG,kDAAkD;YAClD,uFAAuF;YACvF,8BAA8B;YAC9B,0DAA0D;YAC1D,mFAAmF;YACnF,2HAA2H;YAC3H,kCAAkC,2DAA0B,CAAC,IAAI,+BAA+B;YAChG,2CAA2C,CAAC;QAChD,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC;IAC7E,CAAC;;AAxCQ,kFAAmC;AAYJ;IAAvC,IAAA,kBAAM,EAAC,6BAAoB,CAAC;;iFAAsD;8CAZ1E,mCAAmC;IAD/C,IAAA,sBAAU,GAAE;GACA,mCAAmC,CAyC/C"}
|
|
@@ -64,7 +64,7 @@ exports.DiagramPngInputSchema = mcp_input_schemas_1.McpDiagramScopedInputSchema.
|
|
|
64
64
|
.describe('Override the default render timeout in milliseconds (100–60000). Useful for very large diagrams.')
|
|
65
65
|
});
|
|
66
66
|
/** Rendering lives on the client — `RequestExportAction('png')` routes to the registered PNG exporter, which returns base64 via `ExportResultAction`. */
|
|
67
|
-
let DiagramPngMcpResourceHandler =
|
|
67
|
+
let DiagramPngMcpResourceHandler = class DiagramPngMcpResourceHandler extends mcp_resource_handler_1.AbstractMcpDiagramResourceHandler {
|
|
68
68
|
constructor() {
|
|
69
69
|
super(...arguments);
|
|
70
70
|
/** Default timeout (in ms) used when the call doesn't override `timeoutMs`. Override via subclass + rebind. */
|
|
@@ -96,6 +96,8 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
96
96
|
// would mislead clients.
|
|
97
97
|
this.toolAlternativeInputSchema = exports.DiagramPngInputSchema;
|
|
98
98
|
}
|
|
99
|
+
static { DiagramPngMcpResourceHandler_1 = this; }
|
|
100
|
+
static { this.NAME = 'diagram-png'; }
|
|
99
101
|
/** Skip-bind when the GLSP client doesn't speak `RequestExportAction` — every read would otherwise time out. */
|
|
100
102
|
canRegister() {
|
|
101
103
|
return this.clientActionKinds.has(server_1.RequestExportAction.KIND);
|
|
@@ -104,7 +106,7 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
104
106
|
const resolved = this.resolveSize(scale, width, height);
|
|
105
107
|
// Best-effort beat for clients that opted in via `_meta.progressToken`; no-ops otherwise.
|
|
106
108
|
await this.progress.emit({ progress: 0, message: 'Awaiting client-side PNG render…' });
|
|
107
|
-
const response = await this.requestAction(server_1.RequestExportAction.create('png', { formatOptions: { width: resolved.width, height: resolved.height } }), timeoutMs
|
|
109
|
+
const response = await this.requestAction(server_1.RequestExportAction.create('png', { formatOptions: { width: resolved.width, height: resolved.height } }), timeoutMs ?? this.defaultTimeoutMs);
|
|
108
110
|
// A misbehaving exporter strategy returning text-encoded data here would silently corrupt the blob; fail loudly instead.
|
|
109
111
|
if (response.encoding !== 'base64') {
|
|
110
112
|
throw new mcp_handler_shared_1.McpToolError(`PNG export returned unexpected encoding '${response.encoding}'; expected 'base64'.`);
|
|
@@ -128,7 +130,7 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
128
130
|
if (height !== undefined) {
|
|
129
131
|
return { width: Math.max(1, Math.round(height * (natural.width / natural.height))), height };
|
|
130
132
|
}
|
|
131
|
-
const factor = scale
|
|
133
|
+
const factor = scale ?? this.defaultScale;
|
|
132
134
|
return {
|
|
133
135
|
width: Math.max(1, Math.round(natural.width * factor)),
|
|
134
136
|
height: Math.max(1, Math.round(natural.height * factor))
|
|
@@ -162,7 +164,6 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
162
164
|
}
|
|
163
165
|
};
|
|
164
166
|
exports.DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler;
|
|
165
|
-
DiagramPngMcpResourceHandler.NAME = 'diagram-png';
|
|
166
167
|
__decorate([
|
|
167
168
|
(0, inversify_1.inject)(mcp_progress_reporter_1.McpProgressReporter),
|
|
168
169
|
__metadata("design:type", mcp_progress_reporter_1.McpProgressReporter)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-png-mcp-resource-handler.js","sourceRoot":"","sources":["../../../../src/common/resources/handlers/diagram-png-mcp-resource-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA8F;AAE9F,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAAmF;AACnF,sEAA6E;AAE7E,8EAAyE;AACzE,4EAAsG;AAEzF,QAAA,qBAAqB,GAAG,+CAA2B,CAAC,MAAM,CAAC;IACpE,KAAK,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,CAAC,GAAG,CAAC;SACR,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,EAAE;SACV,QAAQ,CACL,uFAAuF;QACnF,gGAAgG,CACvG;IACL,KAAK,EAAE,CAAC;SACH,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,+GAA+G,CAAC;IAC9H,MAAM,EAAE,CAAC;SACJ,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,IAAI,CAAC;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,+GAA+G,CAAC;IAC9H,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,GAAG,CAAC;SACR,GAAG,CAAC,KAAK,CAAC;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,kGAAkG,CAAC;CACpH,CAAC,CAAC;AAGH,yJAAyJ;AAElJ,IAAM,4BAA4B,
|
|
1
|
+
{"version":3,"file":"diagram-png-mcp-resource-handler.js","sourceRoot":"","sources":["../../../../src/common/resources/handlers/diagram-png-mcp-resource-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ exports.DiagramSvgInputSchema = mcp_input_schemas_1.McpDiagramScopedInputSchema.
|
|
|
47
47
|
* markup (text-encoded). No `width`/`height` knobs because SVG is vector — clients (and
|
|
48
48
|
* downstream rasterisers) scale it freely.
|
|
49
49
|
*/
|
|
50
|
-
let DiagramSvgMcpResourceHandler =
|
|
50
|
+
let DiagramSvgMcpResourceHandler = class DiagramSvgMcpResourceHandler extends mcp_resource_handler_1.AbstractMcpDiagramResourceHandler {
|
|
51
51
|
constructor() {
|
|
52
52
|
super(...arguments);
|
|
53
53
|
/** Default timeout (in ms) used when the call doesn't override `timeoutMs`. Override via subclass + rebind. */
|
|
@@ -68,6 +68,8 @@ let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class Diagra
|
|
|
68
68
|
this.priority = 0.6;
|
|
69
69
|
this.toolAlternativeInputSchema = exports.DiagramSvgInputSchema;
|
|
70
70
|
}
|
|
71
|
+
static { DiagramSvgMcpResourceHandler_1 = this; }
|
|
72
|
+
static { this.NAME = 'diagram-svg'; }
|
|
71
73
|
/** Skip-bind when the GLSP client doesn't speak `RequestExportAction`. */
|
|
72
74
|
canRegister() {
|
|
73
75
|
return this.clientActionKinds.has(server_1.RequestExportAction.KIND);
|
|
@@ -75,7 +77,7 @@ let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class Diagra
|
|
|
75
77
|
async createResult({ timeoutMs }) {
|
|
76
78
|
// Best-effort beat for clients that opted in via `_meta.progressToken`; no-ops otherwise.
|
|
77
79
|
await this.progress.emit({ progress: 0, message: 'Awaiting client-side SVG render…' });
|
|
78
|
-
const response = await this.requestAction(server_1.RequestExportAction.create('svg'), timeoutMs
|
|
80
|
+
const response = await this.requestAction(server_1.RequestExportAction.create('svg'), timeoutMs ?? this.defaultTimeoutMs);
|
|
79
81
|
// SVG is text-encoded — base64 encoding here would mean an exporter mis-classified its payload.
|
|
80
82
|
if (response.encoding !== 'text') {
|
|
81
83
|
throw new mcp_handler_shared_1.McpToolError(`SVG export returned unexpected encoding '${response.encoding}'; expected 'text'.`);
|
|
@@ -84,7 +86,6 @@ let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class Diagra
|
|
|
84
86
|
}
|
|
85
87
|
};
|
|
86
88
|
exports.DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler;
|
|
87
|
-
DiagramSvgMcpResourceHandler.NAME = 'diagram-svg';
|
|
88
89
|
__decorate([
|
|
89
90
|
(0, inversify_1.inject)(mcp_progress_reporter_1.McpProgressReporter),
|
|
90
91
|
__metadata("design:type", mcp_progress_reporter_1.McpProgressReporter)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-svg-mcp-resource-handler.js","sourceRoot":"","sources":["../../../../src/common/resources/handlers/diagram-svg-mcp-resource-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA8E;AAE9E,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAAmF;AACnF,sEAA6E;AAE7E,8EAAyE;AACzE,4EAAsG;AAEzF,QAAA,qBAAqB,GAAG,+CAA2B,CAAC,MAAM,CAAC;IACpE,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,GAAG,CAAC;SACR,GAAG,CAAC,KAAK,CAAC;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,kGAAkG,CAAC;CACpH,CAAC,CAAC;AAGH;;;;GAIG;AAEI,IAAM,4BAA4B,
|
|
1
|
+
{"version":3,"file":"diagram-svg-mcp-resource-handler.js","sourceRoot":"","sources":["../../../../src/common/resources/handlers/diagram-svg-mcp-resource-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA8E;AAE9E,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAAmF;AACnF,sEAA6E;AAE7E,8EAAyE;AACzE,4EAAsG;AAEzF,QAAA,qBAAqB,GAAG,+CAA2B,CAAC,MAAM,CAAC;IACpE,SAAS,EAAE,CAAC;SACP,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,GAAG,CAAC;SACR,GAAG,CAAC,KAAK,CAAC;SACV,QAAQ,EAAE;SACV,QAAQ,CAAC,kGAAkG,CAAC;CACpH,CAAC,CAAC;AAGH;;;;GAIG;AAEI,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,wDAAkD;IAA7F;;QACH,+GAA+G;QAC5F,qBAAgB,GAAW,IAAI,CAAC;QAG1C,SAAI,GAAG,8BAA4B,CAAC,IAAI,CAAC;QAChC,UAAK,GAAG,mBAAmB,CAAC;QACrC,gBAAW,GAChB,yEAAyE;YACzE,qFAAqF;YACrF,0FAA0F;YAC1F,iHAAiH;YACjH,2EAA2E;YAC3E,gFAAgF,CAAC;QAC5E,aAAQ,GAAgB,eAAe,CAAC;QACxC,QAAG,GAAmB,EAAE,QAAQ,EAAE,iCAAiC,EAAE,CAAC;QAC/E,yGAAyG;QACvF,aAAQ,GAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QAC3D,0GAA0G;QACxF,aAAQ,GAAG,GAAG,CAAC;QACf,+BAA0B,GAAG,6BAAqB,CAAC;IAqBzE,CAAC;;aArCmB,SAAI,GAAG,aAAa,AAAhB,CAAiB;IAsBrC,0EAA0E;IACjE,WAAW;QAChB,OAAO,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,4BAAmB,CAAC,IAAI,CAAC,CAAC;IAChE,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,EAAE,SAAS,EAAmB;QACvD,0FAA0F;QAC1F,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC,CAAC;QACvF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,4BAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,SAAS,IAAI,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACjH,gGAAgG;QAChG,IAAI,QAAQ,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;YAC/B,MAAM,IAAI,iCAAY,CAAC,4CAA4C,QAAQ,CAAC,QAAQ,qBAAqB,CAAC,CAAC;QAC/G,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC;IACnC,CAAC;;AAxCQ,oEAA4B;AAsBE;IAAtC,IAAA,kBAAM,EAAC,2CAAmB,CAAC;8BAAqB,2CAAmB;8DAAC;AAEhC;IAApC,IAAA,kBAAM,EAAC,0BAAiB,CAAC;8BAA8B,GAAG;uEAAS;uCAxB3D,4BAA4B;IADxC,IAAA,sBAAU,GAAE;GACA,4BAA4B,CAyCxC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-types-provider.d.ts","sourceRoot":"","sources":["../../../../src/common/resources/services/element-types-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;
|
|
1
|
+
{"version":3,"file":"element-types-provider.d.ts","sourceRoot":"","sources":["../../../../src/common/resources/services/element-types-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAKH,sBAAsB,EACtB,MAAM,EACN,wBAAwB,EAC3B,MAAM,sBAAsB,CAAC;AAG9B;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,6EAA6E;IAC7E,KAAK,EAAE,MAAM,CAAC;IACd,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kGAAkG;IAClG,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IACzB,SAAS,EAAE,gBAAgB,EAAE,CAAC;IAC9B,SAAS,EAAE,gBAAgB,EAAE,CAAC;CACjC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAoB;IACjC,GAAG,IAAI,YAAY,CAAC;CACvB;AACD,eAAO,MAAM,oBAAoB,eAAiC,CAAC;AAEnE;;;;GAIG;AACH,qBACa,2BAA4B,YAAW,oBAAoB;IAClC,SAAS,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAE/E,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzC,+EAA+E;IAC/E,SAAS,CAAC,QAAQ,CAAC,WAAW,cAAqB;IAEnD,GAAG,IAAI,YAAY;IAenB,kGAAkG;IAClG,SAAS,CAAC,6BAA6B,CAAC,OAAO,EAAE,sBAAsB,GAAG,IAAI;CAWjF"}
|
|
@@ -25,7 +25,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
25
25
|
};
|
|
26
26
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
27
27
|
exports.DefaultElementTypesProvider = exports.ElementTypesProvider = void 0;
|
|
28
|
-
const protocol_1 = require("@eclipse-glsp/protocol");
|
|
29
28
|
const server_1 = require("@eclipse-glsp/server");
|
|
30
29
|
const inversify_1 = require("inversify");
|
|
31
30
|
exports.ElementTypesProvider = Symbol('ElementTypesProvider');
|
|
@@ -63,7 +62,7 @@ let DefaultElementTypesProvider = class DefaultElementTypesProvider {
|
|
|
63
62
|
}
|
|
64
63
|
this.warnedTypes.add(operationType);
|
|
65
64
|
this.logger.warn(`DefaultElementTypesProvider: ignoring CreateOperationHandler with operationType '${operationType}' — ` +
|
|
66
|
-
`expected '${
|
|
65
|
+
`expected '${server_1.CreateNodeOperation.KIND}' or '${server_1.CreateEdgeOperation.KIND}'. Rebind ElementTypesProvider for custom operation types.`);
|
|
67
66
|
}
|
|
68
67
|
};
|
|
69
68
|
exports.DefaultElementTypesProvider = DefaultElementTypesProvider;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-types-provider.js","sourceRoot":"","sources":["../../../../src/common/resources/services/element-types-provider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,
|
|
1
|
+
{"version":3,"file":"element-types-provider.js","sourceRoot":"","sources":["../../../../src/common/resources/services/element-types-provider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,iDAQ8B;AAC9B,yCAA+C;AAqClC,QAAA,oBAAoB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC;AAEnE;;;;GAIG;AAEI,IAAM,2BAA2B,GAAjC,MAAM,2BAA2B;IAAjC;QAKH,+EAA+E;QAC5D,gBAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IA6BvD,CAAC;IA3BG,GAAG;QACC,MAAM,SAAS,GAAuB,EAAE,CAAC;QACzC,MAAM,SAAS,GAAuB,EAAE,CAAC;QACzC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3D,IAAI,mCAA0B,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzC,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACvF,CAAC;iBAAM,IAAI,mCAA0B,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBAChD,OAAO,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;YACvF,CAAC;iBAAM,IAAI,+BAAsB,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;gBAC5C,IAAI,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;YAChD,CAAC;QACL,CAAC;QACD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACpC,CAAC;IAED,kGAAkG;IACxF,6BAA6B,CAAC,OAA+B;QACnE,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;QAC5C,IAAI,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,CAAC;YACtC,OAAO;QACX,CAAC;QACD,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,oFAAoF,aAAa,MAAM;YACnG,aAAa,4BAAmB,CAAC,IAAI,SAAS,4BAAmB,CAAC,IAAI,4DAA4D,CACzI,CAAC;IACN,CAAC;CACJ,CAAA;AAnCY,kEAA2B;AACQ;IAA3C,IAAA,kBAAM,EAAC,iCAAwB,CAAC;8BAAqC,iCAAwB;6EAAC;AAErE;IAAzB,IAAA,kBAAM,EAAC,eAAM,CAAC;8BAAmB,eAAM;2DAAC;sCAHhC,2BAA2B;IADvC,IAAA,sBAAU,GAAE;GACA,2BAA2B,CAmCvC"}
|
|
@@ -13,8 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { GModelElement } from '@eclipse-glsp/
|
|
17
|
-
import { GModelSerializer, Logger } from '@eclipse-glsp/server';
|
|
16
|
+
import { GModelElement, GModelSerializer, Logger } from '@eclipse-glsp/server';
|
|
18
17
|
import { McpStructuredContent } from '../../server/mcp-handler-shared';
|
|
19
18
|
import { McpIdAliasService } from '../../server/mcp-id-alias-service';
|
|
20
19
|
export declare const McpModelSerializer: unique symbol;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-model-serializer.d.ts","sourceRoot":"","sources":["../../../../src/common/resources/services/mcp-model-serializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,
|
|
1
|
+
{"version":3,"file":"mcp-model-serializer.d.ts","sourceRoot":"","sources":["../../../../src/common/resources/services/mcp-model-serializer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAa,aAAa,EAAE,gBAAgB,EAAE,MAAM,EAAS,MAAM,sBAAsB,CAAC;AAEjG,OAAO,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAGtE,eAAO,MAAM,kBAAkB,eAA+B,CAAC;AAE/D;4EAC4E;AAC5E,MAAM,WAAW,iBAAiB;IAC9B,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CAC1B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB;IAC/B,yDAAyD;IACzD,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAAC;IAE1C,uFAAuF;IACvF,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAElD;;;;OAIG;IACH,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB,CAAC;IAElE,gEAAgE;IAChE,wBAAwB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,oBAAoB,CAAC;CAC7E;AAED;;;;;;;;;GASG;AACH,qBACa,0BAA2B,YAAW,kBAAkB;IACvC,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;IAC5C,SAAS,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACrD,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IAEzC,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,CAW9B;IAEF,2GAA2G;IAE3G,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAStC,SAAS,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM;IAIzC,cAAc,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM;IAOjD,mBAAmB,CAAC,OAAO,EAAE,aAAa,GAAG,oBAAoB;IAIjE,wBAAwB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,oBAAoB;IAQzE,+FAA+F;IAC/F,SAAS,CAAC,uBAAuB,CAAC,QAAQ,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAWjG,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,iBAAiB;IAUnE,SAAS,CAAC,cAAc,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAAC;IAerF,SAAS,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,iBAAiB,EAAE;IAc9F,SAAS,CAAC,UAAU,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAQtD,SAAS,CAAC,sBAAsB,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;CA8BrE"}
|
|
@@ -88,7 +88,7 @@ let MarkdownMcpModelSerializer = MarkdownMcpModelSerializer_1 = class MarkdownMc
|
|
|
88
88
|
const result = {};
|
|
89
89
|
const allKeys = new Set(elementsByTypeArray.flatMap(obj => Object.keys(obj)));
|
|
90
90
|
allKeys.forEach(key => {
|
|
91
|
-
const combined = elementsByTypeArray.flatMap(obj =>
|
|
91
|
+
const combined = elementsByTypeArray.flatMap(obj => obj[key] ?? []);
|
|
92
92
|
result[key] = Array.from(new Map(combined.map(item => [item.id, item])).values()).map(item => this.applyAlias(item));
|
|
93
93
|
});
|
|
94
94
|
return result;
|
|
@@ -103,16 +103,14 @@ let MarkdownMcpModelSerializer = MarkdownMcpModelSerializer_1 = class MarkdownMc
|
|
|
103
103
|
return element;
|
|
104
104
|
}
|
|
105
105
|
prepareElement(element) {
|
|
106
|
-
var _a;
|
|
107
106
|
const schema = this.gModelSerializer.createSchema(element);
|
|
108
|
-
const elements = this.flattenStructure(schema,
|
|
107
|
+
const elements = this.flattenStructure(schema, element.parent?.id);
|
|
109
108
|
const result = {};
|
|
110
109
|
elements.forEach(elem => {
|
|
111
|
-
var _a;
|
|
112
110
|
this.removeKeys(elem);
|
|
113
111
|
this.combinePositionAndSize(elem);
|
|
114
112
|
const type = typeof elem.type === 'string' ? elem.type : 'unknown';
|
|
115
|
-
(
|
|
113
|
+
(result[type] ??= []).push(elem);
|
|
116
114
|
});
|
|
117
115
|
return result;
|
|
118
116
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-model-serializer.js","sourceRoot":"","sources":["../../../../src/common/resources/services/mcp-model-serializer.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"mcp-model-serializer.js","sourceRoot":"","sources":["../../../../src/common/resources/services/mcp-model-serializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,8 +13,7 @@
|
|
|
13
13
|
*
|
|
14
14
|
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
15
|
********************************************************************************/
|
|
16
|
-
import { McpServerOptions as McpServerOptionsType } from '@eclipse-glsp/
|
|
17
|
-
import { ClientSessionManager, Disposable, DisposableCollection, Emitter, GLSPServer, GLSPServerInitializer, GLSPServerListener, InitializeParameters, InitializeResult, Logger, McpServerConfiguration, McpServerInitOptions } from '@eclipse-glsp/server';
|
|
16
|
+
import { ClientSessionManager, Disposable, DisposableCollection, Emitter, GLSPServer, GLSPServerInitializer, GLSPServerListener, InitializeParameters, InitializeResult, Logger, McpServerConfiguration, McpServerInitOptions, McpServerOptions as McpServerOptionsType } from '@eclipse-glsp/server';
|
|
18
17
|
import { AuthInfo } from '@modelcontextprotocol/sdk/server/auth/types.js';
|
|
19
18
|
import { WebStandardStreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';
|
|
20
19
|
import { ServerCapabilities } from '@modelcontextprotocol/sdk/types.js';
|
|
@@ -106,9 +105,9 @@ export declare abstract class AbstractMcpServerLauncher implements GLSPServerIni
|
|
|
106
105
|
/** Per-MCP-session GLSPMcpServer registry — populated on session-init, cleared on session-close. */
|
|
107
106
|
protected readonly sessionServers: Map<string, GLSPMcpServer>;
|
|
108
107
|
protected onSessionInitializedEmitter: Emitter<McpSession>;
|
|
109
|
-
readonly onSessionInitialized: import("@eclipse-glsp/
|
|
108
|
+
readonly onSessionInitialized: import("@eclipse-glsp/server").Event<McpSession>;
|
|
110
109
|
protected onSessionClosedEmitter: Emitter<string>;
|
|
111
|
-
readonly onSessionClosed: import("@eclipse-glsp/
|
|
110
|
+
readonly onSessionClosed: import("@eclipse-glsp/server").Event<string>;
|
|
112
111
|
initializeServer(server: GLSPServer, params: InitializeParameters, result: InitializeResult): Promise<InitializeResult>;
|
|
113
112
|
serverShutDown(_server: GLSPServer): void;
|
|
114
113
|
dispose(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"abstract-mcp-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/common/server/abstract-mcp-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,
|
|
1
|
+
{"version":3,"file":"abstract-mcp-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/common/server/abstract-mcp-server-launcher.ts"],"names":[],"mappings":"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"}
|
|
@@ -106,7 +106,6 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
106
106
|
this.onSessionClosed = this.onSessionClosedEmitter.event;
|
|
107
107
|
}
|
|
108
108
|
async initializeServer(server, params, result) {
|
|
109
|
-
var _a, _b;
|
|
110
109
|
const mcpServerParam = server_1.McpInitializeParameters.getServerConfig(params);
|
|
111
110
|
if (!mcpServerParam) {
|
|
112
111
|
return result;
|
|
@@ -122,14 +121,14 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
122
121
|
const { port = 0, route = '/mcp', name = 'glsp', options = {} } = mcpServerParam;
|
|
123
122
|
const mergedOptions = { ...this.mcpDefaults, ...pickInitOptions(options) };
|
|
124
123
|
this.mcpOptions.values = mergedOptions;
|
|
125
|
-
const host =
|
|
124
|
+
const host = mergedOptions.host ?? '127.0.0.1';
|
|
126
125
|
const mcpServerConfig = { port, host, route, name, options: mergedOptions };
|
|
127
126
|
this.dispatcher.harvest();
|
|
128
127
|
this.installResourceListChangedNotifier();
|
|
129
128
|
const endpoint = await this.bindTransport(mcpServerConfig);
|
|
130
129
|
this.serverConfig = mcpServerConfig;
|
|
131
130
|
this.serverUrl = endpoint.url;
|
|
132
|
-
this.logger.info(`MCP server '${mcpServerConfig.name}' is ready to accept new client requests on: ${
|
|
131
|
+
this.logger.info(`MCP server '${mcpServerConfig.name}' is ready to accept new client requests on: ${this.serverUrl ?? '(no network endpoint)'}`);
|
|
133
132
|
if (endpoint.url) {
|
|
134
133
|
return server_1.McpInitializeResult.attachServer(result, {
|
|
135
134
|
name: mcpServerConfig.name,
|
|
@@ -164,9 +163,8 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
164
163
|
* header and the spec-mandated session-id rules before handing off to the SDK.
|
|
165
164
|
*/
|
|
166
165
|
async handleRequest(req, options) {
|
|
167
|
-
var _a, _b;
|
|
168
166
|
const url = new URL(req.url);
|
|
169
|
-
const route =
|
|
167
|
+
const route = this.serverConfig?.route ?? '/mcp';
|
|
170
168
|
if (url.pathname !== route) {
|
|
171
169
|
return new Response('Not Found', { status: 404 });
|
|
172
170
|
}
|
|
@@ -195,7 +193,7 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
195
193
|
return transport;
|
|
196
194
|
}
|
|
197
195
|
try {
|
|
198
|
-
return await transport.handleRequest(req, { parsedBody, authInfo: options
|
|
196
|
+
return await transport.handleRequest(req, { parsedBody, authInfo: options?.authInfo });
|
|
199
197
|
}
|
|
200
198
|
catch (err) {
|
|
201
199
|
const message = err instanceof Error ? err.message : String(err);
|
|
@@ -212,8 +210,7 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
212
210
|
* spec-mandated 400/404 rejections so the caller can early-return.
|
|
213
211
|
*/
|
|
214
212
|
resolveTransport(req, isInit) {
|
|
215
|
-
|
|
216
|
-
const sessionId = (_a = req.headers.get('mcp-session-id')) !== null && _a !== void 0 ? _a : undefined;
|
|
213
|
+
const sessionId = req.headers.get('mcp-session-id') ?? undefined;
|
|
217
214
|
if (isInit && !sessionId) {
|
|
218
215
|
return this.createTransport();
|
|
219
216
|
}
|
|
@@ -235,11 +232,10 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
235
232
|
* present-but-unsupported → respond `400` with a JSON-RPC error envelope.
|
|
236
233
|
*/
|
|
237
234
|
validateProtocolVersionHeader(req, isInit) {
|
|
238
|
-
var _a;
|
|
239
235
|
if (isInit) {
|
|
240
236
|
return undefined;
|
|
241
237
|
}
|
|
242
|
-
const version =
|
|
238
|
+
const version = req.headers.get('mcp-protocol-version') ?? undefined;
|
|
243
239
|
if (version === undefined) {
|
|
244
240
|
return undefined;
|
|
245
241
|
}
|
|
@@ -271,7 +267,6 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
271
267
|
return undefined;
|
|
272
268
|
}
|
|
273
269
|
createTransport() {
|
|
274
|
-
var _a;
|
|
275
270
|
const allowedOrigins = this.mcpOptions.values.allowedOrigins;
|
|
276
271
|
const transport = new webStandardStreamableHttp_js_1.WebStandardStreamableHTTPServerTransport({
|
|
277
272
|
// `globalThis.crypto` is available on Node 18+, Bun, Deno, Cloudflare Workers, browsers.
|
|
@@ -280,7 +275,7 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
280
275
|
eventStore: new lru_event_store_1.LruEventStore(this.mcpOptions.values.eventStoreLimit, this.logger),
|
|
281
276
|
// Host validation lives on `validateHostHeader`.
|
|
282
277
|
allowedOrigins,
|
|
283
|
-
enableDnsRebindingProtection: (
|
|
278
|
+
enableDnsRebindingProtection: (allowedOrigins?.length ?? 0) > 0,
|
|
284
279
|
onsessioninitialized: sessionId => {
|
|
285
280
|
this.logger.info(`MCP session initialized with ID: ${sessionId}`);
|
|
286
281
|
this.sessions.set(sessionId, transport);
|
|
@@ -292,7 +287,7 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
292
287
|
onsessionclosed: sessionId => this.closeSession(sessionId)
|
|
293
288
|
});
|
|
294
289
|
transport.onclose = () => this.closeSession(transport.sessionId);
|
|
295
|
-
transport.onerror = err =>
|
|
290
|
+
transport.onerror = err => this.logger.error(`MCP transport error (session ${transport.sessionId ?? '<pre-init>'}):`, err);
|
|
296
291
|
return transport;
|
|
297
292
|
}
|
|
298
293
|
attachServerToSession(transport, config) {
|
|
@@ -394,7 +389,7 @@ let AbstractMcpServerLauncher = class AbstractMcpServerLauncher {
|
|
|
394
389
|
this.resourceHandlers.forEach(handler => handler.registerResource(glspMcpServer));
|
|
395
390
|
}
|
|
396
391
|
else {
|
|
397
|
-
this.resourceHandlers.forEach(handler =>
|
|
392
|
+
this.resourceHandlers.forEach(handler => handler.registerToolAlternative?.(glspMcpServer));
|
|
398
393
|
}
|
|
399
394
|
this.dispatcher.registerAll(glspMcpServer, resourcesAsResources);
|
|
400
395
|
this.validatePromptToolReferences(glspMcpServer);
|