@eclipse-glsp/server-mcp 2.7.0-next.9 → 2.8.0-next.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.
- package/README.md +17 -3
- package/{lib/util/index.d.ts → browser.d.ts} +1 -3
- package/browser.js +18 -0
- package/common.d.ts +16 -0
- package/common.js +18 -0
- package/lib/{resources → browser}/index.d.ts +5 -4
- package/lib/browser/index.d.ts.map +1 -0
- package/lib/{index.js → browser/index.js} +20 -24
- package/lib/browser/index.js.map +1 -0
- package/lib/browser/modules/browser-mcp-server-module.d.ts +42 -0
- package/lib/browser/modules/browser-mcp-server-module.d.ts.map +1 -0
- package/lib/browser/modules/browser-mcp-server-module.js +50 -0
- package/lib/browser/modules/browser-mcp-server-module.js.map +1 -0
- package/lib/browser/reexport.d.ts +17 -0
- package/lib/browser/reexport.d.ts.map +1 -0
- package/lib/{util/index.js → browser/reexport.js} +17 -18
- package/lib/browser/reexport.js.map +1 -0
- package/lib/browser/server/browser-mcp-request-context.d.ts +27 -0
- package/lib/browser/server/browser-mcp-request-context.d.ts.map +1 -0
- package/lib/browser/server/browser-mcp-request-context.js +67 -0
- package/lib/browser/server/browser-mcp-request-context.js.map +1 -0
- package/lib/browser/server/mcp-worker-bridge.d.ts +81 -0
- package/lib/browser/server/mcp-worker-bridge.d.ts.map +1 -0
- package/lib/browser/server/mcp-worker-bridge.js +159 -0
- package/lib/browser/server/mcp-worker-bridge.js.map +1 -0
- package/lib/browser/server/web-mcp-server-launcher.d.ts +34 -0
- package/lib/browser/server/web-mcp-server-launcher.d.ts.map +1 -0
- package/lib/browser/server/web-mcp-server-launcher.js +50 -0
- package/lib/browser/server/web-mcp-server-launcher.js.map +1 -0
- package/lib/common/index.d.ts +65 -0
- package/lib/common/index.d.ts.map +1 -0
- package/lib/common/index.js +81 -0
- package/lib/common/index.js.map +1 -0
- package/lib/{server/mcp-server-module.d.ts → common/modules/abstract-mcp-server-module.d.ts} +55 -46
- package/lib/common/modules/abstract-mcp-server-module.d.ts.map +1 -0
- package/lib/{server/mcp-server-module.js → common/modules/abstract-mcp-server-module.js} +58 -79
- package/lib/common/modules/abstract-mcp-server-module.js.map +1 -0
- package/lib/{server → common/modules}/mcp-diagram-module.d.ts +5 -5
- package/lib/common/modules/mcp-diagram-module.d.ts.map +1 -0
- package/lib/{server → common/modules}/mcp-diagram-module.js +44 -28
- package/lib/common/modules/mcp-diagram-module.js.map +1 -0
- package/lib/{prompts → common/prompts}/handlers/describe-diagram-mcp-prompt-handler.d.ts +2 -1
- package/lib/common/prompts/handlers/describe-diagram-mcp-prompt-handler.d.ts.map +1 -0
- package/lib/{prompts → common/prompts}/handlers/describe-diagram-mcp-prompt-handler.js +21 -15
- package/lib/common/prompts/handlers/describe-diagram-mcp-prompt-handler.js.map +1 -0
- package/lib/{prompts → common/prompts}/handlers/suggest-improvements-mcp-prompt-handler.d.ts +2 -1
- package/lib/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.d.ts.map +1 -0
- package/lib/{prompts → common/prompts}/handlers/suggest-improvements-mcp-prompt-handler.js +16 -12
- package/lib/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.js.map +1 -0
- package/lib/{resources → common/resources}/handlers/diagram-png-mcp-resource-handler.d.ts +4 -1
- package/lib/common/resources/handlers/diagram-png-mcp-resource-handler.d.ts.map +1 -0
- package/lib/{resources → common/resources}/handlers/diagram-png-mcp-resource-handler.js +10 -7
- package/lib/common/resources/handlers/diagram-png-mcp-resource-handler.js.map +1 -0
- package/lib/{resources → common/resources}/handlers/diagram-svg-mcp-resource-handler.d.ts +4 -1
- package/lib/common/resources/handlers/diagram-svg-mcp-resource-handler.d.ts.map +1 -0
- package/lib/{resources → common/resources}/handlers/diagram-svg-mcp-resource-handler.js +9 -6
- package/lib/common/resources/handlers/diagram-svg-mcp-resource-handler.js.map +1 -0
- package/lib/common/resources/services/element-types-provider.d.ts.map +1 -0
- package/lib/common/resources/services/element-types-provider.js.map +1 -0
- package/lib/common/resources/services/mcp-model-serializer.d.ts.map +1 -0
- package/lib/{resources → common/resources}/services/mcp-model-serializer.js +2 -2
- package/lib/common/resources/services/mcp-model-serializer.js.map +1 -0
- package/lib/common/server/abstract-mcp-server-launcher.d.ts +168 -0
- package/lib/common/server/abstract-mcp-server-launcher.d.ts.map +1 -0
- package/lib/{server/mcp-server-launcher.js → common/server/abstract-mcp-server-launcher.js} +235 -121
- package/lib/common/server/abstract-mcp-server-launcher.js.map +1 -0
- package/lib/{server → common/server}/glsp-mcp-server.d.ts +1 -1
- package/lib/common/server/glsp-mcp-server.d.ts.map +1 -0
- package/lib/{server → common/server}/glsp-mcp-server.js +6 -1
- package/lib/common/server/glsp-mcp-server.js.map +1 -0
- package/lib/{server → common/server}/lru-event-store.d.ts +1 -1
- package/lib/common/server/lru-event-store.d.ts.map +1 -0
- package/lib/common/server/lru-event-store.js.map +1 -0
- package/lib/{server → common/server}/mcp-diagram-handler-dispatcher.d.ts +3 -1
- package/lib/common/server/mcp-diagram-handler-dispatcher.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-diagram-handler-dispatcher.js +12 -6
- package/lib/common/server/mcp-diagram-handler-dispatcher.js.map +1 -0
- package/lib/common/server/mcp-diagram-prompt-handler-registry.d.ts.map +1 -0
- package/lib/common/server/mcp-diagram-prompt-handler-registry.js.map +1 -0
- package/lib/common/server/mcp-diagram-resource-handler-registry.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-diagram-resource-handler-registry.js +4 -1
- package/lib/common/server/mcp-diagram-resource-handler-registry.js.map +1 -0
- package/lib/common/server/mcp-diagram-tool-handler-registry.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-diagram-tool-handler-registry.js +3 -1
- package/lib/common/server/mcp-diagram-tool-handler-registry.js.map +1 -0
- package/lib/common/server/mcp-handler-shared.d.ts.map +1 -0
- package/lib/common/server/mcp-handler-shared.js.map +1 -0
- package/lib/common/server/mcp-id-alias-service.d.ts.map +1 -0
- package/lib/common/server/mcp-id-alias-service.js.map +1 -0
- package/lib/{server → common/server}/mcp-input-schemas.d.ts +8 -0
- package/lib/common/server/mcp-input-schemas.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-input-schemas.js +13 -1
- package/lib/common/server/mcp-input-schemas.js.map +1 -0
- package/lib/common/server/mcp-label-provider.d.ts.map +1 -0
- package/lib/common/server/mcp-label-provider.js.map +1 -0
- package/lib/{server → common/server}/mcp-log-level-registry.d.ts +1 -1
- package/lib/common/server/mcp-log-level-registry.d.ts.map +1 -0
- package/lib/common/server/mcp-log-level-registry.js.map +1 -0
- package/lib/{server → common/server}/mcp-logger.d.ts +4 -2
- package/lib/common/server/mcp-logger.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-logger.js +11 -3
- package/lib/common/server/mcp-logger.js.map +1 -0
- package/lib/common/server/mcp-mime-types.d.ts.map +1 -0
- package/lib/common/server/mcp-mime-types.js.map +1 -0
- package/lib/{server → common/server}/mcp-options.d.ts +1 -1
- package/lib/common/server/mcp-options.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-options.js +1 -1
- package/lib/common/server/mcp-options.js.map +1 -0
- package/lib/{server → common/server}/mcp-progress-reporter.d.ts +4 -2
- package/lib/common/server/mcp-progress-reporter.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-progress-reporter.js +14 -3
- package/lib/common/server/mcp-progress-reporter.js.map +1 -0
- package/lib/{server → common/server}/mcp-prompt-handler.d.ts +3 -1
- package/lib/common/server/mcp-prompt-handler.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-prompt-handler.js +10 -2
- package/lib/common/server/mcp-prompt-handler.js.map +1 -0
- package/lib/common/server/mcp-request-context.d.ts +35 -0
- package/lib/common/server/mcp-request-context.d.ts.map +1 -0
- package/lib/common/server/mcp-request-context.js +30 -0
- package/lib/common/server/mcp-request-context.js.map +1 -0
- package/lib/{server → common/server}/mcp-resource-handler.d.ts +3 -1
- package/lib/common/server/mcp-resource-handler.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-resource-handler.js +13 -5
- package/lib/common/server/mcp-resource-handler.js.map +1 -0
- package/lib/common/server/mcp-session.d.ts.map +1 -0
- package/lib/common/server/mcp-session.js.map +1 -0
- package/lib/{server → common/server}/mcp-tool-handler.d.ts +3 -1
- package/lib/common/server/mcp-tool-handler.d.ts.map +1 -0
- package/lib/{server → common/server}/mcp-tool-handler.js +7 -1
- package/lib/{server → common/server}/mcp-tool-handler.js.map +1 -1
- package/lib/{tools → common/tools}/handlers/count-elements-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/count-elements-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/count-elements-mcp-tool-handler.js +4 -3
- package/lib/common/tools/handlers/count-elements-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/create-edges-mcp-tool-handler.d.ts +4 -1
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/create-edges-mcp-tool-handler.js +9 -7
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/create-nodes-mcp-tool-handler.d.ts +4 -1
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/create-nodes-mcp-tool-handler.js +10 -8
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/delete-elements-mcp-tool-handler.d.ts +4 -1
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/delete-elements-mcp-tool-handler.js +9 -6
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/diagram-model-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/diagram-model-mcp-tool-handler.js +4 -3
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/element-types-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/element-types-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/element-types-mcp-tool-handler.js +6 -5
- package/lib/common/tools/handlers/element-types-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/get-selection-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/get-selection-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/get-selection-mcp-tool-handler.js +6 -4
- package/lib/common/tools/handlers/get-selection-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/layout-mcp-tool-handler.d.ts +4 -1
- package/lib/common/tools/handlers/layout-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/layout-mcp-tool-handler.js +7 -5
- package/lib/common/tools/handlers/layout-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/modify-edges-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/modify-edges-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/modify-edges-mcp-tool-handler.js +12 -10
- package/lib/common/tools/handlers/modify-edges-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/modify-nodes-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/modify-nodes-mcp-tool-handler.js +13 -11
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/query-elements-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/query-elements-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/query-elements-mcp-tool-handler.js +7 -5
- package/lib/common/tools/handlers/query-elements-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/redo-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/redo-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/redo-mcp-tool-handler.js +6 -4
- package/lib/common/tools/handlers/redo-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/save-model-mcp-tool-handler.d.ts +3 -1
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/save-model-mcp-tool-handler.js +7 -5
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/session-info-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/session-info-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/session-info-mcp-tool-handler.js +4 -3
- package/lib/common/tools/handlers/session-info-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/set-selection-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/set-selection-mcp-tool-handler.js +6 -5
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/set-view-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/set-view-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/set-view-mcp-tool-handler.js +10 -8
- package/lib/common/tools/handlers/set-view-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/undo-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/undo-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/undo-mcp-tool-handler.js +6 -4
- package/lib/common/tools/handlers/undo-mcp-tool-handler.js.map +1 -0
- package/lib/{tools → common/tools}/handlers/validate-diagram-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/validate-diagram-mcp-tool-handler.d.ts.map +1 -0
- package/lib/{tools → common/tools}/handlers/validate-diagram-mcp-tool-handler.js +0 -0
- package/lib/common/tools/handlers/validate-diagram-mcp-tool-handler.js.map +1 -0
- package/lib/common/util/markdown-util.d.ts.map +1 -0
- package/lib/common/util/markdown-util.js.map +1 -0
- package/lib/common/util/mcp-util.d.ts.map +1 -0
- package/lib/common/util/mcp-util.js.map +1 -0
- package/lib/{prompts → node}/index.d.ts +4 -2
- package/lib/node/index.d.ts.map +1 -0
- package/lib/{resources → node}/index.js +4 -4
- package/lib/node/index.js.map +1 -0
- package/lib/node/modules/node-mcp-server-module.d.ts +37 -0
- package/lib/node/modules/node-mcp-server-module.d.ts.map +1 -0
- package/lib/node/modules/node-mcp-server-module.js +52 -0
- package/lib/node/modules/node-mcp-server-module.js.map +1 -0
- package/lib/node/reexport.d.ts +17 -0
- package/lib/node/reexport.d.ts.map +1 -0
- package/lib/{prompts/index.js → node/reexport.js} +17 -18
- package/lib/node/reexport.js.map +1 -0
- package/lib/node/server/node-mcp-request-context.d.ts +24 -0
- package/lib/node/server/node-mcp-request-context.d.ts.map +1 -0
- package/lib/node/server/node-mcp-request-context.js +43 -0
- package/lib/node/server/node-mcp-request-context.js.map +1 -0
- package/lib/node/server/node-mcp-server-launcher.d.ts +55 -0
- package/lib/node/server/node-mcp-server-launcher.d.ts.map +1 -0
- package/lib/node/server/node-mcp-server-launcher.js +123 -0
- package/lib/node/server/node-mcp-server-launcher.js.map +1 -0
- package/node.d.ts +16 -0
- package/{src/util/index.ts → node.js} +2 -2
- package/package.json +19 -13
- package/src/{resources → browser}/index.ts +5 -4
- package/src/browser/modules/browser-mcp-server-module.ts +54 -0
- package/src/browser/reexport.ts +16 -0
- package/src/browser/server/browser-mcp-request-context.ts +59 -0
- package/src/browser/server/mcp-worker-bridge.ts +200 -0
- package/src/browser/server/web-mcp-server-launcher.ts +39 -0
- package/src/common/index.ts +65 -0
- package/src/{server/mcp-server-module.ts → common/modules/abstract-mcp-server-module.ts} +65 -77
- package/src/{server → common/modules}/mcp-diagram-module.ts +27 -28
- package/src/{prompts → common/prompts}/handlers/describe-diagram-mcp-prompt-handler.ts +8 -9
- package/src/{prompts → common/prompts}/handlers/suggest-improvements-mcp-prompt-handler.ts +6 -7
- package/src/{resources → common/resources}/handlers/diagram-png-mcp-resource-handler.ts +5 -9
- package/src/{resources → common/resources}/handlers/diagram-svg-mcp-resource-handler.ts +5 -9
- package/src/{resources → common/resources}/services/mcp-model-serializer.ts +1 -1
- package/src/common/server/abstract-mcp-server-launcher.spec.ts +458 -0
- package/src/common/server/abstract-mcp-server-launcher.ts +524 -0
- package/src/{server → common/server}/glsp-mcp-server.ts +7 -2
- package/src/{server → common/server}/lru-event-store.ts +1 -1
- package/src/{server → common/server}/mcp-diagram-handler-dispatcher.ts +13 -9
- package/src/{server → common/server}/mcp-diagram-resource-handler-registry.ts +4 -1
- package/src/{server → common/server}/mcp-diagram-tool-handler-registry.ts +3 -1
- package/src/{server → common/server}/mcp-input-schemas.ts +13 -0
- package/src/{server → common/server}/mcp-log-level-registry.ts +1 -1
- package/src/{server → common/server}/mcp-logger.spec.ts +26 -18
- package/src/{server → common/server}/mcp-logger.ts +9 -5
- package/src/{server → common/server}/mcp-options.ts +1 -1
- package/src/{server → common/server}/mcp-progress-reporter.spec.ts +19 -9
- package/src/{server → common/server}/mcp-progress-reporter.ts +9 -5
- package/src/{server → common/server}/mcp-prompt-handler.ts +8 -4
- package/src/{server → common/server}/mcp-request-context.ts +20 -16
- package/src/{server → common/server}/mcp-resource-handler.ts +11 -7
- package/src/{server → common/server}/mcp-tool-handler.spec.ts +4 -4
- package/src/{server → common/server}/mcp-tool-handler.ts +8 -4
- package/src/{tools → common/tools}/handlers/count-elements-mcp-tool-handler.spec.ts +3 -1
- package/src/{tools → common/tools}/handlers/count-elements-mcp-tool-handler.ts +3 -1
- package/src/{tools → common/tools}/handlers/create-edges-mcp-tool-handler.spec.ts +3 -1
- package/src/{tools → common/tools}/handlers/create-edges-mcp-tool-handler.ts +7 -5
- package/src/{tools → common/tools}/handlers/create-nodes-mcp-tool-handler.spec.ts +3 -1
- package/src/{tools → common/tools}/handlers/create-nodes-mcp-tool-handler.ts +7 -5
- package/src/{tools → common/tools}/handlers/delete-elements-mcp-tool-handler.ts +7 -9
- package/src/{tools → common/tools}/handlers/diagram-model-mcp-tool-handler.ts +3 -1
- package/src/{tools → common/tools}/handlers/element-types-mcp-tool-handler.ts +2 -1
- package/src/{tools → common/tools}/handlers/get-selection-mcp-tool-handler.ts +3 -1
- package/src/{tools → common/tools}/handlers/layout-mcp-tool-handler.ts +6 -3
- package/src/{tools → common/tools}/handlers/modify-edges-mcp-tool-handler.ts +6 -6
- package/src/{tools → common/tools}/handlers/modify-nodes-mcp-tool-handler.ts +6 -6
- package/src/{tools → common/tools}/handlers/query-elements-mcp-tool-handler.spec.ts +3 -1
- package/src/{tools → common/tools}/handlers/query-elements-mcp-tool-handler.ts +3 -7
- package/src/{tools → common/tools}/handlers/redo-mcp-tool-handler.ts +3 -1
- package/src/{tools → common/tools}/handlers/save-model-mcp-tool-handler.ts +4 -1
- package/src/{tools → common/tools}/handlers/session-info-mcp-tool-handler.spec.ts +1 -1
- package/src/{tools → common/tools}/handlers/session-info-mcp-tool-handler.ts +2 -1
- package/src/{tools → common/tools}/handlers/set-selection-mcp-tool-handler.spec.ts +3 -1
- package/src/{tools → common/tools}/handlers/set-selection-mcp-tool-handler.ts +3 -1
- package/src/{tools → common/tools}/handlers/set-view-mcp-tool-handler.ts +3 -9
- package/src/{tools → common/tools}/handlers/undo-mcp-tool-handler.ts +3 -1
- package/src/{tools → common/tools}/handlers/validate-diagram-mcp-tool-handler.ts +0 -0
- package/src/{prompts → node}/index.ts +4 -2
- package/src/node/modules/node-mcp-server-module.ts +56 -0
- package/src/node/reexport.ts +16 -0
- package/src/node/server/mcp-http-transport-e2e.spec.ts +297 -0
- package/src/node/server/node-mcp-request-context.ts +33 -0
- package/src/{server/mcp-server-launcher.spec.ts → node/server/node-mcp-server-launcher.spec.ts} +19 -8
- package/src/node/server/node-mcp-server-launcher.ts +130 -0
- package/lib/index.d.ts +0 -23
- package/lib/index.d.ts.map +0 -1
- package/lib/index.js.map +0 -1
- package/lib/prompts/handlers/describe-diagram-mcp-prompt-handler.d.ts.map +0 -1
- package/lib/prompts/handlers/describe-diagram-mcp-prompt-handler.js.map +0 -1
- package/lib/prompts/handlers/suggest-improvements-mcp-prompt-handler.d.ts.map +0 -1
- package/lib/prompts/handlers/suggest-improvements-mcp-prompt-handler.js.map +0 -1
- package/lib/prompts/index.d.ts.map +0 -1
- package/lib/prompts/index.js.map +0 -1
- package/lib/resources/handlers/diagram-png-mcp-resource-handler.d.ts.map +0 -1
- package/lib/resources/handlers/diagram-png-mcp-resource-handler.js.map +0 -1
- package/lib/resources/handlers/diagram-svg-mcp-resource-handler.d.ts.map +0 -1
- package/lib/resources/handlers/diagram-svg-mcp-resource-handler.js.map +0 -1
- package/lib/resources/index.d.ts.map +0 -1
- package/lib/resources/index.js.map +0 -1
- package/lib/resources/services/element-types-provider.d.ts.map +0 -1
- package/lib/resources/services/element-types-provider.js.map +0 -1
- package/lib/resources/services/mcp-model-serializer.d.ts.map +0 -1
- package/lib/resources/services/mcp-model-serializer.js.map +0 -1
- package/lib/server/glsp-mcp-server.d.ts.map +0 -1
- package/lib/server/glsp-mcp-server.js.map +0 -1
- package/lib/server/index.d.ts +0 -37
- package/lib/server/index.d.ts.map +0 -1
- package/lib/server/index.js +0 -57
- package/lib/server/index.js.map +0 -1
- package/lib/server/lru-event-store.d.ts.map +0 -1
- package/lib/server/lru-event-store.js.map +0 -1
- package/lib/server/mcp-diagram-handler-dispatcher.d.ts.map +0 -1
- package/lib/server/mcp-diagram-handler-dispatcher.js.map +0 -1
- package/lib/server/mcp-diagram-module.d.ts.map +0 -1
- package/lib/server/mcp-diagram-module.js.map +0 -1
- package/lib/server/mcp-diagram-prompt-handler-registry.d.ts.map +0 -1
- package/lib/server/mcp-diagram-prompt-handler-registry.js.map +0 -1
- package/lib/server/mcp-diagram-resource-handler-registry.d.ts.map +0 -1
- package/lib/server/mcp-diagram-resource-handler-registry.js.map +0 -1
- package/lib/server/mcp-diagram-tool-handler-registry.d.ts.map +0 -1
- package/lib/server/mcp-diagram-tool-handler-registry.js.map +0 -1
- package/lib/server/mcp-handler-shared.d.ts.map +0 -1
- package/lib/server/mcp-handler-shared.js.map +0 -1
- package/lib/server/mcp-http-transport.d.ts +0 -93
- package/lib/server/mcp-http-transport.d.ts.map +0 -1
- package/lib/server/mcp-http-transport.js +0 -350
- package/lib/server/mcp-http-transport.js.map +0 -1
- package/lib/server/mcp-id-alias-service.d.ts.map +0 -1
- package/lib/server/mcp-id-alias-service.js.map +0 -1
- package/lib/server/mcp-input-schemas.d.ts.map +0 -1
- package/lib/server/mcp-input-schemas.js.map +0 -1
- package/lib/server/mcp-label-provider.d.ts.map +0 -1
- package/lib/server/mcp-label-provider.js.map +0 -1
- package/lib/server/mcp-log-level-registry.d.ts.map +0 -1
- package/lib/server/mcp-log-level-registry.js.map +0 -1
- package/lib/server/mcp-logger.d.ts.map +0 -1
- package/lib/server/mcp-logger.js.map +0 -1
- package/lib/server/mcp-mime-types.d.ts.map +0 -1
- package/lib/server/mcp-mime-types.js.map +0 -1
- package/lib/server/mcp-options.d.ts.map +0 -1
- package/lib/server/mcp-options.js.map +0 -1
- package/lib/server/mcp-progress-reporter.d.ts.map +0 -1
- package/lib/server/mcp-progress-reporter.js.map +0 -1
- package/lib/server/mcp-prompt-handler.d.ts.map +0 -1
- package/lib/server/mcp-prompt-handler.js.map +0 -1
- package/lib/server/mcp-request-context.d.ts +0 -37
- package/lib/server/mcp-request-context.d.ts.map +0 -1
- package/lib/server/mcp-request-context.js +0 -37
- package/lib/server/mcp-request-context.js.map +0 -1
- package/lib/server/mcp-resource-handler.d.ts.map +0 -1
- package/lib/server/mcp-resource-handler.js.map +0 -1
- package/lib/server/mcp-server-launcher.d.ts +0 -143
- package/lib/server/mcp-server-launcher.d.ts.map +0 -1
- package/lib/server/mcp-server-launcher.js.map +0 -1
- package/lib/server/mcp-server-module.d.ts.map +0 -1
- package/lib/server/mcp-server-module.js.map +0 -1
- package/lib/server/mcp-session.d.ts.map +0 -1
- package/lib/server/mcp-session.js.map +0 -1
- package/lib/server/mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/count-elements-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/count-elements-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/create-edges-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/create-edges-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/create-nodes-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/create-nodes-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/delete-elements-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/delete-elements-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/diagram-model-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/diagram-model-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/element-types-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/element-types-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/get-selection-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/get-selection-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/layout-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/layout-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/modify-edges-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/modify-edges-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/modify-nodes-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/modify-nodes-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/query-elements-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/query-elements-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/redo-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/redo-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/save-model-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/save-model-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/session-info-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/session-info-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/set-selection-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/set-selection-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/set-view-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/set-view-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/undo-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/undo-mcp-tool-handler.js.map +0 -1
- package/lib/tools/handlers/validate-diagram-mcp-tool-handler.d.ts.map +0 -1
- package/lib/tools/handlers/validate-diagram-mcp-tool-handler.js.map +0 -1
- package/lib/tools/index.d.ts +0 -34
- package/lib/tools/index.d.ts.map +0 -1
- package/lib/tools/index.js +0 -50
- package/lib/tools/index.js.map +0 -1
- package/lib/util/index.d.ts.map +0 -1
- package/lib/util/index.js.map +0 -1
- package/lib/util/markdown-util.d.ts.map +0 -1
- package/lib/util/markdown-util.js.map +0 -1
- package/lib/util/mcp-util.d.ts.map +0 -1
- package/lib/util/mcp-util.js.map +0 -1
- package/src/index.ts +0 -24
- package/src/server/index.ts +0 -42
- package/src/server/mcp-http-transport-e2e.spec.ts +0 -151
- package/src/server/mcp-http-transport.spec.ts +0 -385
- package/src/server/mcp-http-transport.ts +0 -368
- package/src/server/mcp-server-launcher.ts +0 -369
- package/src/tools/index.ts +0 -34
- /package/lib/{resources → common/resources}/services/element-types-provider.d.ts +0 -0
- /package/lib/{resources → common/resources}/services/element-types-provider.js +0 -0
- /package/lib/{resources → common/resources}/services/mcp-model-serializer.d.ts +0 -0
- /package/lib/{server → common/server}/lru-event-store.js +0 -0
- /package/lib/{server → common/server}/mcp-diagram-prompt-handler-registry.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-diagram-prompt-handler-registry.js +0 -0
- /package/lib/{server → common/server}/mcp-diagram-resource-handler-registry.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-diagram-tool-handler-registry.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-handler-shared.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-handler-shared.js +0 -0
- /package/lib/{server → common/server}/mcp-id-alias-service.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-id-alias-service.js +0 -0
- /package/lib/{server → common/server}/mcp-label-provider.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-label-provider.js +0 -0
- /package/lib/{server → common/server}/mcp-log-level-registry.js +0 -0
- /package/lib/{server → common/server}/mcp-mime-types.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-mime-types.js +0 -0
- /package/lib/{server → common/server}/mcp-session.d.ts +0 -0
- /package/lib/{server → common/server}/mcp-session.js +0 -0
- /package/lib/{util → common/util}/markdown-util.d.ts +0 -0
- /package/lib/{util → common/util}/markdown-util.js +0 -0
- /package/lib/{util → common/util}/mcp-util.d.ts +0 -0
- /package/lib/{util → common/util}/mcp-util.js +0 -0
- /package/src/{resources → common/resources}/services/element-types-provider.ts +0 -0
- /package/src/{server → common/server}/glsp-mcp-server.spec.ts +0 -0
- /package/src/{server → common/server}/lru-event-store.spec.ts +0 -0
- /package/src/{server → common/server}/mcp-diagram-handler-dispatcher.spec.ts +0 -0
- /package/src/{server → common/server}/mcp-diagram-prompt-handler-registry.ts +0 -0
- /package/src/{server → common/server}/mcp-handler-shared.spec.ts +0 -0
- /package/src/{server → common/server}/mcp-handler-shared.ts +0 -0
- /package/src/{server → common/server}/mcp-id-alias-service.spec.ts +0 -0
- /package/src/{server → common/server}/mcp-id-alias-service.ts +0 -0
- /package/src/{server → common/server}/mcp-label-provider.ts +0 -0
- /package/src/{server → common/server}/mcp-log-level-registry.spec.ts +0 -0
- /package/src/{server → common/server}/mcp-mime-types.ts +0 -0
- /package/src/{server → common/server}/mcp-session.ts +0 -0
- /package/src/{tools → common/tools}/tool-annotations.spec.ts +0 -0
- /package/src/{util → common/util}/markdown-util.ts +0 -0
- /package/src/{util → common/util}/mcp-util.ts +0 -0
- /package/src/{server → node/server}/raw-http.spec.ts +0 -0
|
@@ -0,0 +1,159 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Copyright (c) 2026 EclipseSource and others.
|
|
4
|
+
*
|
|
5
|
+
* This program and the accompanying materials are made available under the
|
|
6
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
*
|
|
9
|
+
* This Source Code may also be made available under the following Secondary
|
|
10
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
* with the GNU Classpath Exception which is available at
|
|
13
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
*
|
|
15
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
********************************************************************************/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.McpWorkerBridge = exports.MCP_INIT_PORT_MESSAGE_TYPE = exports.MCP_RESPONSE_MESSAGE_TYPE = exports.MCP_REQUEST_MESSAGE_TYPE = void 0;
|
|
19
|
+
exports.isMcpRequestMessage = isMcpRequestMessage;
|
|
20
|
+
exports.isMcpInitPortMessage = isMcpInitPortMessage;
|
|
21
|
+
exports.canTransferReadableStream = canTransferReadableStream;
|
|
22
|
+
const browser_mcp_server_module_1 = require("../modules/browser-mcp-server-module");
|
|
23
|
+
exports.MCP_REQUEST_MESSAGE_TYPE = 'mcp-request';
|
|
24
|
+
exports.MCP_RESPONSE_MESSAGE_TYPE = 'mcp-response';
|
|
25
|
+
exports.MCP_INIT_PORT_MESSAGE_TYPE = 'mcp-init-port';
|
|
26
|
+
function isMcpRequestMessage(value) {
|
|
27
|
+
return Object(value) === value && value.type === exports.MCP_REQUEST_MESSAGE_TYPE;
|
|
28
|
+
}
|
|
29
|
+
function isMcpInitPortMessage(value) {
|
|
30
|
+
return Object(value) === value && value.type === exports.MCP_INIT_PORT_MESSAGE_TYPE;
|
|
31
|
+
}
|
|
32
|
+
/** Probes whether the current realm can transfer `ReadableStream` via `postMessage` (Chromium yes; Firefox / Safari no). */
|
|
33
|
+
function canTransferReadableStream() {
|
|
34
|
+
try {
|
|
35
|
+
const probe = new ReadableStream();
|
|
36
|
+
structuredClone(probe, { transfer: [probe] });
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
catch {
|
|
40
|
+
return false;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Bridges `postMessage` traffic to an {@link AbstractMcpServerLauncher} for browser / Web Worker
|
|
45
|
+
* adopters that proxy MCP requests via Service-Worker → Web-Worker plumbing.
|
|
46
|
+
* See `ARCHITECTURE.md` (Portable handler) for the message protocol and queueing semantics.
|
|
47
|
+
*/
|
|
48
|
+
class McpWorkerBridge {
|
|
49
|
+
constructor(scope = self) {
|
|
50
|
+
this.scope = scope;
|
|
51
|
+
this.listener = (event) => this.onMessage(event);
|
|
52
|
+
/** Serialise dispatches — `BrowserMcpRequestContext` is a single-slot store, not concurrency-safe. */
|
|
53
|
+
this.dispatchChain = Promise.resolve();
|
|
54
|
+
this.streamTransferable = canTransferReadableStream();
|
|
55
|
+
this.bufferingWarned = false;
|
|
56
|
+
this.launcherReady = new Promise(resolve => {
|
|
57
|
+
this.resolveLauncher = resolve;
|
|
58
|
+
});
|
|
59
|
+
this.scope.addEventListener('message', this.listener);
|
|
60
|
+
}
|
|
61
|
+
dispose() {
|
|
62
|
+
this.scope.removeEventListener('message', this.listener);
|
|
63
|
+
}
|
|
64
|
+
/** Returns a {@link BrowserMcpServerModule} that registers its launcher with this bridge on DI activation. */
|
|
65
|
+
createServerModule(overrides) {
|
|
66
|
+
const bridge = this;
|
|
67
|
+
class BridgedBrowserMcpServerModule extends browser_mcp_server_module_1.BrowserMcpServerModule {
|
|
68
|
+
onMcpServerLauncherActivated(launcher) {
|
|
69
|
+
bridge.bindLauncher(launcher);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return new BridgedBrowserMcpServerModule(overrides);
|
|
73
|
+
}
|
|
74
|
+
/** First call binds; subsequent calls are no-ops. */
|
|
75
|
+
bindLauncher(launcher) {
|
|
76
|
+
this.resolveLauncher(launcher);
|
|
77
|
+
}
|
|
78
|
+
onMessage(event) {
|
|
79
|
+
const data = event.data;
|
|
80
|
+
if (isMcpRequestMessage(data)) {
|
|
81
|
+
this.enqueueDispatch(data, event.ports[0]);
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
if (isMcpInitPortMessage(data)) {
|
|
85
|
+
const port = event.ports[0];
|
|
86
|
+
if (!port) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
port.onmessage = portEvent => {
|
|
90
|
+
const portData = portEvent.data;
|
|
91
|
+
if (isMcpRequestMessage(portData)) {
|
|
92
|
+
this.enqueueDispatch(portData, port);
|
|
93
|
+
}
|
|
94
|
+
};
|
|
95
|
+
port.start();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
enqueueDispatch(request, port) {
|
|
99
|
+
this.dispatchChain = this.dispatchChain
|
|
100
|
+
.then(() => this.dispatch(request, port))
|
|
101
|
+
.catch(err => console.error('MCP worker bridge failed:', err));
|
|
102
|
+
}
|
|
103
|
+
async dispatch(request, port) {
|
|
104
|
+
try {
|
|
105
|
+
const launcher = await this.launcherReady;
|
|
106
|
+
const init = { method: request.method, headers: request.headers };
|
|
107
|
+
if (typeof request.body === 'string') {
|
|
108
|
+
init.body = request.body;
|
|
109
|
+
}
|
|
110
|
+
const response = await launcher.handleRequest(new Request(request.url, init));
|
|
111
|
+
const headers = {};
|
|
112
|
+
response.headers.forEach((value, key) => {
|
|
113
|
+
headers[key] = value;
|
|
114
|
+
});
|
|
115
|
+
this.reply(port, {
|
|
116
|
+
type: exports.MCP_RESPONSE_MESSAGE_TYPE,
|
|
117
|
+
id: request.id,
|
|
118
|
+
status: response.status,
|
|
119
|
+
statusText: response.statusText,
|
|
120
|
+
headers,
|
|
121
|
+
body: await this.encodeBody(response)
|
|
122
|
+
});
|
|
123
|
+
}
|
|
124
|
+
catch (err) {
|
|
125
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
126
|
+
this.reply(port, {
|
|
127
|
+
type: exports.MCP_RESPONSE_MESSAGE_TYPE,
|
|
128
|
+
id: request.id,
|
|
129
|
+
status: 500,
|
|
130
|
+
statusText: 'Internal Server Error',
|
|
131
|
+
headers: { 'content-type': 'text/plain' },
|
|
132
|
+
body: await this.encodeBody(new Response(`MCP worker bridge error: ${message}`))
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
/** Stream on Chromium; buffer to `ArrayBuffer` (still transferable) on browsers without transferable streams. */
|
|
137
|
+
async encodeBody(response) {
|
|
138
|
+
if (this.streamTransferable) {
|
|
139
|
+
return response.body;
|
|
140
|
+
}
|
|
141
|
+
if (!this.bufferingWarned) {
|
|
142
|
+
this.bufferingWarned = true;
|
|
143
|
+
console.warn('McpWorkerBridge: ReadableStream is not transferable in this browser — buffering MCP response bodies. ' +
|
|
144
|
+
'Chunked / SSE streaming will deliver as a single chunk; non-streaming MCP calls are unaffected.');
|
|
145
|
+
}
|
|
146
|
+
return response.arrayBuffer();
|
|
147
|
+
}
|
|
148
|
+
reply(port, message) {
|
|
149
|
+
const transfer = message.body ? [message.body] : [];
|
|
150
|
+
if (port) {
|
|
151
|
+
port.postMessage(message, transfer);
|
|
152
|
+
}
|
|
153
|
+
else {
|
|
154
|
+
this.scope.postMessage(message, transfer);
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
exports.McpWorkerBridge = McpWorkerBridge;
|
|
159
|
+
//# sourceMappingURL=mcp-worker-bridge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-worker-bridge.js","sourceRoot":"","sources":["../../../src/browser/server/mcp-worker-bridge.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;AAmClF,kDAEC;AAED,oDAEC;AAGD,8DAQC;AA/CD,oFAA8E;AAEjE,QAAA,wBAAwB,GAAG,aAAa,CAAC;AACzC,QAAA,yBAAyB,GAAG,cAAc,CAAC;AAC3C,QAAA,0BAA0B,GAAG,eAAe,CAAC;AA0B1D,SAAgB,mBAAmB,CAAC,KAAc;IAC9C,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,IAAK,KAA4B,CAAC,IAAI,KAAK,gCAAwB,CAAC;AACtG,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAc;IAC/C,OAAO,MAAM,CAAC,KAAK,CAAC,KAAK,KAAK,IAAK,KAA4B,CAAC,IAAI,KAAK,kCAA0B,CAAC;AACxG,CAAC;AAED,4HAA4H;AAC5H,SAAgB,yBAAyB;IACrC,IAAI,CAAC;QACD,MAAM,KAAK,GAAG,IAAI,cAAc,EAAE,CAAC;QACnC,eAAe,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC9C,OAAO,IAAI,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACL,OAAO,KAAK,CAAC;IACjB,CAAC;AACL,CAAC;AASD;;;;GAIG;AACH,MAAa,eAAe;IASxB,YAA+B,QAAwB,IAAiC;QAAzD,UAAK,GAAL,KAAK,CAAoD;QANrE,aAAQ,GAAG,CAAC,KAAmB,EAAQ,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACnF,sGAAsG;QAC5F,kBAAa,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;QACxC,uBAAkB,GAAY,yBAAyB,EAAE,CAAC;QACnE,oBAAe,GAAG,KAAK,CAAC;QAG9B,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAA4B,OAAO,CAAC,EAAE;YAClE,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC;QACnC,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO;QACH,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC7D,CAAC;IAED,8GAA8G;IAC9G,kBAAkB,CAAC,SAA6B;QAC5C,MAAM,MAAM,GAAG,IAAI,CAAC;QACpB,MAAM,6BAA8B,SAAQ,kDAAsB;YAC3C,4BAA4B,CAAC,QAAmC;gBAC/E,MAAM,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;SACJ;QACD,OAAO,IAAI,6BAA6B,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAED,qDAAqD;IACrD,YAAY,CAAC,QAAmC;QAC5C,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAES,SAAS,CAAC,KAAmB;QACnC,MAAM,IAAI,GAAY,KAAK,CAAC,IAAI,CAAC;QACjC,IAAI,mBAAmB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3C,OAAO;QACX,CAAC;QACD,IAAI,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,OAAO;YACX,CAAC;YACD,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC,EAAE;gBACzB,MAAM,QAAQ,GAAY,SAAS,CAAC,IAAI,CAAC;gBACzC,IAAI,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAChC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACzC,CAAC;YACL,CAAC,CAAC;YACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACjB,CAAC;IACL,CAAC;IAES,eAAe,CAAC,OAA0B,EAAE,IAA6B;QAC/E,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa;aAClC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;aACxC,KAAK,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,GAAG,CAAC,CAAC,CAAC;IACvE,CAAC;IAES,KAAK,CAAC,QAAQ,CAAC,OAA0B,EAAE,IAA6B;QAC9E,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC;YAC1C,MAAM,IAAI,GAAgB,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC;YAC/E,IAAI,OAAO,OAAO,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;gBACnC,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC7B,CAAC;YACD,MAAM,QAAQ,GAAG,MAAM,QAAQ,CAAC,aAAa,CAAC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YAC9E,MAAM,OAAO,GAA2B,EAAE,CAAC;YAC3C,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACpC,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACzB,CAAC,CAAC,CAAC;YACH,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;gBACb,IAAI,EAAE,iCAAyB;gBAC/B,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,UAAU,EAAE,QAAQ,CAAC,UAAU;gBAC/B,OAAO;gBACP,IAAI,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;aACxC,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACpB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACjE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;gBACb,IAAI,EAAE,iCAAyB;gBAC/B,EAAE,EAAE,OAAO,CAAC,EAAE;gBACd,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,uBAAuB;gBACnC,OAAO,EAAE,EAAE,cAAc,EAAE,YAAY,EAAE;gBACzC,IAAI,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,QAAQ,CAAC,4BAA4B,OAAO,EAAE,CAAC,CAAC;aACnF,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAED,iHAAiH;IACvG,KAAK,CAAC,UAAU,CAAC,QAAkB;QACzC,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,OAAO,QAAQ,CAAC,IAAI,CAAC;QACzB,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,OAAO,CAAC,IAAI,CACR,uGAAuG;gBACnG,iGAAiG,CACxG,CAAC;QACN,CAAC;QACD,OAAO,QAAQ,CAAC,WAAW,EAAE,CAAC;IAClC,CAAC;IAES,KAAK,CAAC,IAA6B,EAAE,OAA2B;QACtE,MAAM,QAAQ,GAAmB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACpE,IAAI,IAAI,EAAE,CAAC;YACP,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QACxC,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC9C,CAAC;IACL,CAAC;CACJ;AAvHD,0CAuHC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2026 EclipseSource and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
import { AbstractMcpServerLauncher, FullMcpServerConfiguration, TransportEndpoint } from '../../common/server/abstract-mcp-server-launcher';
|
|
17
|
+
/**
|
|
18
|
+
* Web target for {@link AbstractMcpServerLauncher}. Web targets (Cloudflare Worker, Deno Deploy,
|
|
19
|
+
* Bun, Service Worker, in-page Worker) have no socket to bind; the adopter plugs the inherited
|
|
20
|
+
* {@link AbstractMcpServerLauncher.getRequestHandler} into their own listener. `bindTransport`
|
|
21
|
+
* is therefore a no-op.
|
|
22
|
+
*
|
|
23
|
+
* **Adopter responsibilities.** Authentication is the adopter's job. The MCP server has no
|
|
24
|
+
* built-in auth — wrap `getRequestHandler()` with whatever middleware your deployment requires
|
|
25
|
+
* (bearer token, mTLS at proxy, Cloudflare Access, OAuth, etc.). Session state lives in memory
|
|
26
|
+
* inside the launcher; multi-isolate / multi-region deployments that need shared session state
|
|
27
|
+
* must subclass and override the session store.
|
|
28
|
+
*
|
|
29
|
+
* @see `examples/workflow-server-bundled-web/smoke.html` for a Web Worker-based example.
|
|
30
|
+
*/
|
|
31
|
+
export declare class WebMcpServerLauncher extends AbstractMcpServerLauncher {
|
|
32
|
+
protected bindTransport(_config: FullMcpServerConfiguration): Promise<TransportEndpoint>;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=web-mcp-server-launcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-mcp-server-launcher.d.ts","sourceRoot":"","sources":["../../../src/browser/server/web-mcp-server-launcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAGlF,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AAE5I;;;;;;;;;;;;;GAaG;AACH,qBACa,oBAAqB,SAAQ,yBAAyB;cAC/C,aAAa,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAGjG"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Copyright (c) 2026 EclipseSource and others.
|
|
4
|
+
*
|
|
5
|
+
* This program and the accompanying materials are made available under the
|
|
6
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
*
|
|
9
|
+
* This Source Code may also be made available under the following Secondary
|
|
10
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
* with the GNU Classpath Exception which is available at
|
|
13
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
*
|
|
15
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
********************************************************************************/
|
|
17
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
18
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
19
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
20
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
21
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
22
|
+
};
|
|
23
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
24
|
+
exports.WebMcpServerLauncher = void 0;
|
|
25
|
+
const inversify_1 = require("inversify");
|
|
26
|
+
const abstract_mcp_server_launcher_1 = require("../../common/server/abstract-mcp-server-launcher");
|
|
27
|
+
/**
|
|
28
|
+
* Web target for {@link AbstractMcpServerLauncher}. Web targets (Cloudflare Worker, Deno Deploy,
|
|
29
|
+
* Bun, Service Worker, in-page Worker) have no socket to bind; the adopter plugs the inherited
|
|
30
|
+
* {@link AbstractMcpServerLauncher.getRequestHandler} into their own listener. `bindTransport`
|
|
31
|
+
* is therefore a no-op.
|
|
32
|
+
*
|
|
33
|
+
* **Adopter responsibilities.** Authentication is the adopter's job. The MCP server has no
|
|
34
|
+
* built-in auth — wrap `getRequestHandler()` with whatever middleware your deployment requires
|
|
35
|
+
* (bearer token, mTLS at proxy, Cloudflare Access, OAuth, etc.). Session state lives in memory
|
|
36
|
+
* inside the launcher; multi-isolate / multi-region deployments that need shared session state
|
|
37
|
+
* must subclass and override the session store.
|
|
38
|
+
*
|
|
39
|
+
* @see `examples/workflow-server-bundled-web/smoke.html` for a Web Worker-based example.
|
|
40
|
+
*/
|
|
41
|
+
let WebMcpServerLauncher = class WebMcpServerLauncher extends abstract_mcp_server_launcher_1.AbstractMcpServerLauncher {
|
|
42
|
+
async bindTransport(_config) {
|
|
43
|
+
return {};
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
exports.WebMcpServerLauncher = WebMcpServerLauncher;
|
|
47
|
+
exports.WebMcpServerLauncher = WebMcpServerLauncher = __decorate([
|
|
48
|
+
(0, inversify_1.injectable)()
|
|
49
|
+
], WebMcpServerLauncher);
|
|
50
|
+
//# sourceMappingURL=web-mcp-server-launcher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"web-mcp-server-launcher.js","sourceRoot":"","sources":["../../../src/browser/server/web-mcp-server-launcher.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;AAElF,yCAAuC;AACvC,mGAA4I;AAE5I;;;;;;;;;;;;;GAaG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,wDAAyB;IACrD,KAAK,CAAC,aAAa,CAAC,OAAmC;QAC7D,OAAO,EAAE,CAAC;IACd,CAAC;CACJ,CAAA;AAJY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAIhC"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/********************************************************************************
|
|
2
|
+
* Copyright (c) 2026 EclipseSource and others.
|
|
3
|
+
*
|
|
4
|
+
* This program and the accompanying materials are made available under the
|
|
5
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
6
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
7
|
+
*
|
|
8
|
+
* This Source Code may also be made available under the following Secondary
|
|
9
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
10
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
11
|
+
* with the GNU Classpath Exception which is available at
|
|
12
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
13
|
+
*
|
|
14
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
15
|
+
********************************************************************************/
|
|
16
|
+
export * from './modules/abstract-mcp-server-module';
|
|
17
|
+
export * from './modules/mcp-diagram-module';
|
|
18
|
+
export * from './prompts/handlers/describe-diagram-mcp-prompt-handler';
|
|
19
|
+
export * from './prompts/handlers/suggest-improvements-mcp-prompt-handler';
|
|
20
|
+
export * from './resources/handlers/diagram-png-mcp-resource-handler';
|
|
21
|
+
export * from './resources/handlers/diagram-svg-mcp-resource-handler';
|
|
22
|
+
export * from './resources/services/element-types-provider';
|
|
23
|
+
export * from './resources/services/mcp-model-serializer';
|
|
24
|
+
export * from './server/abstract-mcp-server-launcher';
|
|
25
|
+
export * from './server/glsp-mcp-server';
|
|
26
|
+
export * from './server/lru-event-store';
|
|
27
|
+
export * from './server/mcp-diagram-handler-dispatcher';
|
|
28
|
+
export * from './server/mcp-diagram-prompt-handler-registry';
|
|
29
|
+
export * from './server/mcp-diagram-resource-handler-registry';
|
|
30
|
+
export * from './server/mcp-diagram-tool-handler-registry';
|
|
31
|
+
export * from './server/mcp-handler-shared';
|
|
32
|
+
export * from './server/mcp-id-alias-service';
|
|
33
|
+
export * from './server/mcp-input-schemas';
|
|
34
|
+
export * from './server/mcp-label-provider';
|
|
35
|
+
export * from './server/mcp-log-level-registry';
|
|
36
|
+
export * from './server/mcp-logger';
|
|
37
|
+
export * from './server/mcp-mime-types';
|
|
38
|
+
export * from './server/mcp-options';
|
|
39
|
+
export * from './server/mcp-progress-reporter';
|
|
40
|
+
export * from './server/mcp-prompt-handler';
|
|
41
|
+
export * from './server/mcp-request-context';
|
|
42
|
+
export * from './server/mcp-resource-handler';
|
|
43
|
+
export * from './server/mcp-session';
|
|
44
|
+
export * from './server/mcp-tool-handler';
|
|
45
|
+
export * from './tools/handlers/count-elements-mcp-tool-handler';
|
|
46
|
+
export * from './tools/handlers/create-edges-mcp-tool-handler';
|
|
47
|
+
export * from './tools/handlers/create-nodes-mcp-tool-handler';
|
|
48
|
+
export * from './tools/handlers/delete-elements-mcp-tool-handler';
|
|
49
|
+
export * from './tools/handlers/diagram-model-mcp-tool-handler';
|
|
50
|
+
export * from './tools/handlers/element-types-mcp-tool-handler';
|
|
51
|
+
export * from './tools/handlers/get-selection-mcp-tool-handler';
|
|
52
|
+
export * from './tools/handlers/layout-mcp-tool-handler';
|
|
53
|
+
export * from './tools/handlers/modify-edges-mcp-tool-handler';
|
|
54
|
+
export * from './tools/handlers/modify-nodes-mcp-tool-handler';
|
|
55
|
+
export * from './tools/handlers/query-elements-mcp-tool-handler';
|
|
56
|
+
export * from './tools/handlers/redo-mcp-tool-handler';
|
|
57
|
+
export * from './tools/handlers/save-model-mcp-tool-handler';
|
|
58
|
+
export * from './tools/handlers/session-info-mcp-tool-handler';
|
|
59
|
+
export * from './tools/handlers/set-selection-mcp-tool-handler';
|
|
60
|
+
export * from './tools/handlers/set-view-mcp-tool-handler';
|
|
61
|
+
export * from './tools/handlers/undo-mcp-tool-handler';
|
|
62
|
+
export * from './tools/handlers/validate-diagram-mcp-tool-handler';
|
|
63
|
+
export * from './util/markdown-util';
|
|
64
|
+
export * from './util/mcp-util';
|
|
65
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,wDAAwD,CAAC;AACvE,cAAc,4DAA4D,CAAC;AAC3E,cAAc,uDAAuD,CAAC;AACtE,cAAc,uDAAuD,CAAC;AACtE,cAAc,6CAA6C,CAAC;AAC5D,cAAc,2CAA2C,CAAC;AAC1D,cAAc,uCAAuC,CAAC;AACtD,cAAc,0BAA0B,CAAC;AACzC,cAAc,0BAA0B,CAAC;AACzC,cAAc,yCAAyC,CAAC;AACxD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,4CAA4C,CAAC;AAC3D,cAAc,6BAA6B,CAAC;AAC5C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,+BAA+B,CAAC;AAC9C,cAAc,sBAAsB,CAAC;AACrC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,kDAAkD,CAAC;AACjE,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,mDAAmD,CAAC;AAClE,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,iDAAiD,CAAC;AAChE,cAAc,0CAA0C,CAAC;AACzD,cAAc,gDAAgD,CAAC;AAC/D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,kDAAkD,CAAC;AACjE,cAAc,wCAAwC,CAAC;AACvD,cAAc,8CAA8C,CAAC;AAC7D,cAAc,gDAAgD,CAAC;AAC/D,cAAc,iDAAiD,CAAC;AAChE,cAAc,4CAA4C,CAAC;AAC3D,cAAc,wCAAwC,CAAC;AACvD,cAAc,oDAAoD,CAAC;AACnE,cAAc,sBAAsB,CAAC;AACrC,cAAc,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/********************************************************************************
|
|
3
|
+
* Copyright (c) 2026 EclipseSource and others.
|
|
4
|
+
*
|
|
5
|
+
* This program and the accompanying materials are made available under the
|
|
6
|
+
* terms of the Eclipse Public License v. 2.0 which is available at
|
|
7
|
+
* http://www.eclipse.org/legal/epl-2.0.
|
|
8
|
+
*
|
|
9
|
+
* This Source Code may also be made available under the following Secondary
|
|
10
|
+
* Licenses when the conditions for such availability set forth in the Eclipse
|
|
11
|
+
* Public License v. 2.0 are satisfied: GNU General Public License, version 2
|
|
12
|
+
* with the GNU Classpath Exception which is available at
|
|
13
|
+
* https://www.gnu.org/software/classpath/license.html.
|
|
14
|
+
*
|
|
15
|
+
* SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
|
|
16
|
+
********************************************************************************/
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
20
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
21
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
22
|
+
}
|
|
23
|
+
Object.defineProperty(o, k2, desc);
|
|
24
|
+
}) : (function(o, m, k, k2) {
|
|
25
|
+
if (k2 === undefined) k2 = k;
|
|
26
|
+
o[k2] = m[k];
|
|
27
|
+
}));
|
|
28
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
29
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
30
|
+
};
|
|
31
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
32
|
+
__exportStar(require("./modules/abstract-mcp-server-module"), exports);
|
|
33
|
+
__exportStar(require("./modules/mcp-diagram-module"), exports);
|
|
34
|
+
__exportStar(require("./prompts/handlers/describe-diagram-mcp-prompt-handler"), exports);
|
|
35
|
+
__exportStar(require("./prompts/handlers/suggest-improvements-mcp-prompt-handler"), exports);
|
|
36
|
+
__exportStar(require("./resources/handlers/diagram-png-mcp-resource-handler"), exports);
|
|
37
|
+
__exportStar(require("./resources/handlers/diagram-svg-mcp-resource-handler"), exports);
|
|
38
|
+
__exportStar(require("./resources/services/element-types-provider"), exports);
|
|
39
|
+
__exportStar(require("./resources/services/mcp-model-serializer"), exports);
|
|
40
|
+
__exportStar(require("./server/abstract-mcp-server-launcher"), exports);
|
|
41
|
+
__exportStar(require("./server/glsp-mcp-server"), exports);
|
|
42
|
+
__exportStar(require("./server/lru-event-store"), exports);
|
|
43
|
+
__exportStar(require("./server/mcp-diagram-handler-dispatcher"), exports);
|
|
44
|
+
__exportStar(require("./server/mcp-diagram-prompt-handler-registry"), exports);
|
|
45
|
+
__exportStar(require("./server/mcp-diagram-resource-handler-registry"), exports);
|
|
46
|
+
__exportStar(require("./server/mcp-diagram-tool-handler-registry"), exports);
|
|
47
|
+
__exportStar(require("./server/mcp-handler-shared"), exports);
|
|
48
|
+
__exportStar(require("./server/mcp-id-alias-service"), exports);
|
|
49
|
+
__exportStar(require("./server/mcp-input-schemas"), exports);
|
|
50
|
+
__exportStar(require("./server/mcp-label-provider"), exports);
|
|
51
|
+
__exportStar(require("./server/mcp-log-level-registry"), exports);
|
|
52
|
+
__exportStar(require("./server/mcp-logger"), exports);
|
|
53
|
+
__exportStar(require("./server/mcp-mime-types"), exports);
|
|
54
|
+
__exportStar(require("./server/mcp-options"), exports);
|
|
55
|
+
__exportStar(require("./server/mcp-progress-reporter"), exports);
|
|
56
|
+
__exportStar(require("./server/mcp-prompt-handler"), exports);
|
|
57
|
+
__exportStar(require("./server/mcp-request-context"), exports);
|
|
58
|
+
__exportStar(require("./server/mcp-resource-handler"), exports);
|
|
59
|
+
__exportStar(require("./server/mcp-session"), exports);
|
|
60
|
+
__exportStar(require("./server/mcp-tool-handler"), exports);
|
|
61
|
+
__exportStar(require("./tools/handlers/count-elements-mcp-tool-handler"), exports);
|
|
62
|
+
__exportStar(require("./tools/handlers/create-edges-mcp-tool-handler"), exports);
|
|
63
|
+
__exportStar(require("./tools/handlers/create-nodes-mcp-tool-handler"), exports);
|
|
64
|
+
__exportStar(require("./tools/handlers/delete-elements-mcp-tool-handler"), exports);
|
|
65
|
+
__exportStar(require("./tools/handlers/diagram-model-mcp-tool-handler"), exports);
|
|
66
|
+
__exportStar(require("./tools/handlers/element-types-mcp-tool-handler"), exports);
|
|
67
|
+
__exportStar(require("./tools/handlers/get-selection-mcp-tool-handler"), exports);
|
|
68
|
+
__exportStar(require("./tools/handlers/layout-mcp-tool-handler"), exports);
|
|
69
|
+
__exportStar(require("./tools/handlers/modify-edges-mcp-tool-handler"), exports);
|
|
70
|
+
__exportStar(require("./tools/handlers/modify-nodes-mcp-tool-handler"), exports);
|
|
71
|
+
__exportStar(require("./tools/handlers/query-elements-mcp-tool-handler"), exports);
|
|
72
|
+
__exportStar(require("./tools/handlers/redo-mcp-tool-handler"), exports);
|
|
73
|
+
__exportStar(require("./tools/handlers/save-model-mcp-tool-handler"), exports);
|
|
74
|
+
__exportStar(require("./tools/handlers/session-info-mcp-tool-handler"), exports);
|
|
75
|
+
__exportStar(require("./tools/handlers/set-selection-mcp-tool-handler"), exports);
|
|
76
|
+
__exportStar(require("./tools/handlers/set-view-mcp-tool-handler"), exports);
|
|
77
|
+
__exportStar(require("./tools/handlers/undo-mcp-tool-handler"), exports);
|
|
78
|
+
__exportStar(require("./tools/handlers/validate-diagram-mcp-tool-handler"), exports);
|
|
79
|
+
__exportStar(require("./util/markdown-util"), exports);
|
|
80
|
+
__exportStar(require("./util/mcp-util"), exports);
|
|
81
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/common/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;;;;AAElF,uEAAqD;AACrD,+DAA6C;AAC7C,yFAAuE;AACvE,6FAA2E;AAC3E,wFAAsE;AACtE,wFAAsE;AACtE,8EAA4D;AAC5D,4EAA0D;AAC1D,wEAAsD;AACtD,2DAAyC;AACzC,2DAAyC;AACzC,0EAAwD;AACxD,+EAA6D;AAC7D,iFAA+D;AAC/D,6EAA2D;AAC3D,8DAA4C;AAC5C,gEAA8C;AAC9C,6DAA2C;AAC3C,8DAA4C;AAC5C,kEAAgD;AAChD,sDAAoC;AACpC,0DAAwC;AACxC,uDAAqC;AACrC,iEAA+C;AAC/C,8DAA4C;AAC5C,+DAA6C;AAC7C,gEAA8C;AAC9C,uDAAqC;AACrC,4DAA0C;AAC1C,mFAAiE;AACjE,iFAA+D;AAC/D,iFAA+D;AAC/D,oFAAkE;AAClE,kFAAgE;AAChE,kFAAgE;AAChE,kFAAgE;AAChE,2EAAyD;AACzD,iFAA+D;AAC/D,iFAA+D;AAC/D,mFAAiE;AACjE,yEAAuD;AACvD,+EAA6D;AAC7D,iFAA+D;AAC/D,kFAAgE;AAChE,6EAA2D;AAC3D,yEAAuD;AACvD,qFAAmE;AACnE,uDAAqC;AACrC,kDAAgC"}
|
package/lib/{server/mcp-server-module.d.ts → common/modules/abstract-mcp-server-module.d.ts}
RENAMED
|
@@ -16,17 +16,35 @@
|
|
|
16
16
|
import { BindingContext } from '@eclipse-glsp/protocol/lib/di';
|
|
17
17
|
import { AbstractMultiBinding, BindingTarget, GLSPModule } from '@eclipse-glsp/server';
|
|
18
18
|
import { interfaces } from 'inversify';
|
|
19
|
-
import {
|
|
20
|
-
import {
|
|
21
|
-
import {
|
|
22
|
-
import {
|
|
23
|
-
import { McpLogger } from '
|
|
24
|
-
import { McpServerDefaults, McpServerOptions } from '
|
|
25
|
-
import { McpProgressReporter } from '
|
|
26
|
-
import { McpPromptHandler } from '
|
|
27
|
-
import {
|
|
28
|
-
import {
|
|
29
|
-
import { McpToolHandler } from '
|
|
19
|
+
import { AbstractMcpServerLauncher } from '../server/abstract-mcp-server-launcher';
|
|
20
|
+
import { GLSPMcpServerFactory } from '../server/glsp-mcp-server';
|
|
21
|
+
import { McpDiagramHandlerDispatcher } from '../server/mcp-diagram-handler-dispatcher';
|
|
22
|
+
import { McpLogLevelRegistry } from '../server/mcp-log-level-registry';
|
|
23
|
+
import { McpLogger } from '../server/mcp-logger';
|
|
24
|
+
import { McpServerDefaults, McpServerOptions } from '../server/mcp-options';
|
|
25
|
+
import { McpProgressReporter } from '../server/mcp-progress-reporter';
|
|
26
|
+
import { McpPromptHandler } from '../server/mcp-prompt-handler';
|
|
27
|
+
import { McpRequestContext } from '../server/mcp-request-context';
|
|
28
|
+
import { McpResourceHandler } from '../server/mcp-resource-handler';
|
|
29
|
+
import { McpToolHandler } from '../server/mcp-tool-handler';
|
|
30
|
+
/**
|
|
31
|
+
* GLSP-generic default agent persona — adopters typically pass a product-specific persona to
|
|
32
|
+
* the concrete server module's constructor (e.g. workflow-server might say "You are the
|
|
33
|
+
* Workflow Modeling Agent...").
|
|
34
|
+
*
|
|
35
|
+
* **Spec note.** This is wired to the MCP `instructions` field, which the spec describes as
|
|
36
|
+
* "concise instructions". This persona is intentionally verbose (~700 chars of behavior rules)
|
|
37
|
+
* — within the spec's "free-form server-supplied instructions" allowance and adopter-overridable
|
|
38
|
+
* via `mcpDefaults.agentPersona`. Don't trim on autopilot if a "concise" interpretation drifts
|
|
39
|
+
* back: the verbose form materially improves LLM tool-use compliance for graphical modelling.
|
|
40
|
+
*/
|
|
41
|
+
export declare const DEFAULT_AGENT_PERSONA = "\nYou are the GLSP Modeling Agent. Your primary goal is to assist in the creation and modification of graphical models using the\nGLSP MCP server. You have to adhere to the following principles:\n- MCP-Interaction: Any modeling related activity has to occur using the MCP server.\n- Real Data: The diagram model is the ground truth regarding the existing graphical model. Always query it before modifying the diagram.\n- Real Creation: Consult the available element types before creating elements.\n- Visual Proof: An image of the graphical model can be created, if you deem it useful for calculating or verifying layout decisions.\n- Precision: All IDs and types must be exact.\n- Visualization: When creating nodes, suggest sensible default positions and avoid visual overlapping.\n- Careful: Under no circumstances save the model without explicit instruction. If you deem it sensible, you may ask the user for permission.\n The same goes for Undo/Redo operations.\n- Layouting: If available, make use of automatic layouting when not given explicit custom layouting requirements.\n- Human-friendly references: When mentioning an element in user-visible prose, prefer its label, then its element type\n (the bare ids returned by the tools are internal aliases that mean nothing to the user). Append the alias in parentheses\n so the user can correlate it with follow-up tools. Use the `set-selection` tool \u2014 or the `set-view` tool with\n `action: \"center-on-elements\"` \u2014 to point the user at the elements you reference.\n";
|
|
42
|
+
/**
|
|
43
|
+
* Target-neutral default option values shared by every {@link AbstractMcpServerModule} subclass.
|
|
44
|
+
* Node and Browser concrete modules spread this and add their own target-specific fields
|
|
45
|
+
* (e.g. `host`/`allowedHosts` on Node).
|
|
46
|
+
*/
|
|
47
|
+
export declare const DEFAULT_MCP_OPTIONS: McpServerDefaults;
|
|
30
48
|
/**
|
|
31
49
|
* Multi-binding helper for MCP handler classes. Singleton-scoped sibling of core's
|
|
32
50
|
* `MultiBinding<T>` — same `binding.add(...)` / `binding.rebind(old, new)` adopter shape, but
|
|
@@ -37,9 +55,11 @@ export declare class McpHandlerMultiBinding<T> extends AbstractMultiBinding<inte
|
|
|
37
55
|
applyBindings(context: BindingContext): void;
|
|
38
56
|
}
|
|
39
57
|
/**
|
|
40
|
-
* Server-scope DI module for the MCP server.
|
|
41
|
-
*
|
|
42
|
-
*
|
|
58
|
+
* Server-scope DI module for the MCP server. Target-neutral: concrete subclasses (Node, Browser)
|
|
59
|
+
* supply the launcher + request-context bindings via {@link bindMcpServerLauncher} and
|
|
60
|
+
* {@link bindMcpRequestContext}. Adopters subclass the concrete module and override the `bind*`
|
|
61
|
+
* hooks to swap single-instance services or the `configure*` hooks to add/replace handlers in
|
|
62
|
+
* the multi-bindings. Mirrors the `DiagramModule` pattern from core
|
|
43
63
|
* (`bindGModelSerializer()`, `configureActionHandlers(binding)`, etc.).
|
|
44
64
|
*
|
|
45
65
|
* Adopter-provided default option values flow through the constructor — pass a
|
|
@@ -49,13 +69,13 @@ export declare class McpHandlerMultiBinding<T> extends AbstractMultiBinding<inte
|
|
|
49
69
|
* @example
|
|
50
70
|
* ```ts
|
|
51
71
|
* // Drop-in: GLSP defaults.
|
|
52
|
-
* launcher.configure(serverModule, new
|
|
72
|
+
* launcher.configure(serverModule, new NodeMcpServerModule());
|
|
53
73
|
*
|
|
54
74
|
* // Drop-in with a product-specific override.
|
|
55
|
-
* launcher.configure(serverModule, new
|
|
75
|
+
* launcher.configure(serverModule, new NodeMcpServerModule({ dataMode: 'resources' }));
|
|
56
76
|
*
|
|
57
77
|
* // Subclass when handler customization is needed.
|
|
58
|
-
* class WorkflowMcpServerModule extends
|
|
78
|
+
* class WorkflowMcpServerModule extends NodeMcpServerModule {
|
|
59
79
|
* constructor() { super({ agentPersona: WORKFLOW_PERSONA }); }
|
|
60
80
|
* protected override configureToolHandlers(binding) {
|
|
61
81
|
* super.configureToolHandlers(binding);
|
|
@@ -66,18 +86,24 @@ export declare class McpHandlerMultiBinding<T> extends AbstractMultiBinding<inte
|
|
|
66
86
|
*/
|
|
67
87
|
export declare abstract class AbstractMcpServerModule extends GLSPModule {
|
|
68
88
|
protected readonly defaultOptions: McpServerDefaults;
|
|
69
|
-
protected bind: interfaces.Bind;
|
|
70
|
-
protected rebind: interfaces.Rebind;
|
|
71
89
|
constructor(defaultOptions?: McpServerDefaults);
|
|
72
|
-
protected configure(bind: interfaces.Bind, _unbind: interfaces.Unbind, isBound: interfaces.IsBound,
|
|
90
|
+
protected configure(bind: interfaces.Bind, _unbind: interfaces.Unbind, isBound: interfaces.IsBound, _rebind: interfaces.Rebind): void;
|
|
91
|
+
/**
|
|
92
|
+
* {@link AbstractMcpServerLauncher} binding. Bound as a singleton AND aliased to
|
|
93
|
+
* `GLSPServerInitializer` + `GLSPServerListener` (the launcher implements both). Concrete
|
|
94
|
+
* modules return the target-specific launcher class (Node, Web, ...).
|
|
95
|
+
*/
|
|
96
|
+
protected abstract bindMcpServerLauncher(): BindingTarget<AbstractMcpServerLauncher>;
|
|
73
97
|
/**
|
|
74
|
-
* {@link
|
|
75
|
-
*
|
|
76
|
-
* Override to swap in a custom launcher impl.
|
|
98
|
+
* Hook fired once when the {@link AbstractMcpServerLauncher} singleton is first resolved by
|
|
99
|
+
* the DI container — lets adopters obtain the instance without subclassing it. No-op by default.
|
|
77
100
|
*/
|
|
78
|
-
protected
|
|
79
|
-
/**
|
|
80
|
-
|
|
101
|
+
protected onMcpServerLauncherActivated(_launcher: AbstractMcpServerLauncher): void;
|
|
102
|
+
/**
|
|
103
|
+
* {@link McpRequestContext} binding. Concrete modules return the target-specific async-context
|
|
104
|
+
* implementation (e.g. Node's `AsyncLocalStorage`-backed variant or a browser-friendly one).
|
|
105
|
+
*/
|
|
106
|
+
protected abstract bindMcpRequestContext(): BindingTarget<McpRequestContext>;
|
|
81
107
|
/**
|
|
82
108
|
* {@link McpDiagramHandlerDispatcher} binding. Owns diagram-scope handler discovery,
|
|
83
109
|
* SDK registration, and per-call dispatch routing. Override (or `rebind` to a subclass)
|
|
@@ -92,13 +118,9 @@ export declare abstract class AbstractMcpServerModule extends GLSPModule {
|
|
|
92
118
|
* init-time options at server init (init-time wins per field).
|
|
93
119
|
*/
|
|
94
120
|
protected bindMcpServerDefaults(): BindingTarget<McpServerDefaults>;
|
|
95
|
-
/**
|
|
96
|
-
* {@link McpLogger} binding. Bound on the server container; per-session containers inherit
|
|
97
|
-
* it, so handlers at any scope can inject it; routes through the active MCP request via
|
|
98
|
-
* {@link mcpRequestContext}.
|
|
99
|
-
*/
|
|
121
|
+
/** {@link McpLogger} binding — routes through the active MCP request via {@link McpRequestContext}. */
|
|
100
122
|
protected bindMcpLogger(): BindingTarget<McpLogger>;
|
|
101
|
-
/** {@link McpProgressReporter} binding.
|
|
123
|
+
/** {@link McpProgressReporter} binding. */
|
|
102
124
|
protected bindMcpProgressReporter(): BindingTarget<McpProgressReporter>;
|
|
103
125
|
/**
|
|
104
126
|
* {@link McpLogLevelRegistry} binding — holds per-MCP-session `logging/setLevel` thresholds
|
|
@@ -127,17 +149,4 @@ export declare abstract class AbstractMcpServerModule extends GLSPModule {
|
|
|
127
149
|
*/
|
|
128
150
|
protected configurePromptHandlers(binding: McpHandlerMultiBinding<McpPromptHandler>): void;
|
|
129
151
|
}
|
|
130
|
-
|
|
131
|
-
* Default {@link AbstractMcpServerModule} entry point. Ships GLSP-default option values (see
|
|
132
|
-
* {@link DEFAULT_OPTIONS}) on top of the abstract module's hook defaults. Adopter-provided
|
|
133
|
-
* overrides via the constructor merge on top.
|
|
134
|
-
*
|
|
135
|
-
* @experimental The MCP integration is under active development. Option names, schema shapes,
|
|
136
|
-
* and handler contracts MAY change in minor releases until the feature graduates from
|
|
137
|
-
* experimental status.
|
|
138
|
-
*/
|
|
139
|
-
export declare class DefaultMcpServerModule extends AbstractMcpServerModule {
|
|
140
|
-
static readonly DEFAULT_OPTIONS: McpServerDefaults;
|
|
141
|
-
constructor(overrides?: McpServerDefaults);
|
|
142
|
-
}
|
|
143
|
-
//# sourceMappingURL=mcp-server-module.d.ts.map
|
|
152
|
+
//# sourceMappingURL=abstract-mcp-server-module.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
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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"}
|