harness-mcp-v2 3.2.34 → 3.2.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (136) hide show
  1. package/README.md +54 -14
  2. package/build/client/harness-client.d.ts.map +1 -1
  3. package/build/client/harness-client.js +69 -11
  4. package/build/client/harness-client.js.map +1 -1
  5. package/build/config.d.ts +120 -41
  6. package/build/config.d.ts.map +1 -1
  7. package/build/config.js +132 -15
  8. package/build/config.js.map +1 -1
  9. package/build/data/schemas/v0/pipeline.d.ts.map +1 -1
  10. package/build/data/schemas/v0/pipeline.js +14861 -14726
  11. package/build/data/schemas/v0/pipeline.js.map +1 -1
  12. package/build/data/schemas/v0/template.d.ts.map +1 -1
  13. package/build/data/schemas/v0/template.js +6977 -6851
  14. package/build/data/schemas/v0/template.js.map +1 -1
  15. package/build/data/schemas/v1/pipeline.d.ts.map +1 -1
  16. package/build/data/schemas/v1/pipeline.js +261 -62
  17. package/build/data/schemas/v1/pipeline.js.map +1 -1
  18. package/build/data/schemas/v1/template.d.ts.map +1 -1
  19. package/build/data/schemas/v1/template.js +261 -62
  20. package/build/data/schemas/v1/template.js.map +1 -1
  21. package/build/index.js +25 -7
  22. package/build/index.js.map +1 -1
  23. package/build/prompts/access-control-audit.js +1 -1
  24. package/build/prompts/run-evaluation.d.ts.map +1 -1
  25. package/build/prompts/run-evaluation.js +2 -1
  26. package/build/prompts/run-evaluation.js.map +1 -1
  27. package/build/registry/extractors.d.ts +47 -0
  28. package/build/registry/extractors.d.ts.map +1 -1
  29. package/build/registry/extractors.js +118 -0
  30. package/build/registry/extractors.js.map +1 -1
  31. package/build/registry/index.d.ts +23 -3
  32. package/build/registry/index.d.ts.map +1 -1
  33. package/build/registry/index.js +119 -6
  34. package/build/registry/index.js.map +1 -1
  35. package/build/registry/toolsets/access-control.d.ts.map +1 -1
  36. package/build/registry/toolsets/access-control.js +42 -8
  37. package/build/registry/toolsets/access-control.js.map +1 -1
  38. package/build/registry/toolsets/ai-evals.d.ts.map +1 -1
  39. package/build/registry/toolsets/ai-evals.js +348 -100
  40. package/build/registry/toolsets/ai-evals.js.map +1 -1
  41. package/build/registry/toolsets/ccm-cost-category.d.ts +16 -0
  42. package/build/registry/toolsets/ccm-cost-category.d.ts.map +1 -0
  43. package/build/registry/toolsets/ccm-cost-category.js +46 -0
  44. package/build/registry/toolsets/ccm-cost-category.js.map +1 -0
  45. package/build/registry/toolsets/ccm.d.ts.map +1 -1
  46. package/build/registry/toolsets/ccm.js +15 -14
  47. package/build/registry/toolsets/ccm.js.map +1 -1
  48. package/build/registry/toolsets/chaos-descriptions.d.ts +48 -15
  49. package/build/registry/toolsets/chaos-descriptions.d.ts.map +1 -1
  50. package/build/registry/toolsets/chaos-descriptions.js +60 -20
  51. package/build/registry/toolsets/chaos-descriptions.js.map +1 -1
  52. package/build/registry/toolsets/chaos.d.ts.map +1 -1
  53. package/build/registry/toolsets/chaos.js +409 -41
  54. package/build/registry/toolsets/chaos.js.map +1 -1
  55. package/build/registry/toolsets/connectors.js +3 -3
  56. package/build/registry/toolsets/connectors.js.map +1 -1
  57. package/build/registry/toolsets/registries-v3.d.ts.map +1 -1
  58. package/build/registry/toolsets/registries-v3.js +80 -2
  59. package/build/registry/toolsets/registries-v3.js.map +1 -1
  60. package/build/tools/field-copy.d.ts +51 -0
  61. package/build/tools/field-copy.d.ts.map +1 -0
  62. package/build/tools/field-copy.js +46 -0
  63. package/build/tools/field-copy.js.map +1 -0
  64. package/build/tools/harness-create.d.ts.map +1 -1
  65. package/build/tools/harness-create.js +13 -10
  66. package/build/tools/harness-create.js.map +1 -1
  67. package/build/tools/harness-delete.d.ts.map +1 -1
  68. package/build/tools/harness-delete.js +12 -9
  69. package/build/tools/harness-delete.js.map +1 -1
  70. package/build/tools/harness-describe.d.ts.map +1 -1
  71. package/build/tools/harness-describe.js +14 -6
  72. package/build/tools/harness-describe.js.map +1 -1
  73. package/build/tools/harness-diagnose.d.ts.map +1 -1
  74. package/build/tools/harness-diagnose.js +9 -6
  75. package/build/tools/harness-diagnose.js.map +1 -1
  76. package/build/tools/harness-execute.d.ts.map +1 -1
  77. package/build/tools/harness-execute.js +19 -14
  78. package/build/tools/harness-execute.js.map +1 -1
  79. package/build/tools/harness-get.d.ts.map +1 -1
  80. package/build/tools/harness-get.js +10 -8
  81. package/build/tools/harness-get.js.map +1 -1
  82. package/build/tools/harness-list.d.ts.map +1 -1
  83. package/build/tools/harness-list.js +10 -8
  84. package/build/tools/harness-list.js.map +1 -1
  85. package/build/tools/harness-schema.d.ts.map +1 -1
  86. package/build/tools/harness-schema.js +5 -3
  87. package/build/tools/harness-schema.js.map +1 -1
  88. package/build/tools/harness-search.d.ts.map +1 -1
  89. package/build/tools/harness-search.js +10 -8
  90. package/build/tools/harness-search.js.map +1 -1
  91. package/build/tools/harness-status.js +4 -4
  92. package/build/tools/harness-status.js.map +1 -1
  93. package/build/tools/harness-update.d.ts.map +1 -1
  94. package/build/tools/harness-update.js +12 -9
  95. package/build/tools/harness-update.js.map +1 -1
  96. package/build/tools/input-schemas.d.ts +16 -5
  97. package/build/tools/input-schemas.d.ts.map +1 -1
  98. package/build/tools/input-schemas.js +32 -11
  99. package/build/tools/input-schemas.js.map +1 -1
  100. package/build/tools/output-schemas.d.ts +8 -0
  101. package/build/tools/output-schemas.d.ts.map +1 -1
  102. package/build/tools/output-schemas.js +10 -0
  103. package/build/tools/output-schemas.js.map +1 -1
  104. package/build/utils/canonical-resource-type.d.ts +7 -0
  105. package/build/utils/canonical-resource-type.d.ts.map +1 -0
  106. package/build/utils/canonical-resource-type.js +16 -0
  107. package/build/utils/canonical-resource-type.js.map +1 -0
  108. package/build/utils/http-auth.d.ts +2 -1
  109. package/build/utils/http-auth.d.ts.map +1 -1
  110. package/build/utils/http-auth.js +10 -2
  111. package/build/utils/http-auth.js.map +1 -1
  112. package/build/utils/oauth-auth.d.ts +1 -0
  113. package/build/utils/oauth-auth.d.ts.map +1 -1
  114. package/build/utils/oauth-auth.js +5 -0
  115. package/build/utils/oauth-auth.js.map +1 -1
  116. package/build/utils/oauth-broker.d.ts +25 -0
  117. package/build/utils/oauth-broker.d.ts.map +1 -0
  118. package/build/utils/oauth-broker.js +606 -0
  119. package/build/utils/oauth-broker.js.map +1 -0
  120. package/build/utils/oauth-proxy-redis-vault.d.ts +51 -0
  121. package/build/utils/oauth-proxy-redis-vault.d.ts.map +1 -0
  122. package/build/utils/oauth-proxy-redis-vault.js +242 -0
  123. package/build/utils/oauth-proxy-redis-vault.js.map +1 -0
  124. package/build/utils/oauth-proxy-vault.d.ts +108 -0
  125. package/build/utils/oauth-proxy-vault.d.ts.map +1 -0
  126. package/build/utils/oauth-proxy-vault.js +183 -0
  127. package/build/utils/oauth-proxy-vault.js.map +1 -0
  128. package/build/utils/oauth-proxy.d.ts +53 -0
  129. package/build/utils/oauth-proxy.d.ts.map +1 -0
  130. package/build/utils/oauth-proxy.js +493 -0
  131. package/build/utils/oauth-proxy.js.map +1 -0
  132. package/build/utils/url-parser.d.ts.map +1 -1
  133. package/build/utils/url-parser.js +1 -0
  134. package/build/utils/url-parser.js.map +1 -1
  135. package/npm-shrinkwrap.json +162 -59
  136. package/package.json +12 -10
@@ -1,22 +1,23 @@
1
1
  {
2
2
  "name": "harness-mcp-v2",
3
- "version": "3.2.34",
3
+ "version": "3.2.36",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "harness-mcp-v2",
9
- "version": "3.2.34",
9
+ "version": "3.2.36",
10
10
  "dependencies": {
11
11
  "@hono/node-server": "^2.0.10",
12
12
  "@modelcontextprotocol/sdk": "^1.31.0",
13
13
  "adm-zip": "^0.6.1",
14
14
  "dotenv": "^17.3.1",
15
15
  "express": "^5.2.1",
16
- "hono": "^4.13.5",
16
+ "hono": "^4.13.11",
17
17
  "jsonwebtoken": "^9.0.3",
18
+ "redis": "^6.3.0",
18
19
  "yaml": "^2.8.3",
19
- "zod": "^4.0.0"
20
+ "zod": "^4.6.6"
20
21
  },
21
22
  "optionalDependencies": {
22
23
  "@huggingface/transformers": "^4.3.0"
@@ -33,15 +34,15 @@
33
34
  }
34
35
  },
35
36
  "node_modules/@hono/node-server": {
36
- "version": "2.1.3",
37
- "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.3.tgz",
38
- "integrity": "sha512-TA//nWMqPhbfdfneACk6t5a9eqbS9lABEPyKn0/xZTah3H3U2XaVg85rJFl0/Fyit0I552YDHgXGVSf3GwqbUw==",
37
+ "version": "2.1.5",
38
+ "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-2.1.5.tgz",
39
+ "integrity": "sha512-MgP/I06GdvsilDspMk/qmRzpk8LOUStP6jFAbSRi40W09DhoyUn+Mj7eyKICPqeYKybOjVFLVIAQzvu1bfIa7Q==",
39
40
  "license": "MIT",
40
41
  "engines": {
41
42
  "node": ">=20"
42
43
  },
43
44
  "peerDependencies": {
44
- "hono": "^4"
45
+ "hono": "^4 || ^5.0.0-0"
45
46
  }
46
47
  },
47
48
  "node_modules/@huggingface/jinja": {
@@ -577,9 +578,9 @@
577
578
  }
578
579
  },
579
580
  "node_modules/@modelcontextprotocol/sdk": {
580
- "version": "1.32.1",
581
- "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.32.1.tgz",
582
- "integrity": "sha512-2DdE+SJDtzLEEWzY1ZjY7Q+VcPhcV1KisD3zI4u0XZyktsjHum1mwbMI+JaulUBi2OZk+KJAi2uPXzxichPkdw==",
581
+ "version": "1.32.2",
582
+ "resolved": "https://registry.npmjs.org/@modelcontextprotocol/sdk/-/sdk-1.32.2.tgz",
583
+ "integrity": "sha512-SWsVtH/0vULSQStoZ6xxH2K09Li8fXYTMC64ZeogCdpZ3XSi1eCPOByV1OpuJxuI3OcmHhosDWYyii07tpPsLw==",
583
584
  "license": "MIT",
584
585
  "dependencies": {
585
586
  "@hono/node-server": "^1.19.9 || ^2.0.5",
@@ -616,6 +617,75 @@
616
617
  }
617
618
  }
618
619
  },
620
+ "node_modules/@redis/bloom": {
621
+ "version": "6.3.0",
622
+ "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-6.3.0.tgz",
623
+ "integrity": "sha512-NQ5poYpZr0jv6zazN1cy6JY5kIipKFZ3R9GTL4kOUTX3a9YAfY29U8bsE4lWhVQEM+G4V0BXVC57mubIdDijeA==",
624
+ "license": "MIT",
625
+ "engines": {
626
+ "node": ">= 20.0.0"
627
+ },
628
+ "peerDependencies": {
629
+ "@redis/client": "^6.3.0"
630
+ }
631
+ },
632
+ "node_modules/@redis/client": {
633
+ "version": "6.3.0",
634
+ "resolved": "https://registry.npmjs.org/@redis/client/-/client-6.3.0.tgz",
635
+ "integrity": "sha512-fHrjwGCBvAANGi+TuRuwKi83sIOzgHr8eh+Uf48w3fSX7Hhrz174NrWqfJhAC2vnN0d/tfaZpdr6+o6JC3QHwg==",
636
+ "license": "MIT",
637
+ "engines": {
638
+ "node": ">= 20.0.0"
639
+ },
640
+ "peerDependencies": {
641
+ "@node-rs/xxhash": "^1.1.0",
642
+ "@opentelemetry/api": ">=1 <2"
643
+ },
644
+ "peerDependenciesMeta": {
645
+ "@node-rs/xxhash": {
646
+ "optional": true
647
+ },
648
+ "@opentelemetry/api": {
649
+ "optional": true
650
+ }
651
+ }
652
+ },
653
+ "node_modules/@redis/json": {
654
+ "version": "6.3.0",
655
+ "resolved": "https://registry.npmjs.org/@redis/json/-/json-6.3.0.tgz",
656
+ "integrity": "sha512-yt6vRfPBXtW/3qm53cF81TSQpLMjWdW4/2E9WQ2GgbvsKkuCKCFQIcMiKlil1ZMnezK+IQuS795xKU5psbaegw==",
657
+ "license": "MIT",
658
+ "engines": {
659
+ "node": ">= 20.0.0"
660
+ },
661
+ "peerDependencies": {
662
+ "@redis/client": "^6.3.0"
663
+ }
664
+ },
665
+ "node_modules/@redis/search": {
666
+ "version": "6.3.0",
667
+ "resolved": "https://registry.npmjs.org/@redis/search/-/search-6.3.0.tgz",
668
+ "integrity": "sha512-RPXAZmKjZZG7Tm7m1w9keFdXzbL91PiSHQBfQRe9xwW40jNsTRbG0FwhIz4QlHPU4gKDAsCy8IQHj4yZl4H9rw==",
669
+ "license": "MIT",
670
+ "engines": {
671
+ "node": ">= 20.0.0"
672
+ },
673
+ "peerDependencies": {
674
+ "@redis/client": "^6.3.0"
675
+ }
676
+ },
677
+ "node_modules/@redis/time-series": {
678
+ "version": "6.3.0",
679
+ "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-6.3.0.tgz",
680
+ "integrity": "sha512-+fJOB8mN1z5WRakCJNh5lVdz1KqvHGSOistsKeitD24QsCtPwyRQXWC0iq6T/i/ubLE/YcguZqPm8F598MKk4A==",
681
+ "license": "MIT",
682
+ "engines": {
683
+ "node": ">= 20.0.0"
684
+ },
685
+ "peerDependencies": {
686
+ "@redis/client": "^6.3.0"
687
+ }
688
+ },
619
689
  "node_modules/accepts": {
620
690
  "version": "2.0.0",
621
691
  "resolved": "https://registry.npmjs.org/accepts/-/accepts-2.0.0.tgz",
@@ -672,18 +742,18 @@
672
742
  }
673
743
  },
674
744
  "node_modules/body-parser": {
675
- "version": "2.3.0",
676
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.3.0.tgz",
677
- "integrity": "sha512-2cGmJupaNgg+QUwVLAucDuWuoMZ6EX9iHDRswZ5lsNYEmwPaRknMPCLZz07yTzVq/83p4o/wzbDZbBrTvGGTIw==",
745
+ "version": "2.4.0",
746
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-2.4.0.tgz",
747
+ "integrity": "sha512-Ifk1KcLrxaGt1occQagQNFNNOqRt1LFuehEnHHzB8Z6cRgIxRU1TBaiIsUiCdA+gy5PL7Y1IX31DNKkRmxtXjQ==",
678
748
  "license": "MIT",
679
749
  "dependencies": {
680
750
  "bytes": "^3.1.2",
681
- "content-type": "^2.0.0",
751
+ "content-type": "^2.1.0",
682
752
  "debug": "^4.4.3",
683
753
  "http-errors": "^2.0.1",
684
- "iconv-lite": "^0.7.2",
754
+ "iconv-lite": "^0.7.3",
685
755
  "on-finished": "^2.4.1",
686
- "qs": "^6.15.2",
756
+ "qs": "^6.16.1",
687
757
  "raw-body": "^3.0.2",
688
758
  "type-is": "^2.1.0"
689
759
  },
@@ -753,9 +823,9 @@
753
823
  }
754
824
  },
755
825
  "node_modules/content-disposition": {
756
- "version": "1.1.0",
757
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-1.1.0.tgz",
758
- "integrity": "sha512-5jRCH9Z/+DRP7rkvY83B+yGIGX96OYdJmzngqnw2SBSxqCFPd0w2km3s5iawpGX8krnwSGmF0FW5Nhr0Hfai3g==",
826
+ "version": "2.0.1",
827
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-2.0.1.tgz",
828
+ "integrity": "sha512-e+H0ZXHSWYrENhQzw1LPuP4oF5MzVKmDU6d3hxlvaPEYLLg62MxtQNPRx4SYSuYJSBUgnQIG4HIN2tEtNv7Dog==",
759
829
  "license": "MIT",
760
830
  "engines": {
761
831
  "node": ">=18"
@@ -1025,15 +1095,15 @@
1025
1095
  }
1026
1096
  },
1027
1097
  "node_modules/express": {
1028
- "version": "5.2.1",
1029
- "resolved": "https://registry.npmjs.org/express/-/express-5.2.1.tgz",
1030
- "integrity": "sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw==",
1098
+ "version": "5.3.0",
1099
+ "resolved": "https://registry.npmjs.org/express/-/express-5.3.0.tgz",
1100
+ "integrity": "sha512-qCqy1xSoaugxOD4IVHb1ZWdkvCF2W3aE2okKouWj8VwJ+ztskSiXoBnCSJqfKT+cVPJhuJqe9YLbY425+Zh00g==",
1031
1101
  "license": "MIT",
1032
1102
  "dependencies": {
1033
1103
  "accepts": "^2.0.0",
1034
- "body-parser": "^2.2.1",
1035
- "content-disposition": "^1.0.0",
1036
- "content-type": "^1.0.5",
1104
+ "body-parser": "^2.3.0",
1105
+ "content-disposition": "^2.0.1",
1106
+ "content-type": "^2.0.0",
1037
1107
  "cookie": "^0.7.1",
1038
1108
  "cookie-signature": "^1.2.1",
1039
1109
  "debug": "^4.4.0",
@@ -1049,14 +1119,14 @@
1049
1119
  "on-finished": "^2.4.1",
1050
1120
  "once": "^1.4.0",
1051
1121
  "parseurl": "^1.3.3",
1052
- "proxy-addr": "^2.0.7",
1053
- "qs": "^6.14.0",
1122
+ "proxy-addr": "^2.0.8",
1123
+ "qs": "^6.16.0",
1054
1124
  "range-parser": "^1.2.1",
1055
1125
  "router": "^2.2.0",
1056
1126
  "send": "^1.1.0",
1057
1127
  "serve-static": "^2.2.0",
1058
1128
  "statuses": "^2.0.1",
1059
- "type-is": "^2.0.1",
1129
+ "type-is": "^2.1.0",
1060
1130
  "vary": "^1.1.2"
1061
1131
  },
1062
1132
  "engines": {
@@ -1086,6 +1156,19 @@
1086
1156
  "express": ">= 4.11"
1087
1157
  }
1088
1158
  },
1159
+ "node_modules/express/node_modules/content-type": {
1160
+ "version": "2.1.0",
1161
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-2.1.0.tgz",
1162
+ "integrity": "sha512-mj7UPXE0jaqaOsukNZRUEfEi2AcL7C/vwmwcHV0O97eO1E1pxBZuyjlZrx5seTaNBg1U6+o35wpa35Qfcc+7ag==",
1163
+ "license": "MIT",
1164
+ "engines": {
1165
+ "node": ">=18"
1166
+ },
1167
+ "funding": {
1168
+ "type": "opencollective",
1169
+ "url": "https://opencollective.com/express"
1170
+ }
1171
+ },
1089
1172
  "node_modules/fast-deep-equal": {
1090
1173
  "version": "3.1.3",
1091
1174
  "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
@@ -1093,9 +1176,9 @@
1093
1176
  "license": "MIT"
1094
1177
  },
1095
1178
  "node_modules/fast-uri": {
1096
- "version": "4.2.1",
1097
- "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-4.2.1.tgz",
1098
- "integrity": "sha512-TmHQgewjHtMq1E5QKA0tOE0yeYGQs25KZC/ziJpubRtWI15W92e6vPFydWOeZBVROSHBYw/QhD9d5OefdD6LDg==",
1179
+ "version": "4.2.3",
1180
+ "resolved": "https://registry.npmjs.org/fast-uri/-/fast-uri-4.2.3.tgz",
1181
+ "integrity": "sha512-I1PXwP5eAhlNlcdpjt9CgB59op2ZvZfxw+BkqGFVIUOgNpCVTcTqp3HhTX7brxj5vsip+nSY4nTvff+eIA76hg==",
1099
1182
  "funding": [
1100
1183
  {
1101
1184
  "type": "github",
@@ -1201,9 +1284,9 @@
1201
1284
  }
1202
1285
  },
1203
1286
  "node_modules/global-agent": {
1204
- "version": "4.1.3",
1205
- "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-4.1.3.tgz",
1206
- "integrity": "sha512-KUJEViiuFT3I97t+GYMikLPJS2Lfo/S2F+DQuBWzuzaMPnvt5yyZePzArx36fBzpGTxZjIpDbXLeySLgh+k76g==",
1287
+ "version": "4.1.6",
1288
+ "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-4.1.6.tgz",
1289
+ "integrity": "sha512-V9u791atI/bS7RryfRTK2oixDWo6/RCrIikjwuQ4kADPRZZml1C6LUJXc7y6qRhaAF8geo3bIvE/siAGJCw38A==",
1207
1290
  "license": "BSD-3-Clause",
1208
1291
  "optional": true,
1209
1292
  "dependencies": {
@@ -1290,9 +1373,9 @@
1290
1373
  }
1291
1374
  },
1292
1375
  "node_modules/hono": {
1293
- "version": "4.13.13",
1294
- "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.13.tgz",
1295
- "integrity": "sha512-CQ46U0ZkAGmbT/4UxdzzGJpacP2IeKgY4a5/tOI9AABbpOMfK739wfDXmv1usCk+3RkKj1hQy4/fjhiwa2xlrA==",
1376
+ "version": "4.13.14",
1377
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.13.14.tgz",
1378
+ "integrity": "sha512-yhRLQ21U6qa9Hsu2N7Qcbh8tE+WKEcoErjIo56LeSGiGXGp9sA7UpE86Ui9uexb61KakiGwuHMn2QdV7w6i6kQ==",
1296
1379
  "license": "MIT",
1297
1380
  "engines": {
1298
1381
  "node": ">=16.9.0"
@@ -1341,9 +1424,9 @@
1341
1424
  "license": "ISC"
1342
1425
  },
1343
1426
  "node_modules/ip-address": {
1344
- "version": "10.7.3",
1345
- "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.3.tgz",
1346
- "integrity": "sha512-A1kdq/tSb5QjvKvAMgIoEvDBIgL7qaqVP/jkvSwYYRZ9iEzvPpopxp2wQfu3SuZRHtpHNxMn8Fs0bS+gf5Xmwg==",
1427
+ "version": "10.7.5",
1428
+ "resolved": "https://registry.npmjs.org/ip-address/-/ip-address-10.7.5.tgz",
1429
+ "integrity": "sha512-t2v0rkILYv9WXmSL7TpAaU3HXgaFYOPUcH3QHgwQ++gpJuH3bqyMy4Fvt/DJCTKwzH3Cf+bAp5W/mFL39KPLzA==",
1347
1430
  "license": "MIT",
1348
1431
  "engines": {
1349
1432
  "node": ">= 12"
@@ -1371,9 +1454,9 @@
1371
1454
  "license": "ISC"
1372
1455
  },
1373
1456
  "node_modules/jose": {
1374
- "version": "6.2.12",
1375
- "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.12.tgz",
1376
- "integrity": "sha512-9NiFmJEex0sy2Dk58j2UGBSHgUs2ypF9eZSu4L6vjOX3Dp96Sw1F3uL+H+D1sx02jZZdzUT0HgvCy59CuvXcWw==",
1457
+ "version": "6.2.13",
1458
+ "resolved": "https://registry.npmjs.org/jose/-/jose-6.2.13.tgz",
1459
+ "integrity": "sha512-7TIg10ZE1x82YediN+lcrPNvGMKge9yFHQD+Qho/b8y2adfugU3AsvvHfxV0fzyFllT6l9xCjf4RWY9g/Z9PJQ==",
1377
1460
  "license": "MIT",
1378
1461
  "funding": {
1379
1462
  "url": "https://github.com/sponsors/panva"
@@ -1625,15 +1708,19 @@
1625
1708
  }
1626
1709
  },
1627
1710
  "node_modules/on-finished": {
1628
- "version": "2.4.1",
1629
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
1630
- "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
1711
+ "version": "2.4.2",
1712
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.2.tgz",
1713
+ "integrity": "sha512-ATWUv387i+nLD49EiDoOft5scf32Vsdz3ktrQJG9bi7jRFmaXTssvyvj1EmeKVVgvesbqUtvQQvaS2TpTukAZQ==",
1631
1714
  "license": "MIT",
1632
1715
  "dependencies": {
1633
1716
  "ee-first": "1.1.1"
1634
1717
  },
1635
1718
  "engines": {
1636
1719
  "node": ">= 0.8"
1720
+ },
1721
+ "funding": {
1722
+ "type": "opencollective",
1723
+ "url": "https://opencollective.com/express"
1637
1724
  }
1638
1725
  },
1639
1726
  "node_modules/once": {
@@ -1711,9 +1798,9 @@
1711
1798
  }
1712
1799
  },
1713
1800
  "node_modules/path-to-regexp": {
1714
- "version": "8.4.2",
1715
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-8.4.2.tgz",
1716
- "integrity": "sha512-qRcuIdP69NPm4qbACK+aDogI5CBDMi1jKe0ry5rSQJz8JVLsC7jV8XpiJjGRLLol3N+R5ihGYcrPLTno6pAdBA==",
1801
+ "version": "9.0.0",
1802
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-9.0.0.tgz",
1803
+ "integrity": "sha512-kfo5HIFCfEH24bcHSWEFIfrwiCsm/DXR+j1fc0696VIdWkICdAcKH2LxRClvz5HQcG4iCQpb4qBZ7pttGPG/dA==",
1717
1804
  "license": "MIT",
1718
1805
  "funding": {
1719
1806
  "type": "opencollective",
@@ -1737,9 +1824,9 @@
1737
1824
  "optional": true
1738
1825
  },
1739
1826
  "node_modules/protobufjs": {
1740
- "version": "8.8.0",
1741
- "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-8.8.0.tgz",
1742
- "integrity": "sha512-N3xhQ5yyBx3vQq4gubBfASzYhJGNzeDbjqBpu61g7UVylsN/qyffU96TKWD3GbbLOKF82VGNRNvv1+BFgE31Eg==",
1827
+ "version": "8.8.1",
1828
+ "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-8.8.1.tgz",
1829
+ "integrity": "sha512-d9e9179bjXSJdpJ3+R9fP8hzXsnKLyxTjHLG1dUzje8a27pPyXCe6PrcRtgx2rjoM3IZzHd2vAs+6J/BsO1k7Q==",
1743
1830
  "license": "BSD-3-Clause",
1744
1831
  "optional": true,
1745
1832
  "dependencies": {
@@ -1767,9 +1854,9 @@
1767
1854
  }
1768
1855
  },
1769
1856
  "node_modules/qs": {
1770
- "version": "6.16.0",
1771
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.16.0.tgz",
1772
- "integrity": "sha512-h6fhOIaRrID2CbEY2fqs+7t+UXZo+MLAnU5gRIq85uFtdiUPCdsApMlHhXogKVM4HM2DVbIjGNTTYH2OcmP1vA==",
1857
+ "version": "6.16.1",
1858
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.16.1.tgz",
1859
+ "integrity": "sha512-5Px6J7rfHBAGUhNQ3es4YzcOdBBw0SDcVtThJml4RdnKw4tKs2epA0kPZ+K8X+WiHktT93RHVcQ/3ym5aTCgtg==",
1773
1860
  "license": "BSD-3-Clause",
1774
1861
  "dependencies": {
1775
1862
  "es-define-property": "^1.0.1",
@@ -1810,6 +1897,22 @@
1810
1897
  "node": ">= 0.10"
1811
1898
  }
1812
1899
  },
1900
+ "node_modules/redis": {
1901
+ "version": "6.3.0",
1902
+ "resolved": "https://registry.npmjs.org/redis/-/redis-6.3.0.tgz",
1903
+ "integrity": "sha512-XFQbPie1lGpKeUZ8ySYY43yLnQy/iIQtHNvIr/1XdaABpb96rUSdm3Mfl+98FEVbv9ZJIzINMno5s0Nh8E5LEw==",
1904
+ "license": "MIT",
1905
+ "dependencies": {
1906
+ "@redis/bloom": "6.3.0",
1907
+ "@redis/client": "6.3.0",
1908
+ "@redis/json": "6.3.0",
1909
+ "@redis/search": "6.3.0",
1910
+ "@redis/time-series": "6.3.0"
1911
+ },
1912
+ "engines": {
1913
+ "node": ">= 20.0.0"
1914
+ }
1915
+ },
1813
1916
  "node_modules/require-from-string": {
1814
1917
  "version": "2.0.2",
1815
1918
  "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz",
@@ -2207,9 +2310,9 @@
2207
2310
  }
2208
2311
  },
2209
2312
  "node_modules/zod": {
2210
- "version": "4.6.5",
2211
- "resolved": "https://registry.npmjs.org/zod/-/zod-4.6.5.tgz",
2212
- "integrity": "sha512-v5l/aFXZQeai4awLbOpSoHecE9UiMrnfx75tEXLjNonXVARxQ5mOeipTjROUchszUNCqnE+hqAMujRsRHsut2Q==",
2313
+ "version": "4.6.7",
2314
+ "resolved": "https://registry.npmjs.org/zod/-/zod-4.6.7.tgz",
2315
+ "integrity": "sha512-g8W2D2kU6a8untc053fX1uVBKzM7yqAxW/3zwk83+6RyF2+SKOuV+c0wBDhUwzV1PaGapmZH+rmcUzPf+3CGwg==",
2213
2316
  "license": "MIT",
2214
2317
  "funding": {
2215
2318
  "url": "https://github.com/sponsors/colinhacks"
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "harness-mcp-v2",
3
- "version": "3.2.34",
3
+ "version": "3.2.36",
4
4
  "description": "Give AI agents full access to the Harness.io platform — manage pipelines, deployments, cloud costs, chaos engineering, feature flags, SEI, and 125+ resource types through 11 MCP tools",
5
5
  "type": "module",
6
6
  "main": "build/index.js",
@@ -61,10 +61,11 @@
61
61
  "adm-zip": "^0.6.1",
62
62
  "dotenv": "^17.3.1",
63
63
  "express": "^5.2.1",
64
- "hono": "^4.13.5",
64
+ "hono": "^4.13.11",
65
65
  "jsonwebtoken": "^9.0.3",
66
+ "redis": "^6.3.0",
66
67
  "yaml": "^2.8.3",
67
- "zod": "^4.0.0"
68
+ "zod": "^4.6.6"
68
69
  },
69
70
  "peerDependencies": {
70
71
  "@opentelemetry/api": "^1.9.0",
@@ -95,8 +96,8 @@
95
96
  "@types/jsonwebtoken": "^9.0.10",
96
97
  "@types/node": "^22.13.5",
97
98
  "typescript": "^5.7.3",
98
- "vite": "^7.3.5",
99
- "vitest": "^4.1.11"
99
+ "vite": "^7.3.7",
100
+ "vitest": "^4.1.12"
100
101
  },
101
102
  "overrides": {
102
103
  "onnxruntime-node": {
@@ -106,18 +107,19 @@
106
107
  "pnpm": {
107
108
  "overrides": {
108
109
  "picomatch": ">=4.0.4",
109
- "hono": ">=4.13.5",
110
+ "hono": ">=4.13.11",
110
111
  "path-to-regexp": ">=8.4.0",
111
112
  "@hono/node-server": ">=2.0.10",
112
113
  "express-rate-limit": ">=8.2.2",
113
- "ip-address": ">=10.5.1",
114
- "vite": "^7.3.5",
114
+ "ip-address": ">=10.7.4",
115
+ "vite": "^7.3.7",
115
116
  "nanoid": "^3.3.18",
116
117
  "esbuild": ">=0.28.1",
117
118
  "postcss": ">=8.5.18",
118
- "fast-uri": ">=4.1.5",
119
+ "fast-uri": ">=4.2.3",
119
120
  "source-map-js": ">=1.2.2",
120
- "body-parser": ">=2.3.0",
121
+ "body-parser": ">=2.4.0",
122
+ "zod": ">=4.6.6",
121
123
  "sharp": ">=0.35.5",
122
124
  "protobufjs": ">=8.6.0",
123
125
  "adm-zip": ">=0.6.1",