@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
|
@@ -29,8 +29,11 @@ exports.DiagramPngMcpResourceHandler = exports.DiagramPngInputSchema = void 0;
|
|
|
29
29
|
const server_1 = require("@eclipse-glsp/server");
|
|
30
30
|
const inversify_1 = require("inversify");
|
|
31
31
|
const z = require("zod/v4");
|
|
32
|
-
const
|
|
33
|
-
|
|
32
|
+
const mcp_handler_shared_1 = require("../../server/mcp-handler-shared");
|
|
33
|
+
const mcp_input_schemas_1 = require("../../server/mcp-input-schemas");
|
|
34
|
+
const mcp_progress_reporter_1 = require("../../server/mcp-progress-reporter");
|
|
35
|
+
const mcp_resource_handler_1 = require("../../server/mcp-resource-handler");
|
|
36
|
+
exports.DiagramPngInputSchema = mcp_input_schemas_1.McpDiagramScopedInputSchema.extend({
|
|
34
37
|
scale: z
|
|
35
38
|
.number()
|
|
36
39
|
.min(0.1)
|
|
@@ -61,7 +64,7 @@ exports.DiagramPngInputSchema = server_2.McpDiagramScopedInputSchema.extend({
|
|
|
61
64
|
.describe('Override the default render timeout in milliseconds (100–60000). Useful for very large diagrams.')
|
|
62
65
|
});
|
|
63
66
|
/** Rendering lives on the client — `RequestExportAction('png')` routes to the registered PNG exporter, which returns base64 via `ExportResultAction`. */
|
|
64
|
-
let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class DiagramPngMcpResourceHandler extends
|
|
67
|
+
let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class DiagramPngMcpResourceHandler extends mcp_resource_handler_1.AbstractMcpDiagramResourceHandler {
|
|
65
68
|
constructor() {
|
|
66
69
|
super(...arguments);
|
|
67
70
|
/** Default timeout (in ms) used when the call doesn't override `timeoutMs`. Override via subclass + rebind. */
|
|
@@ -104,7 +107,7 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
104
107
|
const response = await this.requestAction(server_1.RequestExportAction.create('png', { formatOptions: { width: resolved.width, height: resolved.height } }), timeoutMs !== null && timeoutMs !== void 0 ? timeoutMs : this.defaultTimeoutMs);
|
|
105
108
|
// A misbehaving exporter strategy returning text-encoded data here would silently corrupt the blob; fail loudly instead.
|
|
106
109
|
if (response.encoding !== 'base64') {
|
|
107
|
-
throw new
|
|
110
|
+
throw new mcp_handler_shared_1.McpToolError(`PNG export returned unexpected encoding '${response.encoding}'; expected 'base64'.`);
|
|
108
111
|
}
|
|
109
112
|
return { blob: response.data };
|
|
110
113
|
}
|
|
@@ -153,7 +156,7 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
153
156
|
}
|
|
154
157
|
}
|
|
155
158
|
if (maxX <= 0 || maxY <= 0) {
|
|
156
|
-
throw new
|
|
159
|
+
throw new mcp_handler_shared_1.McpToolError('Diagram has no positioned elements yet — render once after layout completes, or pass `width` / `height` explicitly.');
|
|
157
160
|
}
|
|
158
161
|
return { width: Math.ceil(maxX), height: Math.ceil(maxY) };
|
|
159
162
|
}
|
|
@@ -161,8 +164,8 @@ let DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler_1 = class Diagra
|
|
|
161
164
|
exports.DiagramPngMcpResourceHandler = DiagramPngMcpResourceHandler;
|
|
162
165
|
DiagramPngMcpResourceHandler.NAME = 'diagram-png';
|
|
163
166
|
__decorate([
|
|
164
|
-
(0, inversify_1.inject)(
|
|
165
|
-
__metadata("design:type",
|
|
167
|
+
(0, inversify_1.inject)(mcp_progress_reporter_1.McpProgressReporter),
|
|
168
|
+
__metadata("design:type", mcp_progress_reporter_1.McpProgressReporter)
|
|
166
169
|
], DiagramPngMcpResourceHandler.prototype, "progress", void 0);
|
|
167
170
|
__decorate([
|
|
168
171
|
(0, inversify_1.inject)(server_1.ClientActionKinds),
|
|
@@ -0,0 +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":"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"}
|
|
@@ -15,7 +15,10 @@
|
|
|
15
15
|
********************************************************************************/
|
|
16
16
|
import { Role } from '@modelcontextprotocol/sdk/types.js';
|
|
17
17
|
import * as z from 'zod/v4';
|
|
18
|
-
import {
|
|
18
|
+
import { McpResourceContent } from '../../server/mcp-handler-shared';
|
|
19
|
+
import { McpMimeType } from '../../server/mcp-mime-types';
|
|
20
|
+
import { McpProgressReporter } from '../../server/mcp-progress-reporter';
|
|
21
|
+
import { AbstractMcpDiagramResourceHandler, McpResourceUri } from '../../server/mcp-resource-handler';
|
|
19
22
|
export declare const DiagramSvgInputSchema: z.ZodObject<{
|
|
20
23
|
sessionId: z.ZodString;
|
|
21
24
|
timeoutMs: z.ZodOptional<z.ZodNumber>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diagram-svg-mcp-resource-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/resources/handlers/diagram-svg-mcp-resource-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAGlF,OAAO,EAAE,IAAI,EAAE,MAAM,oCAAoC,CAAC;AAE1D,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAgB,MAAM,iCAAiC,CAAC;AAEnF,OAAO,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,iCAAiC,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAEtG,eAAO,MAAM,qBAAqB;;;iBAQhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;GAIG;AACH,qBACa,4BAA6B,SAAQ,iCAAiC,CAAC,eAAe,CAAC;IAChG,+GAA+G;IAC/G,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAQ;IAEnD,MAAM,CAAC,QAAQ,CAAC,IAAI,iBAAiB;IACrC,QAAQ,CAAC,IAAI,iBAAqC;IAClD,SAAkB,KAAK,uBAAuB;IAC9C,QAAQ,CAAC,WAAW,SAMiE;IACrF,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAmB;IACjD,QAAQ,CAAC,GAAG,EAAE,cAAc,CAAmD;IAC/E,yGAAyG;IACzG,SAAkB,QAAQ,EAAE,IAAI,EAAE,CAAyB;IAC3D,0GAA0G;IAC1G,SAAkB,QAAQ,OAAO;IACjC,SAAkB,0BAA0B;;;sBAAyB;IAExC,SAAS,CAAC,QAAQ,EAAE,mBAAmB,CAAC;IAE1C,SAAS,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAEpE,0EAA0E;IACjE,WAAW,IAAI,OAAO;cAIf,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC;CAU5F"}
|
|
@@ -29,8 +29,11 @@ exports.DiagramSvgMcpResourceHandler = exports.DiagramSvgInputSchema = void 0;
|
|
|
29
29
|
const server_1 = require("@eclipse-glsp/server");
|
|
30
30
|
const inversify_1 = require("inversify");
|
|
31
31
|
const z = require("zod/v4");
|
|
32
|
-
const
|
|
33
|
-
|
|
32
|
+
const mcp_handler_shared_1 = require("../../server/mcp-handler-shared");
|
|
33
|
+
const mcp_input_schemas_1 = require("../../server/mcp-input-schemas");
|
|
34
|
+
const mcp_progress_reporter_1 = require("../../server/mcp-progress-reporter");
|
|
35
|
+
const mcp_resource_handler_1 = require("../../server/mcp-resource-handler");
|
|
36
|
+
exports.DiagramSvgInputSchema = mcp_input_schemas_1.McpDiagramScopedInputSchema.extend({
|
|
34
37
|
timeoutMs: z
|
|
35
38
|
.number()
|
|
36
39
|
.int()
|
|
@@ -44,7 +47,7 @@ exports.DiagramSvgInputSchema = server_2.McpDiagramScopedInputSchema.extend({
|
|
|
44
47
|
* markup (text-encoded). No `width`/`height` knobs because SVG is vector — clients (and
|
|
45
48
|
* downstream rasterisers) scale it freely.
|
|
46
49
|
*/
|
|
47
|
-
let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class DiagramSvgMcpResourceHandler extends
|
|
50
|
+
let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class DiagramSvgMcpResourceHandler extends mcp_resource_handler_1.AbstractMcpDiagramResourceHandler {
|
|
48
51
|
constructor() {
|
|
49
52
|
super(...arguments);
|
|
50
53
|
/** Default timeout (in ms) used when the call doesn't override `timeoutMs`. Override via subclass + rebind. */
|
|
@@ -75,7 +78,7 @@ let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class Diagra
|
|
|
75
78
|
const response = await this.requestAction(server_1.RequestExportAction.create('svg'), timeoutMs !== null && timeoutMs !== void 0 ? timeoutMs : this.defaultTimeoutMs);
|
|
76
79
|
// SVG is text-encoded — base64 encoding here would mean an exporter mis-classified its payload.
|
|
77
80
|
if (response.encoding !== 'text') {
|
|
78
|
-
throw new
|
|
81
|
+
throw new mcp_handler_shared_1.McpToolError(`SVG export returned unexpected encoding '${response.encoding}'; expected 'text'.`);
|
|
79
82
|
}
|
|
80
83
|
return { text: response.data };
|
|
81
84
|
}
|
|
@@ -83,8 +86,8 @@ let DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler_1 = class Diagra
|
|
|
83
86
|
exports.DiagramSvgMcpResourceHandler = DiagramSvgMcpResourceHandler;
|
|
84
87
|
DiagramSvgMcpResourceHandler.NAME = 'diagram-svg';
|
|
85
88
|
__decorate([
|
|
86
|
-
(0, inversify_1.inject)(
|
|
87
|
-
__metadata("design:type",
|
|
89
|
+
(0, inversify_1.inject)(mcp_progress_reporter_1.McpProgressReporter),
|
|
90
|
+
__metadata("design:type", mcp_progress_reporter_1.McpProgressReporter)
|
|
88
91
|
], DiagramSvgMcpResourceHandler.prototype, "progress", void 0);
|
|
89
92
|
__decorate([
|
|
90
93
|
(0, inversify_1.inject)(server_1.ClientActionKinds),
|
|
@@ -0,0 +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,oCAAlC,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;IAfG,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,aAAT,SAAS,cAAT,SAAS,GAAI,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;AAIrB,iCAAI,GAAG,aAAa,AAAhB,CAAiB;AAkBE;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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element-types-provider.d.ts","sourceRoot":"","sources":["../../../../src/common/resources/services/element-types-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAGlF,OAAO,EAGH,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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"element-types-provider.js","sourceRoot":"","sources":["../../../../src/common/resources/services/element-types-provider.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;AAElF,qDAAkF;AAClF,iDAM8B;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,8BAAmB,CAAC,IAAI,SAAS,8BAAmB,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"}
|
|
@@ -0,0 +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,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAa,gBAAgB,EAAE,MAAM,EAAS,MAAM,sBAAsB,CAAC;AAElF,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"}
|
|
@@ -29,7 +29,7 @@ exports.MarkdownMcpModelSerializer = exports.McpModelSerializer = void 0;
|
|
|
29
29
|
const server_1 = require("@eclipse-glsp/server");
|
|
30
30
|
const inversify_1 = require("inversify");
|
|
31
31
|
const mcp_id_alias_service_1 = require("../../server/mcp-id-alias-service");
|
|
32
|
-
const
|
|
32
|
+
const markdown_util_1 = require("../../util/markdown-util");
|
|
33
33
|
exports.McpModelSerializer = Symbol('McpModelSerializer');
|
|
34
34
|
/**
|
|
35
35
|
* Default {@link McpModelSerializer} — emits Markdown with one H1 section per element type
|
|
@@ -69,7 +69,7 @@ let MarkdownMcpModelSerializer = MarkdownMcpModelSerializer_1 = class MarkdownMc
|
|
|
69
69
|
serializeArray(elements) {
|
|
70
70
|
return Object.entries(this.buildAliasedTypeBuckets(elements))
|
|
71
71
|
.filter(([, bucket]) => bucket.length > 0)
|
|
72
|
-
.flatMap(([type, bucket]) => [`# ${type}`, (0,
|
|
72
|
+
.flatMap(([type, bucket]) => [`# ${type}`, (0, markdown_util_1.objectArrayToMarkdownTable)(bucket)])
|
|
73
73
|
.join('\n');
|
|
74
74
|
}
|
|
75
75
|
serializeStructured(element) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-model-serializer.js","sourceRoot":"","sources":["../../../../src/common/resources/services/mcp-model-serializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,168 @@
|
|
|
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 { McpServerOptions as McpServerOptionsType } from '@eclipse-glsp/protocol';
|
|
17
|
+
import { ClientSessionManager, Disposable, DisposableCollection, Emitter, GLSPServer, GLSPServerInitializer, GLSPServerListener, InitializeParameters, InitializeResult, Logger, McpServerConfiguration, McpServerInitOptions } from '@eclipse-glsp/server';
|
|
18
|
+
import { AuthInfo } from '@modelcontextprotocol/sdk/server/auth/types.js';
|
|
19
|
+
import { WebStandardStreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/webStandardStreamableHttp.js';
|
|
20
|
+
import { ServerCapabilities } from '@modelcontextprotocol/sdk/types.js';
|
|
21
|
+
import { GLSPMcpServer, GLSPMcpServerFactory } from './glsp-mcp-server';
|
|
22
|
+
import { McpDiagramHandlerDispatcher } from './mcp-diagram-handler-dispatcher';
|
|
23
|
+
import { McpLogLevelRegistry } from './mcp-log-level-registry';
|
|
24
|
+
import { McpServerDefaults, McpServerOptions } from './mcp-options';
|
|
25
|
+
import { McpPromptHandler } from './mcp-prompt-handler';
|
|
26
|
+
import { McpResourceHandler } from './mcp-resource-handler';
|
|
27
|
+
import { McpSession } from './mcp-session';
|
|
28
|
+
import { McpToolHandler } from './mcp-tool-handler';
|
|
29
|
+
/**
|
|
30
|
+
* Server version reported in MCP `initialize` handshake responses (the SDK's `serverInfo.version`
|
|
31
|
+
* field). Sourced from the package's own `package.json` so adopters and clients can tell builds
|
|
32
|
+
* apart without the server author having to remember to bump a literal.
|
|
33
|
+
*/
|
|
34
|
+
export declare const SERVER_VERSION: string;
|
|
35
|
+
/**
|
|
36
|
+
* Launcher's internal handoff shape: everything from the public {@link McpServerConfiguration}
|
|
37
|
+
* with all fields resolved, plus `host`. `host` is deliberately *not* in the public protocol's
|
|
38
|
+
* init schema — it lives on `McpServerDeployOptions` (deploy-only) rather than
|
|
39
|
+
* `McpServerInitOptions` (init-controllable). The launcher reads it from the adopter-supplied
|
|
40
|
+
* defaults via `McpServerOptions.values.host`.
|
|
41
|
+
*/
|
|
42
|
+
export type FullMcpServerConfiguration = Omit<Required<McpServerConfiguration>, 'options'> & {
|
|
43
|
+
host: string;
|
|
44
|
+
options: McpServerOptionsType;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Where this launcher's transport can be reached. Node binders populate `url` (loopback HTTP
|
|
48
|
+
* announcement). The web binder returns `{}` because the adopter wires the handler into its
|
|
49
|
+
* own listener and may not have a routable URL.
|
|
50
|
+
*/
|
|
51
|
+
export interface TransportEndpoint {
|
|
52
|
+
url?: string;
|
|
53
|
+
headers?: Record<string, string>;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Per-call options accepted by {@link AbstractMcpServerLauncher.handleRequest}. Adopters wrap
|
|
57
|
+
* their own auth middleware around the handler and forward parsed bearer/JWT/etc. info here.
|
|
58
|
+
*/
|
|
59
|
+
export interface McpRequestHandlerOptions {
|
|
60
|
+
/** Authenticated principal info — passed through to the SDK so tool handlers can read it via `extra.authInfo`. */
|
|
61
|
+
authInfo?: AuthInfo;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Defense-in-depth filter for the init-side options payload. The static type already rules out
|
|
65
|
+
* deploy-only fields (`host`, `allowedHosts`, `allowedOrigins`, `acknowledgedNoAuth`) on
|
|
66
|
+
* `McpServerConfiguration.options`, but the wire payload is JSON, so a malformed or malicious
|
|
67
|
+
* client could smuggle extra keys. Destructure-based pick drops anything outside the allowed set
|
|
68
|
+
* so deploy-only fields are sourced *only* from adopter defaults.
|
|
69
|
+
*
|
|
70
|
+
* **Update this allowlist when adding a field to `McpServerInitOptions`** — the destructure
|
|
71
|
+
* below is the single source of truth for which init-side fields cross the wire.
|
|
72
|
+
*
|
|
73
|
+
* Exported for regression-test access only; not part of the public package surface.
|
|
74
|
+
*/
|
|
75
|
+
export declare function pickInitOptions(options: McpServerInitOptions): McpServerInitOptions;
|
|
76
|
+
/**
|
|
77
|
+
* Portable, target-neutral MCP server launcher. Owns the per-MCP-session
|
|
78
|
+
* {@link WebStandardStreamableHTTPServerTransport} map, the per-session {@link GLSPMcpServer}
|
|
79
|
+
* registry, handler registration, and the Fetch-shaped `(Request) => Promise<Response>` entry
|
|
80
|
+
* point. Concrete subclasses bind a listener (or no listener) in {@link bindTransport}.
|
|
81
|
+
*
|
|
82
|
+
* **Session state is single-process and in-memory.** Multi-isolate/Durable-Objects adopters
|
|
83
|
+
* need to override the session storage hook in a follow-up.
|
|
84
|
+
*
|
|
85
|
+
* **Authentication** is the adopter's responsibility on non-Node targets — wrap the handler
|
|
86
|
+
* with whatever middleware the deployment requires (bearer, mTLS at proxy, Cloudflare Access,
|
|
87
|
+
* etc.). Node binders run the {@link assertLoopbackOrAcknowledged} guard since they bind the
|
|
88
|
+
* socket themselves.
|
|
89
|
+
*/
|
|
90
|
+
export declare abstract class AbstractMcpServerLauncher implements GLSPServerInitializer, GLSPServerListener, Disposable {
|
|
91
|
+
protected logger: Logger;
|
|
92
|
+
protected mcpOptions: McpServerOptions;
|
|
93
|
+
protected mcpDefaults: McpServerDefaults;
|
|
94
|
+
protected glspMcpServerFactory: GLSPMcpServerFactory;
|
|
95
|
+
protected dispatcher: McpDiagramHandlerDispatcher;
|
|
96
|
+
protected logLevelRegistry: McpLogLevelRegistry;
|
|
97
|
+
protected clientSessionManager: ClientSessionManager;
|
|
98
|
+
protected toolHandlers: McpToolHandler[];
|
|
99
|
+
protected resourceHandlers: McpResourceHandler[];
|
|
100
|
+
protected promptHandlers: McpPromptHandler[];
|
|
101
|
+
protected toDispose: DisposableCollection;
|
|
102
|
+
protected serverUrl: string | undefined;
|
|
103
|
+
protected serverConfig: FullMcpServerConfiguration | undefined;
|
|
104
|
+
/** Per-MCP-session transport — populated on session-init, cleared on session-close. */
|
|
105
|
+
protected readonly sessions: Map<string, WebStandardStreamableHTTPServerTransport>;
|
|
106
|
+
/** Per-MCP-session GLSPMcpServer registry — populated on session-init, cleared on session-close. */
|
|
107
|
+
protected readonly sessionServers: Map<string, GLSPMcpServer>;
|
|
108
|
+
protected onSessionInitializedEmitter: Emitter<McpSession>;
|
|
109
|
+
readonly onSessionInitialized: import("@eclipse-glsp/protocol").Event<McpSession>;
|
|
110
|
+
protected onSessionClosedEmitter: Emitter<string>;
|
|
111
|
+
readonly onSessionClosed: import("@eclipse-glsp/protocol").Event<string>;
|
|
112
|
+
initializeServer(server: GLSPServer, params: InitializeParameters, result: InitializeResult): Promise<InitializeResult>;
|
|
113
|
+
serverShutDown(_server: GLSPServer): void;
|
|
114
|
+
dispose(): void;
|
|
115
|
+
/**
|
|
116
|
+
* Fetch-shaped request entry point. Dispatches POST/GET/DELETE against `config.route`,
|
|
117
|
+
* routing to the right per-session SDK transport. Validates the `MCP-Protocol-Version`
|
|
118
|
+
* header and the spec-mandated session-id rules before handing off to the SDK.
|
|
119
|
+
*/
|
|
120
|
+
handleRequest(req: Request, options?: McpRequestHandlerOptions): Promise<Response>;
|
|
121
|
+
/** Bound `(req) => Promise<Response>` for adopters plugging the handler into any Fetch-shaped listener. */
|
|
122
|
+
getRequestHandler(): (req: Request, options?: McpRequestHandlerOptions) => Promise<Response>;
|
|
123
|
+
/** Concrete subclasses bind their transport (or no-op for runtimes where the adopter owns the listener). */
|
|
124
|
+
protected abstract bindTransport(config: FullMcpServerConfiguration): Promise<TransportEndpoint>;
|
|
125
|
+
/**
|
|
126
|
+
* Resolve the right transport for an incoming request. Returns a {@link Response} for the
|
|
127
|
+
* spec-mandated 400/404 rejections so the caller can early-return.
|
|
128
|
+
*/
|
|
129
|
+
protected resolveTransport(req: Request, isInit: boolean): WebStandardStreamableHTTPServerTransport | Response;
|
|
130
|
+
/**
|
|
131
|
+
* Validate the `MCP-Protocol-Version` header per the Streamable HTTP transport spec.
|
|
132
|
+
* Initialize POSTs negotiate the version in the body — the header isn't expected there.
|
|
133
|
+
* For every other request: absent → pass through (server defaults to `2025-03-26`);
|
|
134
|
+
* present-but-unsupported → respond `400` with a JSON-RPC error envelope.
|
|
135
|
+
*/
|
|
136
|
+
protected validateProtocolVersionHeader(req: Request, isInit: boolean): Response | undefined;
|
|
137
|
+
/** Port-agnostic Host validation — `WebStandardStreamableHTTPServerTransport` does exact-string match incl. port. */
|
|
138
|
+
protected validateHostHeader(req: Request): Response | undefined;
|
|
139
|
+
protected createTransport(): WebStandardStreamableHTTPServerTransport;
|
|
140
|
+
protected attachServerToSession(transport: WebStandardStreamableHTTPServerTransport, config: FullMcpServerConfiguration): void;
|
|
141
|
+
protected closeSession(sessionId: string | undefined): void;
|
|
142
|
+
/**
|
|
143
|
+
* Fire `notifications/resources/list_changed` to every connected MCP client when a GLSP
|
|
144
|
+
* session opens or closes — diagram-scope resources aggregate across GLSP sessions, so the
|
|
145
|
+
* visible list mutates with that lifecycle. No-op when no diagram-scope resources are bound.
|
|
146
|
+
*/
|
|
147
|
+
protected installResourceListChangedNotifier(): void;
|
|
148
|
+
/** Best-effort fan-out — failures on individual MCP sessions (e.g. transport mid-close) are swallowed. */
|
|
149
|
+
protected broadcastResourceListChanged(): void;
|
|
150
|
+
/** Register `logging/setLevel` so a connected MCP client can adjust its message severity threshold. */
|
|
151
|
+
protected registerLogLevelHandler(glspMcpServer: GLSPMcpServer, sessionId: string): void;
|
|
152
|
+
protected createGlspMcpServer({ name, options }: FullMcpServerConfiguration): GLSPMcpServer;
|
|
153
|
+
/**
|
|
154
|
+
* Build the MCP capabilities map from what is actually bound. Only declare a key when at
|
|
155
|
+
* least one handler contributes — declaring a capability the SDK never registers a handler
|
|
156
|
+
* for produces `-32601 Method not found` on `<cap>/list`. Resources surfaced as tools
|
|
157
|
+
* (`dataMode === 'tools'`) count toward `tools`, not `resources`.
|
|
158
|
+
*/
|
|
159
|
+
protected buildCapabilities(resourcesAsResources: boolean): ServerCapabilities;
|
|
160
|
+
protected registerHandlers(glspMcpServer: GLSPMcpServer, resourcesAsResources: boolean): void;
|
|
161
|
+
/**
|
|
162
|
+
* Warn when a server-scope prompt references a tool that isn't registered on this MCP session
|
|
163
|
+
* — catches adopters who unbind a tool a shipped prompt mentions via `${OtherHandler.NAME}`.
|
|
164
|
+
*/
|
|
165
|
+
protected validatePromptToolReferences(glspMcpServer: GLSPMcpServer): void;
|
|
166
|
+
protected jsonRpcErrorResponse(status: number, code: number, message: string): Response;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=abstract-mcp-server-launcher.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
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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"}
|