@eclipse-glsp/server-mcp 2.8.0-next.1 → 2.8.0-next.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/lib/browser/modules/browser-mcp-server-module.js +1 -1
- package/lib/browser/modules/browser-mcp-server-module.js.map +1 -1
- package/lib/common/modules/abstract-mcp-server-module.d.ts +1 -2
- package/lib/common/modules/abstract-mcp-server-module.d.ts.map +1 -1
- package/lib/common/modules/abstract-mcp-server-module.js.map +1 -1
- package/lib/common/modules/mcp-diagram-module.js +1 -1
- package/lib/common/modules/mcp-diagram-module.js.map +1 -1
- package/lib/common/prompts/handlers/describe-diagram-mcp-prompt-handler.js +3 -2
- package/lib/common/prompts/handlers/describe-diagram-mcp-prompt-handler.js.map +1 -1
- package/lib/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.js +3 -2
- package/lib/common/prompts/handlers/suggest-improvements-mcp-prompt-handler.js.map +1 -1
- package/lib/common/resources/handlers/diagram-png-mcp-resource-handler.js +5 -4
- package/lib/common/resources/handlers/diagram-png-mcp-resource-handler.js.map +1 -1
- package/lib/common/resources/handlers/diagram-svg-mcp-resource-handler.js +4 -3
- package/lib/common/resources/handlers/diagram-svg-mcp-resource-handler.js.map +1 -1
- package/lib/common/resources/services/element-types-provider.d.ts.map +1 -1
- package/lib/common/resources/services/element-types-provider.js +1 -2
- package/lib/common/resources/services/element-types-provider.js.map +1 -1
- package/lib/common/resources/services/mcp-model-serializer.d.ts +1 -2
- package/lib/common/resources/services/mcp-model-serializer.d.ts.map +1 -1
- package/lib/common/resources/services/mcp-model-serializer.js +3 -5
- package/lib/common/resources/services/mcp-model-serializer.js.map +1 -1
- package/lib/common/server/abstract-mcp-server-launcher.d.ts +3 -4
- package/lib/common/server/abstract-mcp-server-launcher.d.ts.map +1 -1
- package/lib/common/server/abstract-mcp-server-launcher.js +9 -14
- package/lib/common/server/abstract-mcp-server-launcher.js.map +1 -1
- package/lib/common/server/glsp-mcp-server.d.ts.map +1 -1
- package/lib/common/server/glsp-mcp-server.js +2 -2
- package/lib/common/server/glsp-mcp-server.js.map +1 -1
- package/lib/common/server/lru-event-store.js +2 -3
- package/lib/common/server/lru-event-store.js.map +1 -1
- package/lib/common/server/mcp-diagram-handler-dispatcher.d.ts +20 -4
- package/lib/common/server/mcp-diagram-handler-dispatcher.d.ts.map +1 -1
- package/lib/common/server/mcp-diagram-handler-dispatcher.js +40 -13
- package/lib/common/server/mcp-diagram-handler-dispatcher.js.map +1 -1
- package/lib/common/server/mcp-handler-shared.d.ts +1 -2
- package/lib/common/server/mcp-handler-shared.d.ts.map +1 -1
- package/lib/common/server/mcp-handler-shared.js +1 -1
- package/lib/common/server/mcp-handler-shared.js.map +1 -1
- package/lib/common/server/mcp-id-alias-service.js +1 -2
- package/lib/common/server/mcp-id-alias-service.js.map +1 -1
- package/lib/common/server/mcp-input-schemas.d.ts +2 -0
- package/lib/common/server/mcp-input-schemas.d.ts.map +1 -1
- package/lib/common/server/mcp-input-schemas.js +3 -1
- package/lib/common/server/mcp-input-schemas.js.map +1 -1
- package/lib/common/server/mcp-log-level-registry.js +10 -10
- package/lib/common/server/mcp-log-level-registry.js.map +1 -1
- package/lib/common/server/mcp-mime-types.d.ts +1 -1
- package/lib/common/server/mcp-mime-types.d.ts.map +1 -1
- package/lib/common/server/mcp-options.d.ts +1 -1
- package/lib/common/server/mcp-options.d.ts.map +1 -1
- package/lib/common/server/mcp-progress-reporter.js +1 -2
- package/lib/common/server/mcp-progress-reporter.js.map +1 -1
- package/lib/common/server/mcp-resource-handler.d.ts +10 -1
- package/lib/common/server/mcp-resource-handler.d.ts.map +1 -1
- package/lib/common/server/mcp-resource-handler.js +17 -10
- package/lib/common/server/mcp-resource-handler.js.map +1 -1
- package/lib/common/server/mcp-tool-handler.d.ts +33 -16
- package/lib/common/server/mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/server/mcp-tool-handler.js +19 -3
- package/lib/common/server/mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/count-elements-mcp-tool-handler.js +4 -4
- package/lib/common/tools/handlers/count-elements-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.js +14 -8
- package/lib/common/tools/handlers/create-edges-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.js +18 -10
- package/lib/common/tools/handlers/create-nodes-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/delete-elements-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.js +7 -4
- package/lib/common/tools/handlers/diagram-model-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/element-types-mcp-tool-handler.js +8 -5
- package/lib/common/tools/handlers/element-types-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/get-selection-mcp-tool-handler.js +3 -2
- package/lib/common/tools/handlers/get-selection-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/layout-mcp-tool-handler.d.ts +5 -2
- package/lib/common/tools/handlers/layout-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/layout-mcp-tool-handler.js +8 -3
- package/lib/common/tools/handlers/layout-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/modify-edges-mcp-tool-handler.js +13 -9
- package/lib/common/tools/handlers/modify-edges-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.d.ts +4 -1
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.js +57 -25
- package/lib/common/tools/handlers/modify-nodes-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/query-elements-mcp-tool-handler.js +7 -7
- package/lib/common/tools/handlers/query-elements-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/redo-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/redo-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/redo-mcp-tool-handler.js +10 -5
- package/lib/common/tools/handlers/redo-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.js +6 -3
- package/lib/common/tools/handlers/save-model-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/session-info-mcp-tool-handler.js +4 -4
- package/lib/common/tools/handlers/session-info-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.js +10 -7
- package/lib/common/tools/handlers/set-selection-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/set-view-mcp-tool-handler.js +6 -5
- package/lib/common/tools/handlers/set-view-mcp-tool-handler.js.map +1 -1
- package/lib/common/tools/handlers/undo-mcp-tool-handler.d.ts +2 -1
- package/lib/common/tools/handlers/undo-mcp-tool-handler.d.ts.map +1 -1
- package/lib/common/tools/handlers/undo-mcp-tool-handler.js +10 -5
- package/lib/common/tools/handlers/undo-mcp-tool-handler.js.map +1 -1
- package/lib/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 -1
- package/lib/common/tools/handlers/validate-diagram-mcp-tool-handler.js +0 -0
- package/lib/common/tools/handlers/validate-diagram-mcp-tool-handler.js.map +1 -1
- package/lib/common/util/markdown-util.js +1 -2
- package/lib/common/util/markdown-util.js.map +1 -1
- package/lib/node/modules/node-mcp-server-module.js +8 -8
- package/lib/node/modules/node-mcp-server-module.js.map +1 -1
- package/package.json +17 -17
- package/src/common/modules/abstract-mcp-server-module.ts +3 -3
- package/src/common/modules/mcp-diagram-module.ts +1 -1
- package/src/common/resources/services/element-types-provider.ts +2 -1
- package/src/common/resources/services/mcp-model-serializer.ts +1 -2
- package/src/common/server/abstract-mcp-server-launcher.ts +3 -3
- package/src/common/server/glsp-mcp-server.ts +2 -1
- package/src/common/server/mcp-diagram-handler-dispatcher.ts +56 -5
- package/src/common/server/mcp-handler-shared.ts +2 -4
- package/src/common/server/mcp-input-schemas.ts +3 -0
- package/src/common/server/mcp-mime-types.ts +1 -1
- package/src/common/server/mcp-options.ts +1 -1
- package/src/common/server/mcp-resource-handler.ts +14 -2
- package/src/common/server/mcp-tool-handler.ts +47 -19
- package/src/common/tools/handlers/count-elements-mcp-tool-handler.ts +2 -1
- package/src/common/tools/handlers/create-edges-mcp-tool-handler.ts +20 -8
- package/src/common/tools/handlers/create-nodes-mcp-tool-handler.ts +19 -8
- package/src/common/tools/handlers/delete-elements-mcp-tool-handler.ts +2 -1
- package/src/common/tools/handlers/diagram-model-mcp-tool-handler.ts +6 -3
- package/src/common/tools/handlers/element-types-mcp-tool-handler.ts +6 -3
- package/src/common/tools/handlers/get-selection-mcp-tool-handler.ts +2 -1
- package/src/common/tools/handlers/layout-mcp-tool-handler.ts +8 -2
- package/src/common/tools/handlers/modify-edges-mcp-tool-handler.ts +14 -8
- package/src/common/tools/handlers/modify-nodes-mcp-tool-handler.ts +63 -25
- package/src/common/tools/handlers/query-elements-mcp-tool-handler.ts +2 -1
- package/src/common/tools/handlers/redo-mcp-tool-handler.ts +9 -4
- package/src/common/tools/handlers/save-model-mcp-tool-handler.ts +5 -2
- package/src/common/tools/handlers/session-info-mcp-tool-handler.ts +2 -1
- package/src/common/tools/handlers/set-selection-mcp-tool-handler.ts +8 -5
- package/src/common/tools/handlers/set-view-mcp-tool-handler.ts +3 -2
- package/src/common/tools/handlers/undo-mcp-tool-handler.ts +9 -4
- package/src/common/tools/handlers/validate-diagram-mcp-tool-handler.ts +0 -0
- package/src/common/server/abstract-mcp-server-launcher.spec.ts +0 -458
- package/src/common/server/glsp-mcp-server.spec.ts +0 -73
- package/src/common/server/lru-event-store.spec.ts +0 -121
- package/src/common/server/mcp-diagram-handler-dispatcher.spec.ts +0 -231
- package/src/common/server/mcp-handler-shared.spec.ts +0 -53
- package/src/common/server/mcp-id-alias-service.spec.ts +0 -106
- package/src/common/server/mcp-log-level-registry.spec.ts +0 -75
- package/src/common/server/mcp-logger.spec.ts +0 -235
- package/src/common/server/mcp-progress-reporter.spec.ts +0 -103
- package/src/common/server/mcp-tool-handler.spec.ts +0 -182
- package/src/common/tools/handlers/count-elements-mcp-tool-handler.spec.ts +0 -101
- package/src/common/tools/handlers/create-edges-mcp-tool-handler.spec.ts +0 -198
- package/src/common/tools/handlers/create-nodes-mcp-tool-handler.spec.ts +0 -199
- package/src/common/tools/handlers/query-elements-mcp-tool-handler.spec.ts +0 -212
- package/src/common/tools/handlers/session-info-mcp-tool-handler.spec.ts +0 -152
- package/src/common/tools/handlers/set-selection-mcp-tool-handler.spec.ts +0 -120
- package/src/common/tools/tool-annotations.spec.ts +0 -141
- package/src/node/server/mcp-http-transport-e2e.spec.ts +0 -297
- package/src/node/server/node-mcp-server-launcher.spec.ts +0 -184
- package/src/node/server/raw-http.spec.ts +0 -59
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-edges-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/create-edges-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,
|
|
1
|
+
{"version":3,"file":"create-edges-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/create-edges-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAM8B;AAC9B,yCAAyD;AACzD,4BAA4B;AAE5B,sEAMwC;AACxC,oEAA+E;AAC/E,kDAAuD;AAEvD,kIAAkI;AACrH,QAAA,oBAAoB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC/C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gGAAgG,CAAC;IACpI,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC5F,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;IAC5F,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,4BAAQ,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iFAAiF,CAAC;IACvI,2GAA2G;IAC3G,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4EAA4E,CAAC;CACxI,CAAC,CAAC;AAEU,QAAA,sBAAsB,GAAG,+CAA2B,CAAC,MAAM,CAAC;IACrE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2DAA2D,CAAC;IACjH,MAAM,EAAE,CAAC;SACJ,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CACL,4HAA4H,CAC/H;CACR,CAAC,CAAC;AAGU,QAAA,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACtD,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;IACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6EAA6E,CAAC;CACxH,CAAC,CAAC;AAEU,QAAA,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,yCAAqB,CAAC,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IAC5H,kBAAkB,EAAlB,sCAAkB;IAClB,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,yEAAyE,CAAC;IAC/G,iBAAiB,EAAE,CAAC;SACf,KAAK,CAAC,yCAAiC,CAAC;SACxC,QAAQ,EAAE;SACV,QAAQ,CAAC,8DAA8D,CAAC;CAChF,CAAC,CAAC;AAOI,IAAM,yBAAyB,GAA/B,MAAM,yBAA0B,SAAQ,iDAAmE;IAA3G;;QAEM,SAAI,GAAG,2BAAyB,CAAC,IAAI,CAAC;QAC7B,UAAK,GAAG,sBAAsB,CAAC;QACxC,gBAAW,GAChB,2EAA2E;YAC3E,uFAAuF;YACvF,mFAAmF;YACnF,0FAA0F;YAC1F,+DAA+D,CAAC;QAC3D,gBAAW,GAAG,8BAAsB,CAAC;QAC5B,iBAAY,GAAG,+BAAuB,CAAC;IA+H7D,CAAC;;aAzImB,SAAI,GAAG,cAAc,AAAjB,CAAkB;IAe5B,KAAK,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,MAAM,EAAoB;QAC5D,IAAI,MAAM,EAAE,CAAC;YACT,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACjC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAES,SAAS,CAAC,KAAkB;QAClC,MAAM,iBAAiB,GAAuB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;QACzF,MAAM,UAAU,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAC7E,MAAM,OAAO,GACT,sBAAsB,KAAK,CAAC,MAAM,aAAa,UAAU,uBAAuB,KAAK,CAAC,MAAM,GAAG,UAAU,cAAc;YACvH,iBAAiB;iBACZ,GAAG,CACA,MAAM,CAAC,EAAE,CACL,KAAK,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,eAAe,MAAM,MAAM,CAAC,eAAe,IAAI;gBAC9E,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,MAAM,GAAG,EAAE,CACnE;iBACA,IAAI,CAAC,IAAI,CAAC,CAAC;QACpB,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,YAAY,EAAE,EAAE,EAAE,kBAAkB,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC7G,CAAC;IAES,KAAK,CAAC,SAAS,CAAC,KAAkB;QACxC,IAAI,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAE/C,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,MAAM,YAAY,GAAsB,EAAE,CAAC;QAC3C,IAAI,oBAAoB,GAAG,CAAC,CAAC;QAC7B,uFAAuF;QACvF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;YACpD,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YACvE,MAAM,eAAe,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAEvE,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBACjE,SAAS;YACb,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAC3D,IAAI,CAAC,MAAM,EAAE,CAAC;gBACV,MAAM,CAAC,IAAI,CAAC,6BAA6B,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;gBACjE,SAAS;YACb,CAAC;YAED,MAAM,SAAS,GAAG,4BAAmB,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC,CAAC;YACxG,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YAChD,oBAAoB,EAAE,CAAC;YAEvB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YAChD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC;YACpC,MAAM,WAAW,GAAG,QAAQ;iBACvB,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;iBAC/B,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;iBACzC,MAAM,CAAC,CAAC,OAAO,EAA4B,EAAE,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;YAC1E,2DAA2D;YAC3D,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,aAAa,CAAC,CAAC;YAClF,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC,CAAC,CAAC,CAAC;YACpD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACrD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kCAAkC,aAAa,cAAc,UAAU,EAAE,EAAE,sBAAsB,CAAC,CAAC;YACxH,CAAC;YACD,SAAS,GAAG,QAAQ,CAAC;YAErB,oGAAoG;YACpG,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,CAAC,IAAI,CAAC,8EAA8E,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClH,SAAS;YACb,CAAC;YAED,IAAI,aAAa,EAAE,CAAC;gBAChB,MAAM,sBAAsB,GAAG,qCAA4B,CAAC,MAAM,CAAC;oBAC/D,EAAE,SAAS,EAAE,UAAU,CAAC,EAAE,EAAE,gBAAgB,EAAE,aAAa,EAAE;iBAChE,CAAC,CAAC;gBACH,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,sBAAsB,CAAC,CAAC;gBAC7D,oBAAoB,EAAE,CAAC;YAC3B,CAAC;YAED,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,cAAc,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC,KAAK,aAAa,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7G,uJAAuJ;QACvJ,OAAO,IAAI,CAAC,OAAO,CACf,wBAAwB,YAAY,CAAC,MAAM,gBAAgB,oBAAoB,gBAAgB,cAAc,GAAG,IAAA,2BAAgB,EAAC,QAAQ,EAAE,MAAM,CAAC,EAAE,EACpJ,EAAE,YAAY,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,EAAE,CACrE,CAAC;IACN,CAAC;IAED,0HAA0H;IAChH,YAAY,CAAC,IAAe;QAClC,MAAM,EAAE,aAAa,EAAE,GAAG,IAAI,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpE,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACpE,MAAM,IAAI,GAA+E;YACrF,QAAQ,EAAE,aAAa;YACvB,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,eAAe,EAAE,IAAI,CAAC,eAAe;SACxC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,6BAA6B,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACpG,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,6BAA6B,IAAI,CAAC,eAAe,EAAE,EAAE,CAAC;QACpG,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,aAAa,KAAK,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,CAAC;QAClI,IAAI,CAAC,cAAc,EAAE,CAAC;YAClB,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,gDAAgD,EAAE,CAAC;QAChG,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC5B,OAAO;gBACH,GAAG,IAAI;gBACP,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,wDAAwD,aAAa,4BAA4B;aAC5G,CAAC;QACN,CAAC;QACD,MAAM,OAAO,GAAG,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QACtF,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,EAAE,CAAC;IACnG,CAAC;;AAzIQ,8DAAyB;AAaM;IAAvC,IAAA,kBAAM,EAAC,6BAAoB,CAAC;;uEAAsD;AAChC;IAAlD,IAAA,kBAAM,EAAC,4BAAmB,CAAC;IAAE,IAAA,oBAAQ,GAAE;;sEAAqD;oCAdpF,yBAAyB;IADrC,IAAA,sBAAU,GAAE;GACA,yBAAyB,CA0IrC"}
|
|
@@ -51,7 +51,8 @@ export declare const CreateNodesOutputSchema: z.ZodObject<{
|
|
|
51
51
|
errors: z.ZodArray<z.ZodString>;
|
|
52
52
|
warnings: z.ZodArray<z.ZodString>;
|
|
53
53
|
}, z.core.$strip>;
|
|
54
|
-
export
|
|
54
|
+
export type CreateNodesOutput = z.infer<typeof CreateNodesOutputSchema>;
|
|
55
|
+
export declare class CreateNodesMcpToolHandler extends OperationMcpDiagramToolHandler<CreateNodesInput, CreateNodesOutput> {
|
|
55
56
|
static readonly NAME = "create-nodes";
|
|
56
57
|
readonly name = "create-nodes";
|
|
57
58
|
readonly title = "Create Diagram Nodes";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-nodes-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/create-nodes-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAQhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAG/E,kIAAkI;AAClI,eAAO,MAAM,oBAAoB;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"create-nodes-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/create-nodes-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAQhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAG/E,kIAAkI;AAClI,eAAO,MAAM,oBAAoB;;;;;;;;;kBAY/B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;iBAEjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;;iBAWlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,qBACa,yBAA0B,SAAQ,8BAA8B,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IAC9G,MAAM,CAAC,QAAQ,CAAC,IAAI,kBAAkB;IACtC,QAAQ,CAAC,IAAI,kBAAkC;IAC/C,SAAkB,KAAK,0BAA0B;IACjD,QAAQ,CAAC,WAAW,SAMwD;IAC5E,QAAQ,CAAC,WAAW;;;;;;;;;;;;sBAA0B;IAC9C,SAAkB,YAAY;;;;;;;;;sBAA2B;cAEzC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;CAgEpF"}
|
|
@@ -34,7 +34,8 @@ exports.CreateNodeSpecSchema = z.strictObject({
|
|
|
34
34
|
elementTypeId: z
|
|
35
35
|
.string()
|
|
36
36
|
.describe('Element type ID (e.g., `task:manual`, `task:automated`). Use the `element-types` tool to discover valid IDs.'),
|
|
37
|
-
position: mcp_input_schemas_1.position.describe('Position where the node should be created
|
|
37
|
+
position: mcp_input_schemas_1.position.describe('Position where the node should be created, in absolute diagram coordinates — the server converts to ' +
|
|
38
|
+
'parent-relative when `containerId` is set. Note `modify-nodes` takes parent-relative coordinates instead.'),
|
|
38
39
|
text: z.string().optional().describe('Label text to use in case the given element type allows for labels.'),
|
|
39
40
|
containerId: z.string().optional().describe('ID of the container element. If not provided, node is added to the root.'),
|
|
40
41
|
// `args` stays open (`record(...)`) — adopter-specific extension surface for per-element-type creation hints.
|
|
@@ -53,7 +54,7 @@ exports.CreateNodesOutputSchema = z.object({
|
|
|
53
54
|
.array(z.string())
|
|
54
55
|
.describe('Soft notices for inputs that succeeded with caveats (e.g. `text` supplied for a type whose elements have no editable label).')
|
|
55
56
|
});
|
|
56
|
-
let CreateNodesMcpToolHandler =
|
|
57
|
+
let CreateNodesMcpToolHandler = class CreateNodesMcpToolHandler extends mcp_tool_handler_1.OperationMcpDiagramToolHandler {
|
|
57
58
|
constructor() {
|
|
58
59
|
super(...arguments);
|
|
59
60
|
this.name = CreateNodesMcpToolHandler_1.NAME;
|
|
@@ -67,8 +68,9 @@ let CreateNodesMcpToolHandler = CreateNodesMcpToolHandler_1 = class CreateNodesM
|
|
|
67
68
|
this.inputSchema = exports.CreateNodesInputSchema;
|
|
68
69
|
this.outputSchema = exports.CreateNodesOutputSchema;
|
|
69
70
|
}
|
|
71
|
+
static { CreateNodesMcpToolHandler_1 = this; }
|
|
72
|
+
static { this.NAME = 'create-nodes'; }
|
|
70
73
|
async createResult({ nodes }) {
|
|
71
|
-
var _a;
|
|
72
74
|
let beforeIds = this.modelState.index.allIds();
|
|
73
75
|
const errors = [];
|
|
74
76
|
const warnings = [];
|
|
@@ -83,11 +85,18 @@ let CreateNodesMcpToolHandler = CreateNodesMcpToolHandler_1 = class CreateNodesM
|
|
|
83
85
|
await this.actionDispatcher.dispatch(operation);
|
|
84
86
|
dispatchedOperations++;
|
|
85
87
|
const afterIds = this.modelState.index.allIds();
|
|
86
|
-
const
|
|
87
|
-
const newElements =
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
88
|
+
const knownIds = new Set(beforeIds);
|
|
89
|
+
const newElements = afterIds
|
|
90
|
+
.filter(id => !knownIds.has(id))
|
|
91
|
+
.map(id => this.modelState.index.find(id))
|
|
92
|
+
.filter((element) => element !== undefined);
|
|
93
|
+
// Fall back to the first new element: the built type may differ from the requested
|
|
94
|
+
// `elementTypeId` (type hint vs. concrete GModel type). `allIds()` is pre-order, so the
|
|
95
|
+
// first entry is the created element itself rather than one of its new children.
|
|
96
|
+
const typeMatches = newElements.filter(element => element.type === elementTypeId);
|
|
97
|
+
const newElement = typeMatches[0] ?? newElements[0];
|
|
98
|
+
if (newElements.length > 1 && typeMatches.length !== 1) {
|
|
99
|
+
this.logger.warn(`Ambiguous creation result for '${elementTypeId}': picked '${newElement?.id}' among new elements`);
|
|
91
100
|
}
|
|
92
101
|
beforeIds = afterIds;
|
|
93
102
|
// Operations don't surface failure directly — infer from absence of a new id of the requested type.
|
|
@@ -96,7 +105,7 @@ let CreateNodesMcpToolHandler = CreateNodesMcpToolHandler_1 = class CreateNodesM
|
|
|
96
105
|
continue;
|
|
97
106
|
}
|
|
98
107
|
if (text) {
|
|
99
|
-
const labelId =
|
|
108
|
+
const labelId = this.labelProvider.getLabel(newElement)?.id;
|
|
100
109
|
if (labelId) {
|
|
101
110
|
await this.actionDispatcher.dispatch(server_1.ApplyLabelEditOperation.create({ labelId, text }));
|
|
102
111
|
dispatchedOperations++;
|
|
@@ -118,7 +127,6 @@ let CreateNodesMcpToolHandler = CreateNodesMcpToolHandler_1 = class CreateNodesM
|
|
|
118
127
|
}
|
|
119
128
|
};
|
|
120
129
|
exports.CreateNodesMcpToolHandler = CreateNodesMcpToolHandler;
|
|
121
|
-
CreateNodesMcpToolHandler.NAME = 'create-nodes';
|
|
122
130
|
exports.CreateNodesMcpToolHandler = CreateNodesMcpToolHandler = CreateNodesMcpToolHandler_1 = __decorate([
|
|
123
131
|
(0, inversify_1.injectable)()
|
|
124
132
|
], CreateNodesMcpToolHandler);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-nodes-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/create-nodes-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;AAElF,
|
|
1
|
+
{"version":3,"file":"create-nodes-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/create-nodes-mcp-tool-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,7 +30,8 @@ export declare const DeleteElementsOutputSchema: z.ZodObject<{
|
|
|
30
30
|
deletedCount: z.ZodNumber;
|
|
31
31
|
dispatchedCommands: z.ZodNumber;
|
|
32
32
|
}, z.core.$strip>;
|
|
33
|
-
export
|
|
33
|
+
export type DeleteElementsOutput = z.infer<typeof DeleteElementsOutputSchema>;
|
|
34
|
+
export declare class DeleteElementsMcpToolHandler extends OperationMcpDiagramToolHandler<DeleteElementsInput, DeleteElementsOutput> {
|
|
34
35
|
static readonly NAME = "delete-elements";
|
|
35
36
|
readonly name = "delete-elements";
|
|
36
37
|
readonly title = "Delete Diagram Elements";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-elements-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/delete-elements-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAE/E,eAAO,MAAM,yBAAyB;;;iBAAqD,CAAC;AAC5F,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,0BAA0B;;;;;;;;iBAarC,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-elements-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/delete-elements-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAE/E,eAAO,MAAM,yBAAyB;;;iBAAqD,CAAC;AAC5F,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,0BAA0B;;;;;;;;iBAarC,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,qBACa,4BAA6B,SAAQ,8BAA8B,CAAC,mBAAmB,EAAE,oBAAoB,CAAC;IACvH,MAAM,CAAC,QAAQ,CAAC,IAAI,qBAAqB;IACzC,QAAQ,CAAC,IAAI,qBAAqC;IAClD,SAAkB,KAAK,6BAA6B;IACpD,QAAQ,CAAC,WAAW,SAGiF;IACrG,QAAQ,CAAC,WAAW;;;sBAA6B;IACjD,SAAkB,YAAY;;;;;;;;sBAA8B;IAC5D,sFAAsF;IACtF,SAAkB,eAAe,QAAQ;cAEzB,YAAY,CAAC,EAAE,UAAU,EAAE,EAAE,mBAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;CAe5F"}
|
|
@@ -39,7 +39,7 @@ exports.DeleteElementsOutputSchema = z.object({
|
|
|
39
39
|
.describe('Total number of elements removed from the model. Higher than `deletedElements.length` when dependents (e.g. edges) are auto-deleted.'),
|
|
40
40
|
dispatchedCommands: mcp_input_schemas_1.dispatchedCommands
|
|
41
41
|
});
|
|
42
|
-
let DeleteElementsMcpToolHandler =
|
|
42
|
+
let DeleteElementsMcpToolHandler = class DeleteElementsMcpToolHandler extends mcp_tool_handler_1.OperationMcpDiagramToolHandler {
|
|
43
43
|
constructor() {
|
|
44
44
|
super(...arguments);
|
|
45
45
|
this.name = DeleteElementsMcpToolHandler_1.NAME;
|
|
@@ -52,6 +52,8 @@ let DeleteElementsMcpToolHandler = DeleteElementsMcpToolHandler_1 = class Delete
|
|
|
52
52
|
/** Deletion is the canonical destructive update — flip the operation-base default. */
|
|
53
53
|
this.destructiveHint = true;
|
|
54
54
|
}
|
|
55
|
+
static { DeleteElementsMcpToolHandler_1 = this; }
|
|
56
|
+
static { this.NAME = 'delete-elements'; }
|
|
55
57
|
async createResult({ elementIds }) {
|
|
56
58
|
const realIds = this.resolveExistingIds(elementIds);
|
|
57
59
|
// Capture identities BEFORE dispatch — once deleted, `describeElement` returns undefined.
|
|
@@ -69,7 +71,6 @@ let DeleteElementsMcpToolHandler = DeleteElementsMcpToolHandler_1 = class Delete
|
|
|
69
71
|
}
|
|
70
72
|
};
|
|
71
73
|
exports.DeleteElementsMcpToolHandler = DeleteElementsMcpToolHandler;
|
|
72
|
-
DeleteElementsMcpToolHandler.NAME = 'delete-elements';
|
|
73
74
|
exports.DeleteElementsMcpToolHandler = DeleteElementsMcpToolHandler = DeleteElementsMcpToolHandler_1 = __decorate([
|
|
74
75
|
(0, inversify_1.injectable)()
|
|
75
76
|
], DeleteElementsMcpToolHandler);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-elements-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/delete-elements-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;AAElF,iDAA8D;AAC9D,yCAAuC;AACvC,4BAA4B;AAE5B,sEAAoI;AACpI,oEAA+E;AAElE,QAAA,yBAAyB,GAAG,+CAA2B,CAAC,MAAM,CAAC,EAAE,UAAU,EAAV,8BAAU,EAAE,CAAC,CAAC;AAG/E,QAAA,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,eAAe,EAAE,CAAC;SACb,KAAK,CAAC,yCAAqB,CAAC;SAC5B,QAAQ,CACL,8IAA8I,CACjJ;IACL,YAAY,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,CACL,sIAAsI,CACzI;IACL,kBAAkB,EAAlB,sCAAkB;CACrB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-elements-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/delete-elements-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;AAElF,iDAA8D;AAC9D,yCAAuC;AACvC,4BAA4B;AAE5B,sEAAoI;AACpI,oEAA+E;AAElE,QAAA,yBAAyB,GAAG,+CAA2B,CAAC,MAAM,CAAC,EAAE,UAAU,EAAV,8BAAU,EAAE,CAAC,CAAC;AAG/E,QAAA,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC/C,eAAe,EAAE,CAAC;SACb,KAAK,CAAC,yCAAqB,CAAC;SAC5B,QAAQ,CACL,8IAA8I,CACjJ;IACL,YAAY,EAAE,CAAC;SACV,MAAM,EAAE;SACR,GAAG,EAAE;SACL,QAAQ,CACL,sIAAsI,CACzI;IACL,kBAAkB,EAAlB,sCAAkB;CACrB,CAAC,CAAC;AAII,IAAM,4BAA4B,GAAlC,MAAM,4BAA6B,SAAQ,iDAAyE;IAApH;;QAEM,SAAI,GAAG,8BAA4B,CAAC,IAAI,CAAC;QAChC,UAAK,GAAG,yBAAyB,CAAC;QAC3C,gBAAW,GAChB,iEAAiE;YACjE,wEAAwE;YACxE,gGAAgG,CAAC;QAC5F,gBAAW,GAAG,iCAAyB,CAAC;QAC/B,iBAAY,GAAG,kCAA0B,CAAC;QAC5D,sFAAsF;QACpE,oBAAe,GAAG,IAAI,CAAC;IAiB7C,CAAC;;aA3BmB,SAAI,GAAG,iBAAiB,AAApB,CAAqB;IAY/B,KAAK,CAAC,YAAY,CAAC,EAAE,UAAU,EAAuB;QAC5D,MAAM,OAAO,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC;QACpD,0FAA0F;QAC1F,MAAM,eAAe,GAAG,OAAO;aAC1B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC;aAC3C,MAAM,CAAC,CAAC,KAAK,EAAsC,EAAE,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;QAChF,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC;QAC1D,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,+BAAsB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;QAC7E,MAAM,YAAY,GAAG,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC;QACzE,OAAO,IAAI,CAAC,OAAO,CAAC,wBAAwB,YAAY,oCAAoC,EAAE;YAC1F,eAAe;YACf,YAAY;YACZ,kBAAkB,EAAE,CAAC;SACxB,CAAC,CAAC;IACP,CAAC;;AA3BQ,oEAA4B;uCAA5B,4BAA4B;IADxC,IAAA,sBAAU,GAAE;GACA,4BAA4B,CA4BxC"}
|
|
@@ -36,7 +36,8 @@ export declare const DiagramModelOutputSchema: z.ZodObject<{
|
|
|
36
36
|
parentId: z.ZodOptional<z.ZodString>;
|
|
37
37
|
}, z.core.$loose>>;
|
|
38
38
|
}, z.core.$strip>;
|
|
39
|
-
export
|
|
39
|
+
export type DiagramModelOutput = z.infer<typeof DiagramModelOutputSchema>;
|
|
40
|
+
export declare class DiagramModelMcpToolHandler extends AbstractMcpDiagramToolHandler<DiagramModelInput, DiagramModelOutput> {
|
|
40
41
|
static readonly NAME = "diagram-model";
|
|
41
42
|
readonly name = "diagram-model";
|
|
42
43
|
readonly title = "Diagram Model Structure";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-model-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/diagram-model-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;iBAA8B,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,2HAA2H;AAC3H,eAAO,MAAM,yBAAyB;;;;iBAM1B,CAAC;AAEb,eAAO,MAAM,wBAAwB;;;;;;;iBAGnC,CAAC;
|
|
1
|
+
{"version":3,"file":"diagram-model-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/diagram-model-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErD,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AACnF,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;iBAA8B,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,2HAA2H;AAC3H,eAAO,MAAM,yBAAyB;;;;iBAM1B,CAAC;AAEb,eAAO,MAAM,wBAAwB;;;;;;;iBAGnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,qBACa,0BAA2B,SAAQ,6BAA6B,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAChH,MAAM,CAAC,QAAQ,CAAC,IAAI,mBAAmB;IACvC,QAAQ,CAAC,IAAI,mBAAmC;IAChD,SAAkB,KAAK,6BAA6B;IACpD,QAAQ,CAAC,WAAW,SAIyB;IAC7C,QAAQ,CAAC,WAAW;;sBAA2B;IAC/C,SAAkB,YAAY;;;;;;;sBAA4B;IAE9B,SAAS,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAErE,SAAS,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,iBAAiB,GAAG,aAAa;IASvE,qFAAqF;IACrF,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;CAG9E"}
|
|
@@ -44,7 +44,7 @@ exports.DiagramModelOutputSchema = z.object({
|
|
|
44
44
|
sessionId: z.string(),
|
|
45
45
|
elements: z.array(exports.DiagramModelElementSchema)
|
|
46
46
|
});
|
|
47
|
-
let DiagramModelMcpToolHandler =
|
|
47
|
+
let DiagramModelMcpToolHandler = class DiagramModelMcpToolHandler extends mcp_tool_handler_1.AbstractMcpDiagramToolHandler {
|
|
48
48
|
constructor() {
|
|
49
49
|
super(...arguments);
|
|
50
50
|
this.name = DiagramModelMcpToolHandler_1.NAME;
|
|
@@ -56,11 +56,15 @@ let DiagramModelMcpToolHandler = DiagramModelMcpToolHandler_1 = class DiagramMod
|
|
|
56
56
|
this.inputSchema = exports.DiagramModelInputSchema;
|
|
57
57
|
this.outputSchema = exports.DiagramModelOutputSchema;
|
|
58
58
|
}
|
|
59
|
+
static { DiagramModelMcpToolHandler_1 = this; }
|
|
60
|
+
static { this.NAME = 'diagram-model'; }
|
|
59
61
|
createResult({ sessionId }) {
|
|
60
62
|
const root = this.modelState.root;
|
|
61
63
|
const structured = this.serializer.serializeStructured(root);
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
+
const elements = (Array.isArray(structured.elements) ? structured.elements : []);
|
|
65
|
+
// Spread first so extra top-level keys from an adopter serializer still reach the client;
|
|
66
|
+
// the narrowed `elements` then satisfies the declared output type.
|
|
67
|
+
return this.success(this.summarizeModel(root, elements.length), { sessionId, ...structured, elements });
|
|
64
68
|
}
|
|
65
69
|
/** Builds the LLM-facing summary line. Override to customize per-adopter wording. */
|
|
66
70
|
summarizeModel(root, elementCount) {
|
|
@@ -68,7 +72,6 @@ let DiagramModelMcpToolHandler = DiagramModelMcpToolHandler_1 = class DiagramMod
|
|
|
68
72
|
}
|
|
69
73
|
};
|
|
70
74
|
exports.DiagramModelMcpToolHandler = DiagramModelMcpToolHandler;
|
|
71
|
-
DiagramModelMcpToolHandler.NAME = 'diagram-model';
|
|
72
75
|
__decorate([
|
|
73
76
|
(0, inversify_1.inject)(mcp_model_serializer_1.McpModelSerializer),
|
|
74
77
|
__metadata("design:type", Object)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diagram-model-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/diagram-model-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAGlF,yCAA+C;AAC/C,4BAA4B;AAC5B,wFAAmF;AAEnF,sEAA6E;AAC7E,oEAA8E;AAEjE,QAAA,uBAAuB,GAAG,+CAA2B,CAAC;AAGnE,2HAA2H;AAC9G,QAAA,yBAAyB,GAAG,CAAC;KACrC,MAAM,CAAC;IACJ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC;KACD,KAAK,EAAE,CAAC;AAEA,QAAA,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iCAAyB,CAAC;CAC/C,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"diagram-model-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/diagram-model-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAGlF,yCAA+C;AAC/C,4BAA4B;AAC5B,wFAAmF;AAEnF,sEAA6E;AAC7E,oEAA8E;AAEjE,QAAA,uBAAuB,GAAG,+CAA2B,CAAC;AAGnE,2HAA2H;AAC9G,QAAA,yBAAyB,GAAG,CAAC;KACrC,MAAM,CAAC;IACJ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC;KACD,KAAK,EAAE,CAAC;AAEA,QAAA,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,iCAAyB,CAAC;CAC/C,CAAC,CAAC;AAII,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,gDAAoE;IAA7G;;QAEM,SAAI,GAAG,4BAA0B,CAAC,IAAI,CAAC;QAC9B,UAAK,GAAG,yBAAyB,CAAC;QAC3C,gBAAW,GAChB,qEAAqE;YACrE,4DAA4D;YAC5D,oGAAoG;YACpG,wCAAwC,CAAC;QACpC,gBAAW,GAAG,+BAAuB,CAAC;QAC7B,iBAAY,GAAG,gCAAwB,CAAC;IAiB9D,CAAC;;aA1BmB,SAAI,GAAG,eAAe,AAAlB,CAAmB;IAa7B,YAAY,CAAC,EAAE,SAAS,EAAqB;QACnD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAClC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAmC,CAAC;QACnH,0FAA0F;QAC1F,mEAAmE;QACnE,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,GAAG,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED,qFAAqF;IAC3E,cAAc,CAAC,IAAmB,EAAE,YAAoB;QAC9D,OAAO,YAAY,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,IAAI,MAAM,YAAY,yDAAyD,CAAC;IAClJ,CAAC;;AA1BQ,gEAA0B;AAYG;IAArC,IAAA,kBAAM,EAAC,yCAAkB,CAAC;;8DAA0C;qCAZ5D,0BAA0B;IADtC,IAAA,sBAAU,GAAE;GACA,0BAA0B,CA2BtC"}
|
|
@@ -50,6 +50,7 @@ export declare const ElementTypesOutputSchema: z.ZodObject<{
|
|
|
50
50
|
acceptsText: z.ZodOptional<z.ZodBoolean>;
|
|
51
51
|
}, z.core.$loose>>;
|
|
52
52
|
}, z.core.$strip>;
|
|
53
|
+
export type ElementTypesOutput = z.infer<typeof ElementTypesOutputSchema>;
|
|
53
54
|
/**
|
|
54
55
|
* Server-scope so the LLM can discover types before opening a session. Lazy-harvests the
|
|
55
56
|
* per-diagram-type {@link ElementTypesProvider} via a temporary child container (same pattern
|
|
@@ -59,7 +60,7 @@ export declare const ElementTypesOutputSchema: z.ZodObject<{
|
|
|
59
60
|
* Adopters with statically-known type info bind their own {@link ElementTypesProvider} via
|
|
60
61
|
* `bindElementTypesProvider()`; the harvest picks it up without further overrides.
|
|
61
62
|
*/
|
|
62
|
-
export declare class ElementTypesMcpToolHandler extends AbstractMcpToolHandler<ElementTypesInput> {
|
|
63
|
+
export declare class ElementTypesMcpToolHandler extends AbstractMcpToolHandler<ElementTypesInput, ElementTypesOutput> {
|
|
63
64
|
protected diagramModules: Map<string, ContainerModule[]>;
|
|
64
65
|
protected serverContainer: Container;
|
|
65
66
|
protected clientSessionManager: ClientSessionManager;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-types-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/element-types-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAEH,oBAAoB,EAIvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAsB,MAAM,WAAW,CAAC;AAC3E,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAgB,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAwB,MAAM,iDAAiD,CAAC;AAErG,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;iBAUvB,CAAC;AAEb,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;iBAInC,CAAC;
|
|
1
|
+
{"version":3,"file":"element-types-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/element-types-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAEH,oBAAoB,EAIvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,SAAS,EAAE,eAAe,EAAsB,MAAM,WAAW,CAAC;AAC3E,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAgB,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EAAE,YAAY,EAAwB,MAAM,iDAAiD,CAAC;AAErG,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;GAIG;AACH,eAAO,MAAM,sBAAsB;;;;;iBAUvB,CAAC;AAEb,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;iBAInC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E;;;;;;;;GAQG;AACH,qBACa,0BAA2B,SAAQ,sBAAsB,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IACjF,SAAS,CAAC,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;IACrD,SAAS,CAAC,eAAe,EAAE,SAAS,CAAC;IACnC,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IAEnF,MAAM,CAAC,QAAQ,CAAC,IAAI,mBAAmB;IACvC,QAAQ,CAAC,IAAI,mBAAmC;IAChD,SAAkB,KAAK,6BAA6B;IACpD,QAAQ,CAAC,WAAW,SAIqE;IACzF,QAAQ,CAAC,WAAW;;;sBAA2B;IAC/C,SAAkB,YAAY;;;;;;;;;;;;;;sBAA4B;IAE1D,SAAS,CAAC,QAAQ,CAAC,KAAK,4BAAmC;IAE3D,SAAS,CAAC,YAAY,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,EAAE,iBAAiB,GAAG,aAAa;IAYpF,gFAAgF;IAChF,SAAS,CAAC,qBAAqB,CAC3B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,YAAY,CAAC,WAAW,CAAC,EACpC,SAAS,EAAE,YAAY,CAAC,WAAW,CAAC,GACrC,MAAM;IAST,SAAS,CAAC,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM;IAWnE,SAAS,CAAC,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY;IAS5D,wJAAwJ;IACxJ,SAAS,CAAC,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,YAAY;CAoBnE"}
|
|
@@ -66,7 +66,7 @@ exports.ElementTypesOutputSchema = z.object({
|
|
|
66
66
|
* Adopters with statically-known type info bind their own {@link ElementTypesProvider} via
|
|
67
67
|
* `bindElementTypesProvider()`; the harvest picks it up without further overrides.
|
|
68
68
|
*/
|
|
69
|
-
let ElementTypesMcpToolHandler =
|
|
69
|
+
let ElementTypesMcpToolHandler = class ElementTypesMcpToolHandler extends mcp_tool_handler_1.AbstractMcpToolHandler {
|
|
70
70
|
constructor() {
|
|
71
71
|
super(...arguments);
|
|
72
72
|
this.name = ElementTypesMcpToolHandler_1.NAME;
|
|
@@ -79,13 +79,17 @@ let ElementTypesMcpToolHandler = ElementTypesMcpToolHandler_1 = class ElementTyp
|
|
|
79
79
|
this.outputSchema = exports.ElementTypesOutputSchema;
|
|
80
80
|
this.cache = new Map();
|
|
81
81
|
}
|
|
82
|
+
static { ElementTypesMcpToolHandler_1 = this; }
|
|
83
|
+
static { this.NAME = 'element-types'; }
|
|
82
84
|
createResult({ sessionId, diagramType }) {
|
|
83
|
-
const resolved = diagramType
|
|
85
|
+
const resolved = diagramType ?? this.resolveDiagramType(sessionId);
|
|
84
86
|
const { nodeTypes, edgeTypes } = this.getElementTypes(resolved);
|
|
85
87
|
return this.success(this.summarizeElementTypes(resolved, nodeTypes, edgeTypes), {
|
|
86
88
|
diagramType: resolved,
|
|
87
|
-
|
|
88
|
-
|
|
89
|
+
// `ElementTypeEntry` stays closed so a mistyped field on an adopter provider is still a
|
|
90
|
+
// compile error; the widening to the `loose()` schema shape happens here.
|
|
91
|
+
nodeTypes: nodeTypes,
|
|
92
|
+
edgeTypes: edgeTypes
|
|
89
93
|
});
|
|
90
94
|
}
|
|
91
95
|
/** Builds the LLM-facing summary. Override to customize per-adopter wording. */
|
|
@@ -137,7 +141,6 @@ let ElementTypesMcpToolHandler = ElementTypesMcpToolHandler_1 = class ElementTyp
|
|
|
137
141
|
}
|
|
138
142
|
};
|
|
139
143
|
exports.ElementTypesMcpToolHandler = ElementTypesMcpToolHandler;
|
|
140
|
-
ElementTypesMcpToolHandler.NAME = 'element-types';
|
|
141
144
|
__decorate([
|
|
142
145
|
(0, inversify_1.inject)(server_1.DiagramModules),
|
|
143
146
|
__metadata("design:type", Map)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"element-types-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/element-types-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAM8B;AAC9B,yCAA2E;AAC3E,4BAA4B;AAC5B,wEAA8E;AAC9E,oEAAuE;AACvE,4FAAqG;AAExF,QAAA,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uFAAuF,CAAC;IAClI,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yFAAyF,CAAC;CACzI,CAAC,CAAC;AAGH;;;;GAIG;AACU,QAAA,sBAAsB,GAAG,CAAC;KAClC,MAAM,CAAC;IACJ,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gEAAgE,CAAC;IACzF,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;IACpG,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;IAC3F,WAAW,EAAE,CAAC;SACT,OAAO,EAAE;SACT,QAAQ,EAAE;SACV,QAAQ,CAAC,6GAA6G,CAAC;CAC/H,CAAC;KACD,KAAK,EAAE,CAAC;AAEA,QAAA,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,8BAAsB,CAAC;IAC1C,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,8BAAsB,CAAC;CAC7C,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"element-types-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/element-types-mcp-tool-handler.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,8 +24,9 @@ export type GetSelectionInput = z.infer<typeof GetSelectionInputSchema>;
|
|
|
24
24
|
export declare const GetSelectionOutputSchema: z.ZodObject<{
|
|
25
25
|
selectedElementIds: z.ZodArray<z.ZodString>;
|
|
26
26
|
}, z.core.$strip>;
|
|
27
|
+
export type GetSelectionOutput = z.infer<typeof GetSelectionOutputSchema>;
|
|
27
28
|
/** Round-trips a sprotty {@link GetSelectionAction} via `ActionDispatcher.requestUntil` and awaits the matching `SelectionResult`. */
|
|
28
|
-
export declare class GetSelectionMcpToolHandler extends AbstractMcpDiagramToolHandler<GetSelectionInput> {
|
|
29
|
+
export declare class GetSelectionMcpToolHandler extends AbstractMcpDiagramToolHandler<GetSelectionInput, GetSelectionOutput> {
|
|
29
30
|
/** Timeout (in ms) for awaiting the selection response from the client. Override via subclass + rebind. */
|
|
30
31
|
protected readonly timeoutMs: number;
|
|
31
32
|
static readonly NAME = "get-selection";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-selection-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/get-selection-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,gBAAgB,EAAsB,MAAM,sBAAsB,CAAC;AAE5E,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAuB,MAAM,iCAAiC,CAAC;AAErF,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;iBAA8B,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,wBAAwB;;iBAEnC,CAAC;
|
|
1
|
+
{"version":3,"file":"get-selection-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/get-selection-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,gBAAgB,EAAsB,MAAM,sBAAsB,CAAC;AAE5E,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAuB,MAAM,iCAAiC,CAAC;AAErF,OAAO,EAAE,6BAA6B,EAAE,MAAM,+BAA+B,CAAC;AAE9E,eAAO,MAAM,uBAAuB;;iBAA8B,CAAC;AACnE,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,eAAO,MAAM,wBAAwB;;iBAEnC,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,sIAAsI;AACtI,qBACa,0BAA2B,SAAQ,6BAA6B,CAAC,iBAAiB,EAAE,kBAAkB,CAAC;IAChH,2GAA2G;IAC3G,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAQ;IAE5C,MAAM,CAAC,QAAQ,CAAC,IAAI,mBAAmB;IACvC,QAAQ,CAAC,IAAI,mBAAmC;IAChD,SAAkB,KAAK,mCAAmC;IAC1D,QAAQ,CAAC,WAAW,SAIkC;IACtD,QAAQ,CAAC,WAAW;;sBAA2B;IAC/C,SAAkB,YAAY;;sBAA4B;IAEhC,SAAS,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;cAEvD,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,aAAa,CAAC;CAMnF"}
|
|
@@ -37,7 +37,7 @@ exports.GetSelectionOutputSchema = z.object({
|
|
|
37
37
|
selectedElementIds: z.array(z.string()).describe('Aliased ids of the elements currently selected on the client.')
|
|
38
38
|
});
|
|
39
39
|
/** Round-trips a sprotty {@link GetSelectionAction} via `ActionDispatcher.requestUntil` and awaits the matching `SelectionResult`. */
|
|
40
|
-
let GetSelectionMcpToolHandler =
|
|
40
|
+
let GetSelectionMcpToolHandler = class GetSelectionMcpToolHandler extends mcp_tool_handler_1.AbstractMcpDiagramToolHandler {
|
|
41
41
|
constructor() {
|
|
42
42
|
super(...arguments);
|
|
43
43
|
/** Timeout (in ms) for awaiting the selection response from the client. Override via subclass + rebind. */
|
|
@@ -51,6 +51,8 @@ let GetSelectionMcpToolHandler = GetSelectionMcpToolHandler_1 = class GetSelecti
|
|
|
51
51
|
this.inputSchema = exports.GetSelectionInputSchema;
|
|
52
52
|
this.outputSchema = exports.GetSelectionOutputSchema;
|
|
53
53
|
}
|
|
54
|
+
static { GetSelectionMcpToolHandler_1 = this; }
|
|
55
|
+
static { this.NAME = 'get-selection'; }
|
|
54
56
|
async createResult(_params) {
|
|
55
57
|
const response = await (0, mcp_handler_shared_1.requestActionOrFail)(this.actionDispatcher, server_1.GetSelectionAction.create(), this.timeoutMs, this.name);
|
|
56
58
|
const selectedElementIds = this.encodeIds(response.selectedElementsIDs);
|
|
@@ -59,7 +61,6 @@ let GetSelectionMcpToolHandler = GetSelectionMcpToolHandler_1 = class GetSelecti
|
|
|
59
61
|
}
|
|
60
62
|
};
|
|
61
63
|
exports.GetSelectionMcpToolHandler = GetSelectionMcpToolHandler;
|
|
62
|
-
GetSelectionMcpToolHandler.NAME = 'get-selection';
|
|
63
64
|
__decorate([
|
|
64
65
|
(0, inversify_1.inject)(server_1.ActionDispatcher),
|
|
65
66
|
__metadata("design:type", Object)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-selection-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/get-selection-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA4E;AAC5E,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAAqF;AACrF,sEAA6E;AAC7E,oEAA8E;AAEjE,QAAA,uBAAuB,GAAG,+CAA2B,CAAC;AAGtD,QAAA,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,+DAA+D,CAAC;CACpH,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"get-selection-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/get-selection-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAA4E;AAC5E,yCAA+C;AAC/C,4BAA4B;AAC5B,wEAAqF;AACrF,sEAA6E;AAC7E,oEAA8E;AAEjE,QAAA,uBAAuB,GAAG,+CAA2B,CAAC;AAGtD,QAAA,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,kBAAkB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,+DAA+D,CAAC;CACpH,CAAC,CAAC;AAGH,sIAAsI;AAE/H,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,gDAAoE;IAA7G;;QACH,2GAA2G;QACxF,cAAS,GAAW,IAAI,CAAC;QAGnC,SAAI,GAAG,4BAA0B,CAAC,IAAI,CAAC;QAC9B,UAAK,GAAG,+BAA+B,CAAC;QACjD,gBAAW,GAChB,wFAAwF;YACxF,sHAAsH;YACtH,6FAA6F;YAC7F,iDAAiD,CAAC;QAC7C,gBAAW,GAAG,+BAAuB,CAAC;QAC7B,iBAAY,GAAG,gCAAwB,CAAC;IAU9D,CAAC;;aAnBmB,SAAI,GAAG,eAAe,AAAlB,CAAmB;IAa7B,KAAK,CAAC,YAAY,CAAC,OAA0B;QACnD,MAAM,QAAQ,GAAG,MAAM,IAAA,wCAAmB,EAAC,IAAI,CAAC,gBAAgB,EAAE,2BAAkB,CAAC,MAAM,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1H,MAAM,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;QACxE,MAAM,cAAc,GAAG,kBAAkB,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1E,OAAO,IAAI,CAAC,OAAO,CAAC,wCAAwC,cAAc,EAAE,EAAE,EAAE,kBAAkB,EAAE,CAAC,CAAC;IAC1G,CAAC;;AAtBQ,gEAA0B;AAeC;IAAnC,IAAA,kBAAM,EAAC,yBAAgB,CAAC;;oEAA8C;qCAf9D,0BAA0B;IADtC,IAAA,sBAAU,GAAE;GACA,0BAA0B,CAuBtC"}
|
|
@@ -25,8 +25,9 @@ export declare const LayoutOutputSchema: z.ZodObject<{
|
|
|
25
25
|
applied: z.ZodBoolean;
|
|
26
26
|
dispatchedCommands: z.ZodNumber;
|
|
27
27
|
}, z.core.$strip>;
|
|
28
|
+
export type LayoutOutput = z.infer<typeof LayoutOutputSchema>;
|
|
28
29
|
/** Not registered by default: requires an adopter-supplied `LayoutEngine` to bind, which only some GLSP servers ship. */
|
|
29
|
-
export declare class LayoutMcpToolHandler extends OperationMcpDiagramToolHandler<LayoutInput> {
|
|
30
|
+
export declare class LayoutMcpToolHandler extends OperationMcpDiagramToolHandler<LayoutInput, LayoutOutput> {
|
|
30
31
|
static readonly NAME = "layout";
|
|
31
32
|
readonly name = "layout";
|
|
32
33
|
readonly title = "Auto-Layout Diagram";
|
|
@@ -39,7 +40,9 @@ export declare class LayoutMcpToolHandler extends OperationMcpDiagramToolHandler
|
|
|
39
40
|
dispatchedCommands: z.ZodNumber;
|
|
40
41
|
}, z.core.$strip>;
|
|
41
42
|
protected layoutEngine?: LayoutEngine;
|
|
42
|
-
/**
|
|
43
|
+
/** Keep the tool out of the MCP catalog for diagram types that bind no `LayoutEngine`. */
|
|
44
|
+
isSupportedByDiagramType(): boolean;
|
|
45
|
+
/** Skip session registration when no `LayoutEngine` is bound — every dispatch would otherwise no-op. */
|
|
43
46
|
canRegister(): boolean;
|
|
44
47
|
protected createResult(_params: LayoutInput): Promise<McpToolResult>;
|
|
45
48
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/layout-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AAErE,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAE/E,eAAO,MAAM,iBAAiB;;iBAA8B,CAAC;AAC7D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAC;
|
|
1
|
+
{"version":3,"file":"layout-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/layout-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAElF,OAAO,EAAE,YAAY,EAAmB,MAAM,sBAAsB,CAAC;AAErE,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAEhE,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAE/E,eAAO,MAAM,iBAAiB;;iBAA8B,CAAC;AAC7D,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,yHAAyH;AACzH,qBACa,oBAAqB,SAAQ,8BAA8B,CAAC,WAAW,EAAE,YAAY,CAAC;IAC/F,MAAM,CAAC,QAAQ,CAAC,IAAI,YAAY;IAChC,QAAQ,CAAC,IAAI,YAA6B;IAC1C,SAAkB,KAAK,yBAAyB;IAChD,QAAQ,CAAC,WAAW,SAM+D;IACnF,QAAQ,CAAC,WAAW;;sBAAqB;IACzC,SAAkB,YAAY;;;sBAAsB;IAElB,SAAS,CAAC,YAAY,CAAC,EAAE,YAAY,CAAC;IAExE,0FAA0F;IACjF,wBAAwB,IAAI,OAAO;IAI5C,wGAAwG;IAC/F,WAAW,IAAI,OAAO;cAIf,YAAY,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC;CAI7E"}
|
|
@@ -37,7 +37,7 @@ exports.LayoutOutputSchema = z.object({
|
|
|
37
37
|
dispatchedCommands: mcp_input_schemas_1.dispatchedCommands
|
|
38
38
|
});
|
|
39
39
|
/** Not registered by default: requires an adopter-supplied `LayoutEngine` to bind, which only some GLSP servers ship. */
|
|
40
|
-
let LayoutMcpToolHandler =
|
|
40
|
+
let LayoutMcpToolHandler = class LayoutMcpToolHandler extends mcp_tool_handler_1.OperationMcpDiagramToolHandler {
|
|
41
41
|
constructor() {
|
|
42
42
|
super(...arguments);
|
|
43
43
|
this.name = LayoutMcpToolHandler_1.NAME;
|
|
@@ -51,7 +51,13 @@ let LayoutMcpToolHandler = LayoutMcpToolHandler_1 = class LayoutMcpToolHandler e
|
|
|
51
51
|
this.inputSchema = exports.LayoutInputSchema;
|
|
52
52
|
this.outputSchema = exports.LayoutOutputSchema;
|
|
53
53
|
}
|
|
54
|
-
|
|
54
|
+
static { LayoutMcpToolHandler_1 = this; }
|
|
55
|
+
static { this.NAME = 'layout'; }
|
|
56
|
+
/** Keep the tool out of the MCP catalog for diagram types that bind no `LayoutEngine`. */
|
|
57
|
+
isSupportedByDiagramType() {
|
|
58
|
+
return this.layoutEngine !== undefined;
|
|
59
|
+
}
|
|
60
|
+
/** Skip session registration when no `LayoutEngine` is bound — every dispatch would otherwise no-op. */
|
|
55
61
|
canRegister() {
|
|
56
62
|
return this.layoutEngine !== undefined;
|
|
57
63
|
}
|
|
@@ -61,7 +67,6 @@ let LayoutMcpToolHandler = LayoutMcpToolHandler_1 = class LayoutMcpToolHandler e
|
|
|
61
67
|
}
|
|
62
68
|
};
|
|
63
69
|
exports.LayoutMcpToolHandler = LayoutMcpToolHandler;
|
|
64
|
-
LayoutMcpToolHandler.NAME = 'layout';
|
|
65
70
|
__decorate([
|
|
66
71
|
(0, inversify_1.inject)(server_1.LayoutEngine),
|
|
67
72
|
(0, inversify_1.optional)(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"layout-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/layout-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAAqE;AACrE,yCAAyD;AACzD,4BAA4B;AAE5B,sEAAiG;AACjG,oEAA+E;AAElE,QAAA,iBAAiB,GAAG,+CAA2B,CAAC;AAGhD,QAAA,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IACpG,kBAAkB,EAAlB,sCAAkB;CACrB,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"layout-mcp-tool-handler.js","sourceRoot":"","sources":["../../../../src/common/tools/handlers/layout-mcp-tool-handler.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;kFAckF;;;;;;;;;;;;;AAElF,iDAAqE;AACrE,yCAAyD;AACzD,4BAA4B;AAE5B,sEAAiG;AACjG,oEAA+E;AAElE,QAAA,iBAAiB,GAAG,+CAA2B,CAAC;AAGhD,QAAA,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,CAAC,qEAAqE,CAAC;IACpG,kBAAkB,EAAlB,sCAAkB;CACrB,CAAC,CAAC;AAGH,yHAAyH;AAElH,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,iDAAyD;IAA5F;;QAEM,SAAI,GAAG,sBAAoB,CAAC,IAAI,CAAC;QACxB,UAAK,GAAG,qBAAqB,CAAC;QACvC,gBAAW,GAChB,oGAAoG;YACpG,iEAAiE;YACjE,sGAAsG;YACtG,+FAA+F;YAC/F,wEAAwE;YACxE,8EAA8E,CAAC;QAC1E,gBAAW,GAAG,yBAAiB,CAAC;QACvB,iBAAY,GAAG,0BAAkB,CAAC;IAkBxD,CAAC;;aA7BmB,SAAI,GAAG,QAAQ,AAAX,CAAY;IAehC,0FAA0F;IACjF,wBAAwB;QAC7B,OAAO,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC;IAC3C,CAAC;IAED,wGAAwG;IAC/F,WAAW;QAChB,OAAO,IAAI,CAAC,YAAY,KAAK,SAAS,CAAC;IAC3C,CAAC;IAES,KAAK,CAAC,YAAY,CAAC,OAAoB;QAC7C,MAAM,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,wBAAe,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,CAAC,EAAE,CAAC,CAAC;IAC9F,CAAC;;AA7BQ,oDAAoB;AAce;IAA3C,IAAA,kBAAM,EAAC,qBAAY,CAAC;IAAE,IAAA,oBAAQ,GAAE;;0DAAuC;+BAd/D,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CA8BhC"}
|
|
@@ -48,7 +48,8 @@ export declare const ModifyEdgesOutputSchema: z.ZodObject<{
|
|
|
48
48
|
dispatchedCommands: z.ZodNumber;
|
|
49
49
|
errors: z.ZodArray<z.ZodString>;
|
|
50
50
|
}, z.core.$strip>;
|
|
51
|
-
export
|
|
51
|
+
export type ModifyEdgesOutput = z.infer<typeof ModifyEdgesOutputSchema>;
|
|
52
|
+
export declare class ModifyEdgesMcpToolHandler extends OperationMcpDiagramToolHandler<ModifyEdgesInput, ModifyEdgesOutput> {
|
|
52
53
|
static readonly NAME = "modify-edges";
|
|
53
54
|
readonly name = "modify-edges";
|
|
54
55
|
readonly title = "Modify Diagram Edges";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"modify-edges-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/modify-edges-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAgB,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAQ9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAG/E,sIAAsI;AACtI,eAAO,MAAM,oBAAoB;;;;;;;;kBAW/B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAKjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;iBAIlC,CAAC;
|
|
1
|
+
{"version":3,"file":"modify-edges-mcp-tool-handler.d.ts","sourceRoot":"","sources":["../../../../src/common/tools/handlers/modify-edges-mcp-tool-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;kFAckF;AAIlF,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EAAgB,aAAa,EAAE,MAAM,iCAAiC,CAAC;AAQ9E,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAG/E,sIAAsI;AACtI,eAAO,MAAM,oBAAoB;;;;;;;;kBAW/B,CAAC;AAEH,eAAO,MAAM,sBAAsB;;;;;;;;;;;iBAKjC,CAAC;AACH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,eAAO,MAAM,uBAAuB;;;;;;;;iBAIlC,CAAC;AACH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,qBACa,yBAA0B,SAAQ,8BAA8B,CAAC,gBAAgB,EAAE,iBAAiB,CAAC;IAC9G,MAAM,CAAC,QAAQ,CAAC,IAAI,kBAAkB;IACtC,QAAQ,CAAC,IAAI,kBAAkC;IAC/C,SAAkB,KAAK,0BAA0B;IACjD,QAAQ,CAAC,WAAW,SAM8C;IAClE,QAAQ,CAAC,WAAW;;;;;;;;;;;sBAA0B;IAC9C,SAAkB,YAAY;;;;;;;;sBAA2B;cAEzC,YAAY,CAAC,EAAE,KAAK,EAAE,EAAE,gBAAgB,GAAG,OAAO,CAAC,aAAa,CAAC;CA+EpF"}
|
|
@@ -52,7 +52,7 @@ exports.ModifyEdgesOutputSchema = z.object({
|
|
|
52
52
|
dispatchedCommands: mcp_input_schemas_1.dispatchedCommands,
|
|
53
53
|
errors: z.array(z.string()).describe('Per-input failure messages; absent or empty when every input succeeded.')
|
|
54
54
|
});
|
|
55
|
-
let ModifyEdgesMcpToolHandler =
|
|
55
|
+
let ModifyEdgesMcpToolHandler = class ModifyEdgesMcpToolHandler extends mcp_tool_handler_1.OperationMcpDiagramToolHandler {
|
|
56
56
|
constructor() {
|
|
57
57
|
super(...arguments);
|
|
58
58
|
this.name = ModifyEdgesMcpToolHandler_1.NAME;
|
|
@@ -66,6 +66,8 @@ let ModifyEdgesMcpToolHandler = ModifyEdgesMcpToolHandler_1 = class ModifyEdgesM
|
|
|
66
66
|
this.inputSchema = exports.ModifyEdgesInputSchema;
|
|
67
67
|
this.outputSchema = exports.ModifyEdgesOutputSchema;
|
|
68
68
|
}
|
|
69
|
+
static { ModifyEdgesMcpToolHandler_1 = this; }
|
|
70
|
+
static { this.NAME = 'modify-edges'; }
|
|
69
71
|
async createResult({ edges }) {
|
|
70
72
|
const elements = this.lookupElements(edges, change => change.elementId);
|
|
71
73
|
// Type-validate so non-edge ids surface a clear error instead of "model element not found"
|
|
@@ -81,7 +83,6 @@ let ModifyEdgesMcpToolHandler = ModifyEdgesMcpToolHandler_1 = class ModifyEdgesM
|
|
|
81
83
|
// instead of rejecting the whole call and losing the other outcomes.
|
|
82
84
|
const dispatched = [];
|
|
83
85
|
const errors = [];
|
|
84
|
-
const modifiedRealIds = new Set();
|
|
85
86
|
elements.forEach(([change]) => {
|
|
86
87
|
const { routingPoints } = change;
|
|
87
88
|
const realId = this.aliasService.lookup(change.elementId);
|
|
@@ -104,34 +105,37 @@ let ModifyEdgesMcpToolHandler = ModifyEdgesMcpToolHandler_1 = class ModifyEdgesM
|
|
|
104
105
|
}
|
|
105
106
|
const operation = server_1.ReconnectEdgeOperation.create({ edgeElementId: realId, sourceElementId, targetElementId });
|
|
106
107
|
dispatched.push({ promise: this.actionDispatcher.dispatch(operation), realId, inputId: change.elementId });
|
|
107
|
-
modifiedRealIds.add(realId);
|
|
108
108
|
// Routing-point changes are skipped during a reconnect — the edge's path is recomputed from scratch.
|
|
109
109
|
return;
|
|
110
110
|
}
|
|
111
111
|
if (routingPoints) {
|
|
112
112
|
const operation = server_1.ChangeRoutingPointsOperation.create([{ elementId: realId, newRoutingPoints: routingPoints }]);
|
|
113
113
|
dispatched.push({ promise: this.actionDispatcher.dispatch(operation), realId, inputId: change.elementId });
|
|
114
|
-
|
|
114
|
+
return;
|
|
115
115
|
}
|
|
116
|
+
errors.push(`No change requested for edge '${change.elementId}' — provide \`sourceElementId\` + \`targetElementId\` ` +
|
|
117
|
+
'to reconnect, or `routingPoints` to reroute.');
|
|
116
118
|
});
|
|
119
|
+
// Two entries may target the same edge; one failing must not drop the other's success.
|
|
117
120
|
const results = await Promise.allSettled(dispatched.map(entry => entry.promise));
|
|
121
|
+
const modifiedRealIds = new Set();
|
|
118
122
|
results.forEach((result, i) => {
|
|
123
|
+
const { realId, inputId } = dispatched[i];
|
|
119
124
|
if (result.status === 'rejected') {
|
|
120
|
-
const { realId, inputId } = dispatched[i];
|
|
121
125
|
const reason = result.reason instanceof Error ? result.reason.message : String(result.reason);
|
|
122
126
|
errors.push(`Failed to modify edge '${inputId}': ${reason}`);
|
|
123
|
-
|
|
124
|
-
|
|
127
|
+
}
|
|
128
|
+
else {
|
|
129
|
+
modifiedRealIds.add(realId);
|
|
125
130
|
}
|
|
126
131
|
});
|
|
127
132
|
const modifiedEdges = [...modifiedRealIds]
|
|
128
133
|
.map(realId => this.describeElement(realId))
|
|
129
134
|
.filter((entry) => entry !== undefined);
|
|
130
|
-
return this.success(`Successfully modified ${
|
|
135
|
+
return this.success(`Successfully modified ${modifiedEdges.length} edge(s) (in ${dispatched.length} commands)${(0, mcp_util_1.formatNoticeList)('errors', errors)}`, { modifiedEdges, dispatchedCommands: dispatched.length, errors });
|
|
131
136
|
}
|
|
132
137
|
};
|
|
133
138
|
exports.ModifyEdgesMcpToolHandler = ModifyEdgesMcpToolHandler;
|
|
134
|
-
ModifyEdgesMcpToolHandler.NAME = 'modify-edges';
|
|
135
139
|
exports.ModifyEdgesMcpToolHandler = ModifyEdgesMcpToolHandler = ModifyEdgesMcpToolHandler_1 = __decorate([
|
|
136
140
|
(0, inversify_1.injectable)()
|
|
137
141
|
], ModifyEdgesMcpToolHandler);
|