From ff39e19d4b895970e4c92ec5f5513c6e1fef13e3 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Tue, 21 Jul 2026 23:56:33 -0400 Subject: [PATCH] =?UTF-8?q?chore:=20=F0=9F=90=9D=20Update=20SDK=20-=20Gene?= =?UTF-8?q?rate=20[release]=200.2.4=20(#3477)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * ## Mcp-typescript SDK Changes: * `CompAi.Policies.PoliciesController_createPolicyVersion_v1()`: * `request.body` **Changed** (Breaking ⚠️) * `CompAi.Trust Portal.TrustPortalController_updateFaqs_v1()`: `request` **Added** (Breaking ⚠️) * `CompAi.Trust Portal.TrustPortalController_updateOverview_v1()`: `request` **Added** (Breaking ⚠️) * `CompAi.Trust Portal.TrustPortalController_createCustomLink_v1()`: `request` **Added** (Breaking ⚠️) * `CompAi.Trust Portal.TrustPortalController_reorderCustomLinks_v1()`: `request` **Added** (Breaking ⚠️) * `CompAi.ISMS.IsmsRegistersController_bulkCreateMeasurements_v1()`: **Added** * `CompAi.ISMS.IsmsRegistersController_createRow_v1()`: * `request.body` **Changed** * `CompAi.ISMS.IsmsRegistersController_updateRow_v1()`: * `request.body` **Changed** * empty commit to trigger [run-tests] workflow --------- Co-authored-by: speakeasybot Co-authored-by: speakeasy-github[bot] <128539517+speakeasy-github[bot]@users.noreply.github.com> Co-authored-by: Tofik Hasanov <72318342+tofikwest@users.noreply.github.com> --- apps/mcp-server/.speakeasy/gen.lock | 161 ++++--- apps/mcp-server/.speakeasy/gen.yaml | 2 +- apps/mcp-server/.speakeasy/out.openapi.yaml | 412 +++++++++++++++++- apps/mcp-server/.speakeasy/workflow.lock | 10 +- apps/mcp-server/README.md | 4 +- apps/mcp-server/RELEASES.md | 10 +- apps/mcp-server/manifest.json | 6 +- apps/mcp-server/package-lock.json | 4 +- apps/mcp-server/package.json | 2 +- ...stersControllerBulkCreateMeasurementsV1.ts | 158 +++++++ ...TrustPortalControllerCreateCustomLinkV1.ts | 22 + ...ustPortalControllerReorderCustomLinksV1.ts | 22 + ...PortalTrustPortalControllerUpdateFaqsV1.ts | 22 + ...alTrustPortalControllerUpdateOverviewV1.ts | 22 + apps/mcp-server/src/landing-page.ts | 2 +- apps/mcp-server/src/lib/config.ts | 6 +- apps/mcp-server/src/mcp-server/mcp-server.ts | 2 +- apps/mcp-server/src/mcp-server/server.ts | 4 +- ...stersControllerBulkCreateMeasurementsV1.ts | 45 ++ ...TrustPortalControllerCreateCustomLinkV1.ts | 11 +- ...ustPortalControllerReorderCustomLinksV1.ts | 11 +- ...PortalTrustPortalControllerUpdateFaqsV1.ts | 58 +-- ...alTrustPortalControllerUpdateOverviewV1.ts | 11 +- ...ontrolscontrollerunlinkdocumenttypev1op.ts | 2 +- .../src/models/createpolicyversiondto.ts | 21 + ...erscontrollerbulkcreatemeasurementsv1op.ts | 49 +++ .../ismsregisterscontrollercreaterowv1op.ts | 136 ++++++ .../ismsregisterscontrollerupdaterowv1op.ts | 136 ++++++ ...liciescontrollercreatepolicyversionv1op.ts | 10 +- .../trustaccesscontrollergetfaqsv1op.ts | 11 +- ...ustportalcontrollercreatecustomlinkv1op.ts | 22 + ...tportalcontrollerreordercustomlinksv1op.ts | 20 + .../trustportalcontrollerupdatefaqsv1op.ts | 27 ++ ...trustportalcontrollerupdateoverviewv1op.ts | 23 + apps/mcp-server/src/tool-names.ts | 4 + 35 files changed, 1334 insertions(+), 134 deletions(-) create mode 100644 apps/mcp-server/src/funcs/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts create mode 100644 apps/mcp-server/src/mcp-server/tools/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts create mode 100644 apps/mcp-server/src/models/createpolicyversiondto.ts create mode 100644 apps/mcp-server/src/models/ismsregisterscontrollerbulkcreatemeasurementsv1op.ts create mode 100644 apps/mcp-server/src/models/trustportalcontrollercreatecustomlinkv1op.ts create mode 100644 apps/mcp-server/src/models/trustportalcontrollerreordercustomlinksv1op.ts create mode 100644 apps/mcp-server/src/models/trustportalcontrollerupdatefaqsv1op.ts create mode 100644 apps/mcp-server/src/models/trustportalcontrollerupdateoverviewv1op.ts diff --git a/apps/mcp-server/.speakeasy/gen.lock b/apps/mcp-server/.speakeasy/gen.lock index 0e4543bda3..fb107e224d 100644 --- a/apps/mcp-server/.speakeasy/gen.lock +++ b/apps/mcp-server/.speakeasy/gen.lock @@ -1,20 +1,20 @@ lockVersion: 2.0.0 id: f7130d09-dac4-4515-9162-6095782b6bb6 management: - docChecksum: 61167898f739bf2f5fcd9e8166b05cd2 + docChecksum: 4110b3d2dcb2252ba38099ab63f99ca5 docVersion: "1.0" - speakeasyVersion: 1.790.2 - generationVersion: 2.918.3 - releaseVersion: 0.2.3 - configChecksum: 89aa425dd93b9bb5fa91f752eb9133df + speakeasyVersion: 1.790.3 + generationVersion: 2.918.4 + releaseVersion: 0.2.4 + configChecksum: f75ef0ce3158263a708db45d0c4f87e6 repoURL: https://github.com/trycompai/comp.git repoSubDirectory: apps/mcp-server installationURL: https://github.com/trycompai/comp published: true persistentEdits: - generation_id: b86d62d5-24f7-4616-9e0a-c8f730fecd89 - pristine_commit_hash: 11eaf20c84cfa39c09c3d9f5747acbf6839936f1 - pristine_tree_hash: 14225b46fd2ed6f1e92ce6b25759ace22bb8bb41 + generation_id: 7f829488-e24d-4a4e-89aa-6021d5605c7b + pristine_commit_hash: 151c0e5eea6a0e71861e389f77ff4946a59ecc81 + pristine_tree_hash: e1cb820775ce8e8026ccd1f5d5818833cf2c2980 features: mcp-typescript: additionalDependencies: 0.1.0 @@ -51,12 +51,12 @@ trackedFiles: pristine_git_object: 4f9e60a9462fc4def738d60c3aaadf8232ef185f manifest.json: id: ca642a226869 - last_write_checksum: sha1:8e6495d3bdba45c7091e9e6947faeba0ef78ebad - pristine_git_object: f417237872c1bbc425e1cdc9960e714e589948c3 + last_write_checksum: sha1:f6ddd7667a3069ac238b97d7e7f3ea1833919c86 + pristine_git_object: f400599bdf9f35faedffec1f971388cec2fcb214 package.json: id: 7030d0b2f71b - last_write_checksum: sha1:6ab6bd99f7c213dfb5b1c95436aa96e48d83c83d - pristine_git_object: 13aa5cd1a14d30fa8978d1779b43a62af12da170 + last_write_checksum: sha1:1e3606def1d9c1ddef396b6f48cd4fc50ad50791 + pristine_git_object: 40e381d51d17f1c57865554df34c8d9e806a7ab1 src/core.ts: id: f431fdbcd144 last_write_checksum: sha1:3c1fe2275a0f345cf54298150f100299284b3f0e @@ -685,6 +685,10 @@ trackedFiles: id: 24b070f09481 last_write_checksum: sha1:124110e41205d48c636e1b4e13788b4e0f00333d pristine_git_object: a43b4ae03052493733ab269db09753df592d247f + src/funcs/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts: + id: 5a68bb655308 + last_write_checksum: sha1:b2889d1a383f6d509aeffbef547181e13f41dad5 + pristine_git_object: 88ad3b79df1adc08ffa3d244865f51b6a4537d74 src/funcs/ismsISMSRegistersControllerCreateRowV1.ts: id: a30d0900461a last_write_checksum: sha1:62728387f30b696805c8aa40df98b47c65550ae0 @@ -1559,8 +1563,8 @@ trackedFiles: pristine_git_object: 2503cfe22c6efd5e4dbf864d5191f655512aebff src/funcs/trustPortalTrustPortalControllerCreateCustomLinkV1.ts: id: b5a5a7210d35 - last_write_checksum: sha1:a121444373338df902918aa2783d38e19509a46a - pristine_git_object: f6f8dd2c65bc71b02096e95d35408c45ab0f9885 + last_write_checksum: sha1:e0e943c2ab0f78a22f9eecc82dcdf378916611b2 + pristine_git_object: 276d69843f1d3b51d9bed052b9cccbf6947deb71 src/funcs/trustPortalTrustPortalControllerDeleteCustomLinkV1.ts: id: 84564fa15e25 last_write_checksum: sha1:cf500fbfa214e85d5fd4c017344232c1e420d09c @@ -1619,8 +1623,8 @@ trackedFiles: pristine_git_object: 8b85ebcd956fffaebd7aee06aaec5e847e41ad0e src/funcs/trustPortalTrustPortalControllerReorderCustomLinksV1.ts: id: c947bb30cdfc - last_write_checksum: sha1:0ef5dac057274aa12be971f727e8f9919865a72d - pristine_git_object: d39619dc3aadb6d529955dec8fd015354f5f01d0 + last_write_checksum: sha1:f02be04b7106af62ae1d5b1e13607041e4babb3e + pristine_git_object: ea84af6df7d7bd04050eb1d20f6a98efddd73540 src/funcs/trustPortalTrustPortalControllerTogglePortalV1.ts: id: 3153765a0190 last_write_checksum: sha1:c3ac78e10bc14f6571df5c11445554cccc039ff1 @@ -1643,16 +1647,16 @@ trackedFiles: pristine_git_object: a9e32b881ffc89ca0ec25625b53c5f3ef3da9f0f src/funcs/trustPortalTrustPortalControllerUpdateFaqsV1.ts: id: c014e8e67bb7 - last_write_checksum: sha1:387febd344f67692500e59b8181e0c2c2f387f3d - pristine_git_object: a0816d6b44a1d7d00d11568e5ad22132bace9185 + last_write_checksum: sha1:834538121b728468eb8ba2bd80a557b0a824280a + pristine_git_object: a16de9e518ab2af21657112ac32ab2c30cfabde5 src/funcs/trustPortalTrustPortalControllerUpdateFrameworksV1.ts: id: a20b50c50bfa last_write_checksum: sha1:6fb395dd5e2ceeb2bffc5b7d1f534fe295d7e6f7 pristine_git_object: ae7e24d2ee7d35770708649dd8031c81d30da241 src/funcs/trustPortalTrustPortalControllerUpdateOverviewV1.ts: id: 06bad29049c5 - last_write_checksum: sha1:aac55c18b948b37263f0fd9d86bc0b5951fb9d66 - pristine_git_object: 2736799c3f64c6a169832b7f0bfa45fb83c1abae + last_write_checksum: sha1:2245c33993d24a7bbb7f2f2459f220c31a492715 + pristine_git_object: be82428a4b93f751cfd05c012abd7b438d74f4c4 src/funcs/trustPortalTrustPortalControllerUpdateSecurityQuestionnaireV1.ts: id: b783956b4836 last_write_checksum: sha1:2ce07de01dd6528832fe643143e2f979bbcc6b5b @@ -1719,16 +1723,16 @@ trackedFiles: pristine_git_object: 9c36bf01332084f735909a71036c3544cc4c7e3a src/landing-page.ts: id: ef64a6ee46d7 - last_write_checksum: sha1:78f41a26ec831467e422324cac0883b109aab006 - pristine_git_object: c5c0b22284fb31632d312bfb60dc34bbea755ac9 + last_write_checksum: sha1:a8c0f5be81acec7cf76f9b8bd071c764c39a33b4 + pristine_git_object: 33a7ef2adb978531c98984af552c84c735df22f3 src/lib/base64.ts: id: "598522066688" last_write_checksum: sha1:e9f04a037018040361043104960982f7c22db52d pristine_git_object: d4bd8b341290e7a828a171d840bd0b0fff7c7cd7 src/lib/config.ts: id: 320761608fb3 - last_write_checksum: sha1:4605239be4fc5185c7dedf4f98612c90b98479fe - pristine_git_object: 1e35fc294653344b3b7853b91354e39c78f9cd8c + last_write_checksum: sha1:5099e6e715f46bb7a13b36cd1e23125707c44564 + pristine_git_object: 1ea3e3c6c6a1d3a4a40d40f8f4e7b34226cd21c3 src/lib/encodings.ts: id: 3bd8ead98afd last_write_checksum: sha1:3ff4ad6809b749125820fd39c01427b84d3fe0d6 @@ -1815,8 +1819,8 @@ trackedFiles: pristine_git_object: 35c8713b6f8c7f17e2545423d3e74401ff77d04b src/mcp-server/mcp-server.ts: id: aabbc4ab07c1 - last_write_checksum: sha1:316e25298ae3a2de32f9e913bc5a0f3170c711e0 - pristine_git_object: a8425607e4fc4e80ac453f8b0ca9024bf58eeb9e + last_write_checksum: sha1:9b23d85ce2071f73bdb43be8438afede610d9064 + pristine_git_object: 19a01c68f5d95275d5d4b567ba4b94722a036790 src/mcp-server/prompts.ts: id: 26f3d73cbf31 last_write_checksum: sha1:cadb036e04534a6d9d765809eebb266d188c499b @@ -1831,8 +1835,8 @@ trackedFiles: pristine_git_object: c25696d4c4f70e081fa5d87ad6891874c509a577 src/mcp-server/server.ts: id: 2784dd48e82a - last_write_checksum: sha1:957fad16111767561af188b17ee34cf28fde3e9c - pristine_git_object: fa33b10cdf08d072ce7b3b0ffa01fe0a2366baa9 + last_write_checksum: sha1:dc49f71cdc340e62540518d02478e3c35d3590c0 + pristine_git_object: b6e5dc67444a4384a69d504dcf00e0dbc8598965 src/mcp-server/shared.ts: id: 074e80d4be1e last_write_checksum: sha1:19c9034032819a14f15c430de4350c8aba99d725 @@ -2353,6 +2357,10 @@ trackedFiles: id: 738041cf5c67 last_write_checksum: sha1:e331df3d59150506d7b933eaf5ddc68ca37475d9 pristine_git_object: 8fcf21eca2f673666e57e396794f38be28ddf084 + src/mcp-server/tools/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts: + id: 22ee35541bdc + last_write_checksum: sha1:c23dcfa3008972d7472d7cbac321863ae33cce6a + pristine_git_object: fc8eccb75bcd0c89817d5fc469907d0fbbf13ab5 src/mcp-server/tools/ismsISMSRegistersControllerCreateRowV1.ts: id: bd8e918b2ffa last_write_checksum: sha1:4d912dcac6e00a7542d2e804e8d75159c94f75a2 @@ -3179,8 +3187,8 @@ trackedFiles: pristine_git_object: 5cc179edd5ad35f57bc50b5eb7d7e779dfc76ea2 src/mcp-server/tools/trustPortalTrustPortalControllerCreateCustomLinkV1.ts: id: 6f7336c7d8ef - last_write_checksum: sha1:d3efee0fade7cae85a44e7672e4a7064b474b646 - pristine_git_object: dc8e27c12f015bc9780c2089ab8bd081d25c8689 + last_write_checksum: sha1:45774c727bf3fe68d0f1a961a5a57ed985de3943 + pristine_git_object: 09ade3156a7add6475536e63564940ad13315dd0 src/mcp-server/tools/trustPortalTrustPortalControllerDeleteCustomLinkV1.ts: id: efb229327afb last_write_checksum: sha1:b9b9ab8cc30d894c9a964f311936cd0ea7f40e16 @@ -3239,8 +3247,8 @@ trackedFiles: pristine_git_object: 610cd262de6052e28da01d5e3f97d1a195f5ed0f src/mcp-server/tools/trustPortalTrustPortalControllerReorderCustomLinksV1.ts: id: 72d1f485ed03 - last_write_checksum: sha1:9caaa04c6c1b219836ecd9f4bd67db8483005ad1 - pristine_git_object: bd9204a0a95c0a908d995407012970ef52ae2fda + last_write_checksum: sha1:7a1d8e54e0a908626468786466ef28b265b2046e + pristine_git_object: 7a96a1f04ed5a9bc4f57e4ad6f88726341aa0d1f src/mcp-server/tools/trustPortalTrustPortalControllerTogglePortalV1.ts: id: 6c7a6948113b last_write_checksum: sha1:b6078f5c7d15c2f5bfd82ca87ecf4d072113e4d6 @@ -3263,16 +3271,16 @@ trackedFiles: pristine_git_object: 1219cba2ed770daa769687cfee839b296cd82c86 src/mcp-server/tools/trustPortalTrustPortalControllerUpdateFaqsV1.ts: id: 6df3ea463e5e - last_write_checksum: sha1:b7c4af834efb02e85dbb01ef150bd11831ca7db2 - pristine_git_object: 68543e20aae7441e5c419aad13e6d1ef86927649 + last_write_checksum: sha1:51ca83233292fbbe691566cc3fdd4b6c2a91dba4 + pristine_git_object: ae7d900dbd17da0f81a4827c9c2f25681cbb1ed6 src/mcp-server/tools/trustPortalTrustPortalControllerUpdateFrameworksV1.ts: id: 3cceab808afa last_write_checksum: sha1:793fa5e321591f564b7f57882a5763d6963a3a1b pristine_git_object: b7d813daae06c72f9f9c38b6adb6904cd8f32d80 src/mcp-server/tools/trustPortalTrustPortalControllerUpdateOverviewV1.ts: id: 9751b0d6576c - last_write_checksum: sha1:4fe41d8042ada5508bdc58a244575d62933671ec - pristine_git_object: 2fa110ca68b12eacde82b735b51eba56ee40c0f9 + last_write_checksum: sha1:3431832efb571b64f01ebec731bbb64be892f819 + pristine_git_object: e384121ce10968216fda56879e471d291990efb0 src/mcp-server/tools/trustPortalTrustPortalControllerUpdateSecurityQuestionnaireV1.ts: id: d1c62ab2c1a8 last_write_checksum: sha1:0a03a29ff0180600528205cf9d48a4d87c90155e @@ -3655,8 +3663,8 @@ trackedFiles: pristine_git_object: e6e7b767b88afe5e60a347e05c7274ee1737f8a0 src/models/controlscontrollerunlinkdocumenttypev1op.ts: id: edc19b966a6a - last_write_checksum: sha1:c7a4e110c259a7447e0ef9f61a1a78a7bd3ae69c - pristine_git_object: de7cbf43a11faa33d642473bc4bdf2944e0ee2af + last_write_checksum: sha1:67ace3e91f8a000ef334e20abb3f4ac07bb68879 + pristine_git_object: b2838291c46c8605f54d0dd1b6140f35db728d51 src/models/createaccessrequestdto.ts: id: c099827d5497 last_write_checksum: sha1:06ccfeae9414d617517491bb34f55bba1e7251f1 @@ -3705,6 +3713,10 @@ trackedFiles: id: eeaed981a818 last_write_checksum: sha1:d9cf8b348b0c93dfaa6c5dec9dd783841ff333fb pristine_git_object: 570d401a88f9320d9bd85a3d6733dbe657397e8e + src/models/createpolicyversiondto.ts: + id: 3d663209a465 + last_write_checksum: sha1:836d12919f2487e83f8a5e72859b1ce2fc11bdae + pristine_git_object: b56a62765dd4819d93748ea02c064ee282b70dd8 src/models/createriskdto.ts: id: 61e37a73a1a1 last_write_checksum: sha1:cc24d40e41bc1a075b77925297888b55e234bdd8 @@ -4089,10 +4101,14 @@ trackedFiles: id: 4e754d2fba31 last_write_checksum: sha1:d7f41f2d7625135920fea7595091205f512893d2 pristine_git_object: ee9f9cc32b08525d76d14b67debe97d762347ec9 + src/models/ismsregisterscontrollerbulkcreatemeasurementsv1op.ts: + id: 5fdf6393f5fa + last_write_checksum: sha1:a5f6b2ea965d230e7a1be6556b47adb44ac3f9d6 + pristine_git_object: 55137a141875178b5ff60b07f0ff1abf1c90d83e src/models/ismsregisterscontrollercreaterowv1op.ts: id: 9f076d5294c0 - last_write_checksum: sha1:becce5442cfaffd756c6a666c6a7d98a598690bf - pristine_git_object: 8506dc7ad17c60d2184b81b218da226446733378 + last_write_checksum: sha1:64aec946b766eafa6ab5b5902fb3e17a5e8788db + pristine_git_object: c2ed8beb3aefeb12a0efd2cbc744b3aef8807643 src/models/ismsregisterscontrollerdeleterowv1op.ts: id: 2a3c3e9c20ab last_write_checksum: sha1:99778effb0c359cac2d9c900043015f39bd6ff41 @@ -4103,8 +4119,8 @@ trackedFiles: pristine_git_object: 560ed38a1fd2f55ce151da6f5c27584f039ee7eb src/models/ismsregisterscontrollerupdaterowv1op.ts: id: 52527e12c047 - last_write_checksum: sha1:080f840cbe11bb45be40c153fff772e6c41aa901 - pristine_git_object: 2a9c7004954e1fac95fbe07008e43276fc13a4c4 + last_write_checksum: sha1:a89a08a85ac9c430d15279b3c8569422f2c41235 + pristine_git_object: 80f03aa774ca3f9fc5c34e6b63810685f736f71f src/models/knowledgebasecontrollercreateruntokenv1op.ts: id: 435247f848ea last_write_checksum: sha1:37a33eb2a331bc201b7b5dd8efff7ddd13f907e9 @@ -4371,8 +4387,8 @@ trackedFiles: pristine_git_object: 92708328af51ada61e8f6b473f25793572224662 src/models/policiescontrollercreatepolicyversionv1op.ts: id: 047062a4267a - last_write_checksum: sha1:53faa44d646404491fde16a86bf56def8c5eec75 - pristine_git_object: dfaa96ae1747fbb975094fc88b6f01068b57c548 + last_write_checksum: sha1:e34a8f9e7f2e485cd574845762ef4b0e080b74ce + pristine_git_object: 0778ddef54df626dd3fbd710cbae5392ef4ecefe src/models/policiescontrollerdeletepolicypdfv1op.ts: id: 65147d641a19 last_write_checksum: sha1:8125f767b3b658792ae57460f2baf664945eb6bd @@ -4915,8 +4931,8 @@ trackedFiles: pristine_git_object: 41d6e9f28e262ad52bb8343e503f620984b32796 src/models/trustaccesscontrollergetfaqsv1op.ts: id: edad1d24d164 - last_write_checksum: sha1:d29c116741c6825cf52f0eb490ed374c717d7019 - pristine_git_object: eaab1050b4ceee84901bec428ac4523a7744fe1f + last_write_checksum: sha1:12063441a1a1568f7548127b336ef1c3a83067f0 + pristine_git_object: db5a2baba916bbb4780c05f3725dd7f5f9120fb1 src/models/trustaccesscontrollergetpubliccustomframeworksv1op.ts: id: f57451b3c477 last_write_checksum: sha1:e845c3bb39caef3251aab0bc1056bbb513c35e1e @@ -4977,6 +4993,10 @@ trackedFiles: id: 32aa28725a66 last_write_checksum: sha1:1427138be7bc5addf25702554dfcbbd762ed0f15 pristine_git_object: 15b95c6d5b6ba7d51988b423a34281ffc1649d04 + src/models/trustportalcontrollercreatecustomlinkv1op.ts: + id: dde34a464ef2 + last_write_checksum: sha1:3f4349db9e87830925f8208774746dc9ccfb4847 + pristine_git_object: d2a4e5f6dcce911cc0bf269b4e899a7df9502f2a src/models/trustportalcontrollerdeletecustomlinkv1op.ts: id: 4b0cf814bc4a last_write_checksum: sha1:002b6ce41f0c5205ae02a83dd995cbe74643ab3c @@ -5009,6 +5029,10 @@ trackedFiles: id: 187a29dd6e93 last_write_checksum: sha1:90165df75708bab73bf95aede1dc610312a8c6cd pristine_git_object: bc5333433600a0d2b988be0a422baed464969847 + src/models/trustportalcontrollerreordercustomlinksv1op.ts: + id: 9819f9ff0b2a + last_write_checksum: sha1:8cf33ba6f574052810568c4430e4198e1128bf92 + pristine_git_object: 8982acdc7ea8043866ab3d78c646cff1f844395c src/models/trustportalcontrollerupdatecustomframeworkv1op.ts: id: 0c0141cc1669 last_write_checksum: sha1:ce1c45715736663805c1af9688c3e84a568f3e6d @@ -5017,6 +5041,14 @@ trackedFiles: id: b10f6bec788d last_write_checksum: sha1:990ecfb4b690d261e2dd8f360122aa4c983528f9 pristine_git_object: 36a18e12809da9ee30a7295b0c83a1c332fb19a9 + src/models/trustportalcontrollerupdatefaqsv1op.ts: + id: fe53d36f1971 + last_write_checksum: sha1:eaf8a047cd0ba6ae90ffa620a66ef4f970323777 + pristine_git_object: 5935dc7df42499ffc33bffb1f18c8c14dd074e55 + src/models/trustportalcontrollerupdateoverviewv1op.ts: + id: 0ce2d77febc2 + last_write_checksum: sha1:db66e566824d57ad0cf38cb18fea7aebdda74c09 + pristine_git_object: 412ed48769fab7646e80a069928c61f4459503e7 src/models/trustportalcontrollerupdatesecurityquestionnairev1op.ts: id: 5d91b6cee824 last_write_checksum: sha1:0dda2e3b6174b36a41fbdd5ec91769682539a067 @@ -5195,8 +5227,8 @@ trackedFiles: pristine_git_object: b28276e362f124b0639d9df85dcd70a425825920 src/tool-names.ts: id: a9977280f9eb - last_write_checksum: sha1:0bc7c5fd8b316c0c45147742b01515264ce70be1 - pristine_git_object: 9a9ccbe30b309f9868ffbb0ab0a3458e41ec344f + last_write_checksum: sha1:e7319702ae16c8a892cab7afa6f873301b3fbe1e + pristine_git_object: 16bca9c208d9aaf6bc571e7d9b1928e99aa10e71 src/types/async.ts: id: fac8da972f86 last_write_checksum: sha1:675d04bb4b4081dc3482f18de98674f9b446e7b4 @@ -5921,7 +5953,7 @@ examples: path: id: "pol_abc123def456" requestBody: - application/json: {"version": 1, "scriptKey": "org_abc123/tsk_abc123/aut_abc123.v1.js"} + application/json: {"sourceVersionId": "pv_abc123def456", "changelog": "Initial draft for quarterly updates"} responses: "201": application/json: {} @@ -6462,16 +6494,25 @@ examples: TrustPortalController_togglePortal_v1: {} TrustPortalController_addCustomDomain_v1: {} TrustPortalController_checkDnsRecords_v1: {} - TrustPortalController_updateFaqs_v1: {} + TrustPortalController_updateFaqs_v1: + speakeasy-default-trust-portal-controller-update-faqs-v1: + requestBody: + application/json: {"faqs": []} TrustPortalController_updateAllowedDomains_v1: {} TrustPortalController_updateFrameworks_v1: {} - TrustPortalController_updateOverview_v1: {} + TrustPortalController_updateOverview_v1: + speakeasy-default-trust-portal-controller-update-overview-v1: + requestBody: + application/json: {"organizationId": "org_6914cd0e16e4c7dccbb54426"} TrustPortalController_getOverview_v1: speakeasy-default-trust-portal-controller-get-overview-v1: parameters: query: organizationId: "" - TrustPortalController_createCustomLink_v1: {} + TrustPortalController_createCustomLink_v1: + speakeasy-default-trust-portal-controller-create-custom-link-v1: + requestBody: + application/json: {"organizationId": "org_6914cd0e16e4c7dccbb54426", "title": "", "url": "https://drab-pick.info/"} TrustPortalController_listCustomLinks_v1: speakeasy-default-trust-portal-controller-list-custom-links-v1: parameters: @@ -6487,7 +6528,10 @@ examples: parameters: path: linkId: "" - TrustPortalController_reorderCustomLinks_v1: {} + TrustPortalController_reorderCustomLinks_v1: + speakeasy-default-trust-portal-controller-reorder-custom-links-v1: + requestBody: + application/json: {"organizationId": "org_6914cd0e16e4c7dccbb54426", "linkIds": []} TrustPortalController_updateVendorTrustSettings_v1: speakeasy-default-trust-portal-controller-update-vendor-trust-settings-v1: parameters: @@ -7735,7 +7779,12 @@ examples: id: "" requestBody: application/json: {"name": "Internal Controls"} + IsmsRegistersController_bulkCreateMeasurements_v1: + speakeasy-default-isms-registers-controller-bulk-create-measurements-v1: + parameters: + path: + id: "" + requestBody: + application/json: {"measurements": []} examplesVersion: 1.0.2 -releaseNotes: | - ## Mcp-typescript SDK Changes: - * `CompAi.People.PeopleController_updateMember_v1()`: `response.status[409]` **Added** (Breaking ⚠️) +releaseNotes: "## Mcp-typescript SDK Changes:\n* `CompAi.Policies.PoliciesController_createPolicyVersion_v1()`: \n * `request.body` **Changed** (Breaking ⚠️)\n* `CompAi.Trust Portal.TrustPortalController_updateFaqs_v1()`: `request` **Added** (Breaking ⚠️)\n* `CompAi.Trust Portal.TrustPortalController_updateOverview_v1()`: `request` **Added** (Breaking ⚠️)\n* `CompAi.Trust Portal.TrustPortalController_createCustomLink_v1()`: `request` **Added** (Breaking ⚠️)\n* `CompAi.Trust Portal.TrustPortalController_reorderCustomLinks_v1()`: `request` **Added** (Breaking ⚠️)\n* `CompAi.ISMS.IsmsRegistersController_bulkCreateMeasurements_v1()`: **Added**\n* `CompAi.ISMS.IsmsRegistersController_createRow_v1()`: \n * `request.body` **Changed**\n* `CompAi.ISMS.IsmsRegistersController_updateRow_v1()`: \n * `request.body` **Changed**\n" diff --git a/apps/mcp-server/.speakeasy/gen.yaml b/apps/mcp-server/.speakeasy/gen.yaml index 1a91338724..d37c91a719 100644 --- a/apps/mcp-server/.speakeasy/gen.yaml +++ b/apps/mcp-server/.speakeasy/gen.yaml @@ -31,7 +31,7 @@ generation: generateNewTests: true skipResponseBodyAssertions: false mcp-typescript: - version: 0.2.3 + version: 0.2.4 additionalDependencies: dependencies: {} devDependencies: {} diff --git a/apps/mcp-server/.speakeasy/out.openapi.yaml b/apps/mcp-server/.speakeasy/out.openapi.yaml index c542f08552..8415781167 100644 --- a/apps/mcp-server/.speakeasy/out.openapi.yaml +++ b/apps/mcp-server/.speakeasy/out.openapi.yaml @@ -7660,7 +7660,7 @@ paths: content: application/json: schema: - $ref: "#/components/schemas/CreateVersionDto" + $ref: "#/components/schemas/CreatePolicyVersionDto" responses: "201": description: "Policy version created" @@ -10983,6 +10983,27 @@ paths: put: operationId: "TrustPortalController_updateFaqs_v1" parameters: [] + requestBody: + required: true + content: + application/json: + schema: + type: "object" + required: + - "faqs" + properties: + faqs: + type: "array" + items: + type: "object" + required: + - "question" + - "answer" + properties: + question: + type: "string" + answer: + type: "string" responses: "200": description: "" @@ -11240,6 +11261,29 @@ paths: post: operationId: "TrustPortalController_updateOverview_v1" parameters: [] + requestBody: + required: true + content: + application/json: + schema: + type: "object" + required: + - "organizationId" + properties: + organizationId: + type: "string" + description: "Organization that owns the trust portal. Must match the authenticated API key's organization." + example: "org_6914cd0e16e4c7dccbb54426" + overviewTitle: + type: "string" + maxLength: 200 + nullable: true + overviewContent: + type: "string" + maxLength: 10000 + nullable: true + showOverview: + type: "boolean" responses: "200": description: "Overview updated successfully" @@ -11288,6 +11332,33 @@ paths: post: operationId: "TrustPortalController_createCustomLink_v1" parameters: [] + requestBody: + required: true + content: + application/json: + schema: + type: "object" + required: + - "organizationId" + - "title" + - "url" + properties: + organizationId: + type: "string" + description: "Organization that owns the trust portal. Must match the authenticated API key's organization." + example: "org_6914cd0e16e4c7dccbb54426" + title: + type: "string" + minLength: 1 + maxLength: 100 + description: + type: "string" + maxLength: 500 + nullable: true + url: + type: "string" + format: "uri" + maxLength: 2000 responses: "201": description: "Custom link created successfully" @@ -11390,6 +11461,25 @@ paths: post: operationId: "TrustPortalController_reorderCustomLinks_v1" parameters: [] + requestBody: + required: true + content: + application/json: + schema: + type: "object" + required: + - "organizationId" + - "linkIds" + properties: + organizationId: + type: "string" + description: "Organization that owns the trust portal. Must match the authenticated API key's organization." + example: "org_6914cd0e16e4c7dccbb54426" + linkIds: + type: "array" + items: + type: "string" + description: "Custom link IDs in the desired display order." responses: "200": description: "Custom links reordered successfully" @@ -14203,6 +14293,11 @@ paths: - "on_track" - "at_risk" - "met" + - "planned" + - "in_progress" + - "complete" + - "open" + - "closed" responsibilities: type: "string" authorities: @@ -14257,6 +14352,110 @@ paths: remediationDueDate: type: "string" nullable: true + whatIsMeasured: + type: "string" + method: + type: "string" + monitorMemberId: + type: "string" + nullable: true + analyzeMemberId: + type: "string" + nullable: true + objectiveId: + type: "string" + nullable: true + isActive: + type: "boolean" + metricId: + type: "string" + periodStart: + type: "string" + description: "First day of the covered period (YYYY-MM-DD), aligned to the metric cadence" + value: + type: "string" + note: + type: "string" + nullable: true + scope: + type: "string" + criteria: + type: "string" + auditorName: + type: "string" + nullable: true + plannedStartDate: + type: "string" + nullable: true + plannedEndDate: + type: "string" + nullable: true + conclusionVerdict: + type: "string" + enum: + - "conform" + - "substantially_conform" + - "not_yet_conform" + nullable: true + conclusionNotes: + type: "string" + nullable: true + signoffAuditorName: + type: "string" + nullable: true + signoffAuditorDate: + type: "string" + nullable: true + signoffSpoName: + type: "string" + nullable: true + signoffSpoDate: + type: "string" + nullable: true + signoffTopMgmtName: + type: "string" + nullable: true + signoffTopMgmtDate: + type: "string" + nullable: true + auditId: + type: "string" + controlRef: + type: "string" + whatWasTested: + type: "string" + whereToFind: + type: "string" + result: + type: "string" + enum: + - "conformity_confirmed" + - "nonconformity_raised" + - "observation_raised" + - "not_sampled" + nullable: true + notes: + type: "string" + nullable: true + type: + type: "string" + enum: + - "nc_major" + - "nc_minor" + - "ofi" + - "observation" + controlId: + type: "string" + nullable: true + clauseOrControl: + type: "string" + nullable: true + dueDate: + type: "string" + nullable: true + closureEvidence: + type: "string" + nullable: true position: type: "integer" minimum: 0 @@ -14342,6 +14541,11 @@ paths: - "on_track" - "at_risk" - "met" + - "planned" + - "in_progress" + - "complete" + - "open" + - "closed" responsibilities: type: "string" authorities: @@ -14396,6 +14600,110 @@ paths: remediationDueDate: type: "string" nullable: true + whatIsMeasured: + type: "string" + method: + type: "string" + monitorMemberId: + type: "string" + nullable: true + analyzeMemberId: + type: "string" + nullable: true + objectiveId: + type: "string" + nullable: true + isActive: + type: "boolean" + metricId: + type: "string" + periodStart: + type: "string" + description: "First day of the covered period (YYYY-MM-DD), aligned to the metric cadence" + value: + type: "string" + note: + type: "string" + nullable: true + scope: + type: "string" + criteria: + type: "string" + auditorName: + type: "string" + nullable: true + plannedStartDate: + type: "string" + nullable: true + plannedEndDate: + type: "string" + nullable: true + conclusionVerdict: + type: "string" + enum: + - "conform" + - "substantially_conform" + - "not_yet_conform" + nullable: true + conclusionNotes: + type: "string" + nullable: true + signoffAuditorName: + type: "string" + nullable: true + signoffAuditorDate: + type: "string" + nullable: true + signoffSpoName: + type: "string" + nullable: true + signoffSpoDate: + type: "string" + nullable: true + signoffTopMgmtName: + type: "string" + nullable: true + signoffTopMgmtDate: + type: "string" + nullable: true + auditId: + type: "string" + controlRef: + type: "string" + whatWasTested: + type: "string" + whereToFind: + type: "string" + result: + type: "string" + enum: + - "conformity_confirmed" + - "nonconformity_raised" + - "observation_raised" + - "not_sampled" + nullable: true + notes: + type: "string" + nullable: true + type: + type: "string" + enum: + - "nc_major" + - "nc_minor" + - "ofi" + - "observation" + controlId: + type: "string" + nullable: true + clauseOrControl: + type: "string" + nullable: true + dueDate: + type: "string" + nullable: true + closureEvidence: + type: "string" + nullable: true position: type: "integer" minimum: 0 @@ -14448,6 +14756,63 @@ paths: og:description: "Delete a row in an ISMS register in Comp AI." x-speakeasy-mcp: name: "delete-row" + /v1/isms/documents/{id}/measurements/bulk: + post: + operationId: "IsmsRegistersController_bulkCreateMeasurements_v1" + parameters: + - name: "id" + required: true + in: "path" + schema: + type: "string" + requestBody: + required: true + description: "Measurements to record in one save (Metrics due / backfill views)" + content: + application/json: + schema: + type: "object" + properties: + measurements: + type: "array" + minItems: 1 + maxItems: 200 + items: + type: "object" + properties: + metricId: + type: "string" + periodStart: + type: "string" + value: + type: "string" + note: + type: "string" + nullable: true + required: + - "metricId" + - "periodStart" + - "value" + required: + - "measurements" + responses: + "200": + description: "Measurements recorded" + security: + - apikey: [] + summary: "Record measurements for several metrics/periods in one save (Metrics due / backfill)" + tags: + - "ISMS" + description: "Record measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI." + x-mint: + metadata: + title: "Record measurements for several metrics/period | Comp AI API" + sidebarTitle: "Record measurements for several metrics/periods in one save (Metrics due / backfill)" + description: "Record measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI." + og:title: "Record measurements for several metrics/period | Comp AI API" + og:description: "Record measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI." + x-speakeasy-mcp: + name: "bulk-create-measurements" /v1/isms/documents/{id}/narrative: post: operationId: "IsmsRegistersController_saveNarrative_v1" @@ -16556,11 +16921,6 @@ paths: schema: example: "ctl_abc123def456" type: "string" - - name: "frameworkInstanceId" - required: true - in: "query" - schema: - type: "string" - name: "formType" required: true in: "path" @@ -16581,6 +16941,11 @@ paths: - "tabletop_exercise" - "account_types" type: "string" + - name: "frameworkInstanceId" + required: true + in: "query" + schema: + type: "string" responses: "200": description: "" @@ -19456,23 +19821,17 @@ components: - "EDITOR" - "PDF" example: "EDITOR" - CreateVersionDto: + CreatePolicyVersionDto: type: "object" properties: - version: - type: "number" - description: "Version number for this published script" - example: 1 - scriptKey: + sourceVersionId: type: "string" - description: "S3 key of the already-generated & published automation script (returned by the publish step)." - example: "org_abc123/tsk_abc123/aut_abc123.v1.js" + description: "Optional version ID to base the new version on" + example: "pv_abc123def456" changelog: type: "string" - description: "Optional changelog describing this version" - required: - - "version" - - "scriptKey" + description: "Optional changelog to associate with the new version" + example: "Initial draft for quarterly updates" UpdateVersionContentDto: type: "object" properties: @@ -19641,6 +20000,23 @@ components: - "quarterly" - "yearly" description: "Automation schedule cadence" + CreateVersionDto: + type: "object" + properties: + version: + type: "number" + description: "Version number for this published script" + example: 1 + scriptKey: + type: "string" + description: "S3 key of the already-generated & published automation script (returned by the publish step)." + example: "org_abc123/tsk_abc123/aut_abc123.v1.js" + changelog: + type: "string" + description: "Optional changelog describing this version" + required: + - "version" + - "scriptKey" AuthorResponseDto: type: "object" properties: diff --git a/apps/mcp-server/.speakeasy/workflow.lock b/apps/mcp-server/.speakeasy/workflow.lock index e0deee8442..719f6bd8ba 100644 --- a/apps/mcp-server/.speakeasy/workflow.lock +++ b/apps/mcp-server/.speakeasy/workflow.lock @@ -1,9 +1,9 @@ -speakeasyVersion: 1.790.2 +speakeasyVersion: 1.790.3 sources: Comp AI API: sourceNamespace: comp-ai-api - sourceRevisionDigest: sha256:089adaac5b23d8ae8fa3e6e45c03e8a85db9aa97b33a6680e8c052847b20b3dd - sourceBlobDigest: sha256:a226d51f75650d11a488aab15dec345fcebcd840c12fbcb10f0c544492b2f42e + sourceRevisionDigest: sha256:fedd02716c38bd8028e75e7d3369aac40920d78ec1c95905b22b6055266157f0 + sourceBlobDigest: sha256:f086e59d9dae621c65504efb8e5772f15eec3f050e6af9e02bfbd982d9b4f7dc tags: - latest - "1.0" @@ -11,8 +11,8 @@ targets: comp-ai: source: Comp AI API sourceNamespace: comp-ai-api - sourceRevisionDigest: sha256:089adaac5b23d8ae8fa3e6e45c03e8a85db9aa97b33a6680e8c052847b20b3dd - sourceBlobDigest: sha256:a226d51f75650d11a488aab15dec345fcebcd840c12fbcb10f0c544492b2f42e + sourceRevisionDigest: sha256:fedd02716c38bd8028e75e7d3369aac40920d78ec1c95905b22b6055266157f0 + sourceBlobDigest: sha256:f086e59d9dae621c65504efb8e5772f15eec3f050e6af9e02bfbd982d9b4f7dc workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/apps/mcp-server/README.md b/apps/mcp-server/README.md index 78e81e6429..a18758f98f 100644 --- a/apps/mcp-server/README.md +++ b/apps/mcp-server/README.md @@ -30,9 +30,9 @@ Comp AI API: Compliance automation API for SOC 2, ISO 27001, HIPAA, GDPR, eviden
Claude Desktop -Install the MCP server as a Desktop Extension using the pre-built [`mcp-server.mcpb`](https://github.com/trycompai/comp/releases/download/v0.2.3/mcp-server.mcpb) file: +Install the MCP server as a Desktop Extension using the pre-built [`mcp-server.mcpb`](https://github.com/trycompai/comp/releases/download/v0.2.4/mcp-server.mcpb) file: -Simply drag and drop the [`mcp-server.mcpb`](https://github.com/trycompai/comp/releases/download/v0.2.3/mcp-server.mcpb) file onto Claude Desktop to install the extension. +Simply drag and drop the [`mcp-server.mcpb`](https://github.com/trycompai/comp/releases/download/v0.2.4/mcp-server.mcpb) file onto Claude Desktop to install the extension. The MCP bundle package includes the MCP server and all necessary configuration. Once installed, the server will be available without additional setup. diff --git a/apps/mcp-server/RELEASES.md b/apps/mcp-server/RELEASES.md index c3ccb704c9..f5c7ba5763 100644 --- a/apps/mcp-server/RELEASES.md +++ b/apps/mcp-server/RELEASES.md @@ -62,4 +62,12 @@ Based on: - OpenAPI Doc - Speakeasy CLI 1.790.2 (2.918.3) https://github.com/speakeasy-api/speakeasy ### Generated -- [mcp-typescript v0.2.3] apps/mcp-server \ No newline at end of file +- [mcp-typescript v0.2.3] apps/mcp-server + +## 2026-07-22 03:34:34 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.790.3 (2.918.4) https://github.com/speakeasy-api/speakeasy +### Generated +- [mcp-typescript v0.2.4] apps/mcp-server \ No newline at end of file diff --git a/apps/mcp-server/manifest.json b/apps/mcp-server/manifest.json index f417237872..f400599bdf 100644 --- a/apps/mcp-server/manifest.json +++ b/apps/mcp-server/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": "0.3", "name": "@trycompai/mcp-server", - "version": "0.2.3", + "version": "0.2.4", "description": "", "long_description": "Comp AI API: Compliance automation API for SOC 2, ISO 27001, HIPAA, GDPR, evidence collection, policy workflows, Trust Access, security questionnaires, integrations, cloud checks, and device compliance.", "author": { @@ -1280,6 +1280,10 @@ "name": "delete-row", "description": "Delete a row in an ISMS register\n\nDelete a row in an ISMS register in Comp AI." }, + { + "name": "bulk-create-measurements", + "description": "Record measurements for several metrics/periods in one save (Metrics due / backfill)\n\nRecord measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI." + }, { "name": "save-narrative", "description": "Save a singleton document narrative\n\nSave a singleton document narrative in Comp AI." diff --git a/apps/mcp-server/package-lock.json b/apps/mcp-server/package-lock.json index 20a64896d4..65adbe35c9 100644 --- a/apps/mcp-server/package-lock.json +++ b/apps/mcp-server/package-lock.json @@ -1,12 +1,12 @@ { "name": "@trycompai/mcp-server", - "version": "0.2.3", + "version": "0.2.4", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@trycompai/mcp-server", - "version": "0.2.3", + "version": "0.2.4", "dependencies": { "@modelcontextprotocol/sdk": "1.26.0", "@stricli/core": "^1.1.2", diff --git a/apps/mcp-server/package.json b/apps/mcp-server/package.json index 13aa5cd1a1..40e381d51d 100644 --- a/apps/mcp-server/package.json +++ b/apps/mcp-server/package.json @@ -1,6 +1,6 @@ { "name": "@trycompai/mcp-server", - "version": "0.2.3", + "version": "0.2.4", "author": "Comp AI", "type": "module", "sideEffects": false, diff --git a/apps/mcp-server/src/funcs/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts b/apps/mcp-server/src/funcs/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts new file mode 100644 index 0000000000..88ad3b79df --- /dev/null +++ b/apps/mcp-server/src/funcs/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts @@ -0,0 +1,158 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { CompAiCore } from "../core.js"; +import { encodeJSON, encodeSimple } from "../lib/encodings.js"; +import { compactMap } from "../lib/primitives.js"; +import { safeParse } from "../lib/schemas.js"; +import { RequestOptions } from "../lib/sdks.js"; +import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; +import { pathToFunc } from "../lib/url.js"; +import { APIError } from "../models/errors/apierror.js"; +import { + ConnectionError, + InvalidRequestError, + RequestAbortedError, + RequestTimeoutError, + UnexpectedClientError, +} from "../models/errors/httpclienterrors.js"; +import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; +import { + IsmsRegistersControllerBulkCreateMeasurementsV1Request, + IsmsRegistersControllerBulkCreateMeasurementsV1Request$zodSchema, +} from "../models/ismsregisterscontrollerbulkcreatemeasurementsv1op.js"; +import { APICall, APIPromise } from "../types/async.js"; +import { Result } from "../types/fp.js"; + +/** + * Record measurements for several metrics/periods in one save (Metrics due / backfill) + * + * @remarks + * Record measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI. + * + * If set, this operation will use {@link Security.apikey} from the global security. + */ +export function ismsISMSRegistersControllerBulkCreateMeasurementsV1( + client$: CompAiCore, + request: IsmsRegistersControllerBulkCreateMeasurementsV1Request, + options?: RequestOptions, +): APIPromise< + Result< + Response, + | APIError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + > +> { + return new APIPromise($do( + client$, + request, + options, + )); +} + +async function $do( + client$: CompAiCore, + request: IsmsRegistersControllerBulkCreateMeasurementsV1Request, + options?: RequestOptions, +): Promise< + [ + Result< + Response, + | APIError + | SDKValidationError + | UnexpectedClientError + | InvalidRequestError + | RequestAbortedError + | RequestTimeoutError + | ConnectionError + >, + APICall, + ] +> { + const parsed$ = safeParse( + request, + (value$) => + IsmsRegistersControllerBulkCreateMeasurementsV1Request$zodSchema.parse( + value$, + ), + "Input validation failed", + ); + if (!parsed$.ok) { + return [parsed$, { status: "invalid" }]; + } + const payload$ = parsed$.value; + const body$ = encodeJSON("body", payload$.body, { explode: true }); + + const pathParams$ = { + id: encodeSimple("id", payload$.id, { + explode: false, + charEncoding: "percent", + }), + }; + const path$ = pathToFunc("/v1/isms/documents/{id}/measurements/bulk")( + pathParams$, + ); + + const headers$ = new Headers(compactMap({ + "Content-Type": "application/json", + Accept: "*/*", + })); + const securityInput = await extractSecurity(client$._options.security); + const requestSecurity = resolveGlobalSecurity(securityInput, [0]); + + const context = { + options: client$._options, + baseURL: options?.serverURL ?? client$._baseURL ?? "", + operationID: "IsmsRegistersController_bulkCreateMeasurements_v1", + oAuth2Scopes: null, + resolvedSecurity: requestSecurity, + securitySource: client$._options.security, + retryConfig: options?.retries + || client$._options.retryConfig + || { strategy: "none" }, + retryCodes: options?.retryCodes || [ + "429", + "500", + "502", + "503", + "504", + ], + }; + + const requestRes = client$._createRequest(context, { + security: requestSecurity, + method: "POST", + baseURL: options?.serverURL, + path: path$, + headers: headers$, + body: body$, + userAgent: client$._options.userAgent, + timeoutMs: options?.timeoutMs || client$._options.timeoutMs + || 120000, + }, options); + if (!requestRes.ok) { + return [requestRes, { status: "invalid" }]; + } + const req$ = requestRes.value; + + const doResult = await client$._do(req$, { + context, + errorCodes: [], + retryConfig: context.retryConfig, + retryCodes: context.retryCodes, + }); + if (!doResult.ok) { + return [doResult, { status: "request-error", request: req$ }]; + } + return [doResult, { + status: "complete", + "request": req$, + response: doResult.value, + }]; +} diff --git a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerCreateCustomLinkV1.ts b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerCreateCustomLinkV1.ts index f6f8dd2c65..276d69843f 100644 --- a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerCreateCustomLinkV1.ts +++ b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerCreateCustomLinkV1.ts @@ -3,7 +3,9 @@ */ import { CompAiCore } from "../core.js"; +import { encodeJSON } from "../lib/encodings.js"; import { compactMap } from "../lib/primitives.js"; +import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; @@ -16,6 +18,10 @@ import { UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; +import { + TrustPortalControllerCreateCustomLinkV1Request, + TrustPortalControllerCreateCustomLinkV1Request$zodSchema, +} from "../models/trustportalcontrollercreatecustomlinkv1op.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; @@ -29,6 +35,7 @@ import { Result } from "../types/fp.js"; */ export function trustPortalTrustPortalControllerCreateCustomLinkV1( client$: CompAiCore, + request: TrustPortalControllerCreateCustomLinkV1Request, options?: RequestOptions, ): APIPromise< Result< @@ -44,12 +51,14 @@ export function trustPortalTrustPortalControllerCreateCustomLinkV1( > { return new APIPromise($do( client$, + request, options, )); } async function $do( client$: CompAiCore, + request: TrustPortalControllerCreateCustomLinkV1Request, options?: RequestOptions, ): Promise< [ @@ -66,9 +75,21 @@ async function $do( APICall, ] > { + const parsed$ = safeParse( + request, + (value$) => + TrustPortalControllerCreateCustomLinkV1Request$zodSchema.parse(value$), + "Input validation failed", + ); + if (!parsed$.ok) { + return [parsed$, { status: "invalid" }]; + } + const payload$ = parsed$.value; + const body$ = encodeJSON("body", payload$, { explode: true }); const path$ = pathToFunc("/v1/trust-portal/custom-links")(); const headers$ = new Headers(compactMap({ + "Content-Type": "application/json", Accept: "*/*", })); const securityInput = await extractSecurity(client$._options.security); @@ -99,6 +120,7 @@ async function $do( baseURL: options?.serverURL, path: path$, headers: headers$, + body: body$, userAgent: client$._options.userAgent, timeoutMs: options?.timeoutMs || client$._options.timeoutMs || 120000, diff --git a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerReorderCustomLinksV1.ts b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerReorderCustomLinksV1.ts index d39619dc3a..ea84af6df7 100644 --- a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerReorderCustomLinksV1.ts +++ b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerReorderCustomLinksV1.ts @@ -3,7 +3,9 @@ */ import { CompAiCore } from "../core.js"; +import { encodeJSON } from "../lib/encodings.js"; import { compactMap } from "../lib/primitives.js"; +import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; @@ -16,6 +18,10 @@ import { UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; +import { + TrustPortalControllerReorderCustomLinksV1Request, + TrustPortalControllerReorderCustomLinksV1Request$zodSchema, +} from "../models/trustportalcontrollerreordercustomlinksv1op.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; @@ -29,6 +35,7 @@ import { Result } from "../types/fp.js"; */ export function trustPortalTrustPortalControllerReorderCustomLinksV1( client$: CompAiCore, + request: TrustPortalControllerReorderCustomLinksV1Request, options?: RequestOptions, ): APIPromise< Result< @@ -44,12 +51,14 @@ export function trustPortalTrustPortalControllerReorderCustomLinksV1( > { return new APIPromise($do( client$, + request, options, )); } async function $do( client$: CompAiCore, + request: TrustPortalControllerReorderCustomLinksV1Request, options?: RequestOptions, ): Promise< [ @@ -66,9 +75,21 @@ async function $do( APICall, ] > { + const parsed$ = safeParse( + request, + (value$) => + TrustPortalControllerReorderCustomLinksV1Request$zodSchema.parse(value$), + "Input validation failed", + ); + if (!parsed$.ok) { + return [parsed$, { status: "invalid" }]; + } + const payload$ = parsed$.value; + const body$ = encodeJSON("body", payload$, { explode: true }); const path$ = pathToFunc("/v1/trust-portal/custom-links/reorder")(); const headers$ = new Headers(compactMap({ + "Content-Type": "application/json", Accept: "*/*", })); const securityInput = await extractSecurity(client$._options.security); @@ -99,6 +120,7 @@ async function $do( baseURL: options?.serverURL, path: path$, headers: headers$, + body: body$, userAgent: client$._options.userAgent, timeoutMs: options?.timeoutMs || client$._options.timeoutMs || 120000, diff --git a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateFaqsV1.ts b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateFaqsV1.ts index a0816d6b44..a16de9e518 100644 --- a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateFaqsV1.ts +++ b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateFaqsV1.ts @@ -3,7 +3,9 @@ */ import { CompAiCore } from "../core.js"; +import { encodeJSON } from "../lib/encodings.js"; import { compactMap } from "../lib/primitives.js"; +import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; @@ -16,6 +18,10 @@ import { UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; +import { + TrustPortalControllerUpdateFaqsV1Request, + TrustPortalControllerUpdateFaqsV1Request$zodSchema, +} from "../models/trustportalcontrollerupdatefaqsv1op.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; @@ -29,6 +35,7 @@ import { Result } from "../types/fp.js"; */ export function trustPortalTrustPortalControllerUpdateFaqsV1( client$: CompAiCore, + request: TrustPortalControllerUpdateFaqsV1Request, options?: RequestOptions, ): APIPromise< Result< @@ -44,12 +51,14 @@ export function trustPortalTrustPortalControllerUpdateFaqsV1( > { return new APIPromise($do( client$, + request, options, )); } async function $do( client$: CompAiCore, + request: TrustPortalControllerUpdateFaqsV1Request, options?: RequestOptions, ): Promise< [ @@ -66,9 +75,21 @@ async function $do( APICall, ] > { + const parsed$ = safeParse( + request, + (value$) => + TrustPortalControllerUpdateFaqsV1Request$zodSchema.parse(value$), + "Input validation failed", + ); + if (!parsed$.ok) { + return [parsed$, { status: "invalid" }]; + } + const payload$ = parsed$.value; + const body$ = encodeJSON("body", payload$, { explode: true }); const path$ = pathToFunc("/v1/trust-portal/settings/faqs")(); const headers$ = new Headers(compactMap({ + "Content-Type": "application/json", Accept: "*/*", })); const securityInput = await extractSecurity(client$._options.security); @@ -99,6 +120,7 @@ async function $do( baseURL: options?.serverURL, path: path$, headers: headers$, + body: body$, userAgent: client$._options.userAgent, timeoutMs: options?.timeoutMs || client$._options.timeoutMs || 120000, diff --git a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateOverviewV1.ts b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateOverviewV1.ts index 2736799c3f..be82428a4b 100644 --- a/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateOverviewV1.ts +++ b/apps/mcp-server/src/funcs/trustPortalTrustPortalControllerUpdateOverviewV1.ts @@ -3,7 +3,9 @@ */ import { CompAiCore } from "../core.js"; +import { encodeJSON } from "../lib/encodings.js"; import { compactMap } from "../lib/primitives.js"; +import { safeParse } from "../lib/schemas.js"; import { RequestOptions } from "../lib/sdks.js"; import { extractSecurity, resolveGlobalSecurity } from "../lib/security.js"; import { pathToFunc } from "../lib/url.js"; @@ -16,6 +18,10 @@ import { UnexpectedClientError, } from "../models/errors/httpclienterrors.js"; import { SDKValidationError } from "../models/errors/sdkvalidationerror.js"; +import { + TrustPortalControllerUpdateOverviewV1Request, + TrustPortalControllerUpdateOverviewV1Request$zodSchema, +} from "../models/trustportalcontrollerupdateoverviewv1op.js"; import { APICall, APIPromise } from "../types/async.js"; import { Result } from "../types/fp.js"; @@ -29,6 +35,7 @@ import { Result } from "../types/fp.js"; */ export function trustPortalTrustPortalControllerUpdateOverviewV1( client$: CompAiCore, + request: TrustPortalControllerUpdateOverviewV1Request, options?: RequestOptions, ): APIPromise< Result< @@ -44,12 +51,14 @@ export function trustPortalTrustPortalControllerUpdateOverviewV1( > { return new APIPromise($do( client$, + request, options, )); } async function $do( client$: CompAiCore, + request: TrustPortalControllerUpdateOverviewV1Request, options?: RequestOptions, ): Promise< [ @@ -66,9 +75,21 @@ async function $do( APICall, ] > { + const parsed$ = safeParse( + request, + (value$) => + TrustPortalControllerUpdateOverviewV1Request$zodSchema.parse(value$), + "Input validation failed", + ); + if (!parsed$.ok) { + return [parsed$, { status: "invalid" }]; + } + const payload$ = parsed$.value; + const body$ = encodeJSON("body", payload$, { explode: true }); const path$ = pathToFunc("/v1/trust-portal/overview")(); const headers$ = new Headers(compactMap({ + "Content-Type": "application/json", Accept: "*/*", })); const securityInput = await extractSecurity(client$._options.security); @@ -99,6 +120,7 @@ async function $do( baseURL: options?.serverURL, path: path$, headers: headers$, + body: body$, userAgent: client$._options.userAgent, timeoutMs: options?.timeoutMs || client$._options.timeoutMs || 120000, diff --git a/apps/mcp-server/src/landing-page.ts b/apps/mcp-server/src/landing-page.ts index c5c0b22284..33a7ef2adb 100644 --- a/apps/mcp-server/src/landing-page.ts +++ b/apps/mcp-server/src/landing-page.ts @@ -930,7 +930,7 @@ http_headers = { "apikey" = "YOUR_APIKEY" }`;

Instructions

One-click installation for Claude Desktop users

diff --git a/apps/mcp-server/src/lib/config.ts b/apps/mcp-server/src/lib/config.ts index 1e35fc2946..1ea3e3c6c6 100644 --- a/apps/mcp-server/src/lib/config.ts +++ b/apps/mcp-server/src/lib/config.ts @@ -65,8 +65,8 @@ export function serverURLFromOptions(options: SDKOptions): URL | null { export const SDK_METADATA = { language: "typescript", openapiDocVersion: "1.0", - sdkVersion: "0.2.3", - genVersion: "2.918.3", + sdkVersion: "0.2.4", + genVersion: "2.918.4", userAgent: - "speakeasy-sdk/mcp-typescript 0.2.3 2.918.3 1.0 @trycompai/mcp-server", + "speakeasy-sdk/mcp-typescript 0.2.4 2.918.4 1.0 @trycompai/mcp-server", } as const; diff --git a/apps/mcp-server/src/mcp-server/mcp-server.ts b/apps/mcp-server/src/mcp-server/mcp-server.ts index a8425607e4..19a01c68f5 100644 --- a/apps/mcp-server/src/mcp-server/mcp-server.ts +++ b/apps/mcp-server/src/mcp-server/mcp-server.ts @@ -21,7 +21,7 @@ const routes = buildRouteMap({ export const app = buildApplication(routes, { name: "mcp", versionInfo: { - currentVersion: "0.2.3", + currentVersion: "0.2.4", }, }); diff --git a/apps/mcp-server/src/mcp-server/server.ts b/apps/mcp-server/src/mcp-server/server.ts index fa33b10cdf..b6e5dc6744 100644 --- a/apps/mcp-server/src/mcp-server/server.ts +++ b/apps/mcp-server/src/mcp-server/server.ts @@ -145,6 +145,7 @@ import { tool$ismsISMSControllerSubmitForApprovalV1 } from "./tools/ismsISMSCont import { tool$ismsISMSProfileControllerGenerateAllV1 } from "./tools/ismsISMSProfileControllerGenerateAllV1.js"; import { tool$ismsISMSProfileControllerGetProfileV1 } from "./tools/ismsISMSProfileControllerGetProfileV1.js"; import { tool$ismsISMSProfileControllerSaveProfileV1 } from "./tools/ismsISMSProfileControllerSaveProfileV1.js"; +import { tool$ismsISMSRegistersControllerBulkCreateMeasurementsV1 } from "./tools/ismsISMSRegistersControllerBulkCreateMeasurementsV1.js"; import { tool$ismsISMSRegistersControllerCreateRowV1 } from "./tools/ismsISMSRegistersControllerCreateRowV1.js"; import { tool$ismsISMSRegistersControllerDeleteRowV1 } from "./tools/ismsISMSRegistersControllerDeleteRowV1.js"; import { tool$ismsISMSRegistersControllerSaveNarrativeV1 } from "./tools/ismsISMSRegistersControllerSaveNarrativeV1.js"; @@ -403,7 +404,7 @@ export function createMCPServer(deps: { }) { const server = new McpServer({ name: "CompAi", - version: "0.2.3", + version: "0.2.4", }); const getClient = deps.getSDK || (() => @@ -762,6 +763,7 @@ export function createMCPServer(deps: { tool(tool$ismsISMSRegistersControllerCreateRowV1); tool(tool$ismsISMSRegistersControllerUpdateRowV1); tool(tool$ismsISMSRegistersControllerDeleteRowV1); + tool(tool$ismsISMSRegistersControllerBulkCreateMeasurementsV1); tool(tool$ismsISMSRegistersControllerSaveNarrativeV1); tool(tool$ismsISMSProfileControllerGetProfileV1); tool(tool$ismsISMSProfileControllerSaveProfileV1); diff --git a/apps/mcp-server/src/mcp-server/tools/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts b/apps/mcp-server/src/mcp-server/tools/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts new file mode 100644 index 0000000000..fc8eccb75b --- /dev/null +++ b/apps/mcp-server/src/mcp-server/tools/ismsISMSRegistersControllerBulkCreateMeasurementsV1.ts @@ -0,0 +1,45 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import { ismsISMSRegistersControllerBulkCreateMeasurementsV1 } from "../../funcs/ismsISMSRegistersControllerBulkCreateMeasurementsV1.js"; +import { IsmsRegistersControllerBulkCreateMeasurementsV1Request$zodSchema } from "../../models/ismsregisterscontrollerbulkcreatemeasurementsv1op.js"; +import { formatResult, ToolDefinition } from "../tools.js"; + +const args = { + request: IsmsRegistersControllerBulkCreateMeasurementsV1Request$zodSchema, +}; + +export const tool$ismsISMSRegistersControllerBulkCreateMeasurementsV1: + ToolDefinition = { + name: "bulk-create-measurements", + description: + `Record measurements for several metrics/periods in one save (Metrics due / backfill) + +Record measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI.`, + annotations: { + "title": "", + "destructiveHint": false, + "idempotentHint": false, + "openWorldHint": false, + "readOnlyHint": false, + }, + args, + tool: async (client, args, ctx) => { + const [result] = + await ismsISMSRegistersControllerBulkCreateMeasurementsV1( + client, + args.request, + { fetchOptions: { signal: ctx.signal } }, + ).$inspect(); + + if (!result.ok) { + return { + content: [{ type: "text", text: result.error.message }], + isError: true, + }; + } + + return formatResult(result.value); + }, + }; diff --git a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerCreateCustomLinkV1.ts b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerCreateCustomLinkV1.ts index dc8e27c12f..09ade3156a 100644 --- a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerCreateCustomLinkV1.ts +++ b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerCreateCustomLinkV1.ts @@ -3,10 +3,15 @@ */ import { trustPortalTrustPortalControllerCreateCustomLinkV1 } from "../../funcs/trustPortalTrustPortalControllerCreateCustomLinkV1.js"; +import { TrustPortalControllerCreateCustomLinkV1Request$zodSchema } from "../../models/trustportalcontrollercreatecustomlinkv1op.js"; import { formatResult, ToolDefinition } from "../tools.js"; +const args = { + request: TrustPortalControllerCreateCustomLinkV1Request$zodSchema, +}; + export const tool$trustPortalTrustPortalControllerCreateCustomLinkV1: - ToolDefinition = { + ToolDefinition = { name: "create-custom-link", description: `Create a custom link for trust portal @@ -18,9 +23,11 @@ Create a custom link for trust portal in Comp AI. Configure the live Trust Cente "openWorldHint": false, "readOnlyHint": false, }, - tool: async (client, ctx) => { + args, + tool: async (client, args, ctx) => { const [result] = await trustPortalTrustPortalControllerCreateCustomLinkV1( client, + args.request, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); diff --git a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerReorderCustomLinksV1.ts b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerReorderCustomLinksV1.ts index bd9204a0a9..7a96a1f04e 100644 --- a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerReorderCustomLinksV1.ts +++ b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerReorderCustomLinksV1.ts @@ -3,10 +3,15 @@ */ import { trustPortalTrustPortalControllerReorderCustomLinksV1 } from "../../funcs/trustPortalTrustPortalControllerReorderCustomLinksV1.js"; +import { TrustPortalControllerReorderCustomLinksV1Request$zodSchema } from "../../models/trustportalcontrollerreordercustomlinksv1op.js"; import { formatResult, ToolDefinition } from "../tools.js"; +const args = { + request: TrustPortalControllerReorderCustomLinksV1Request$zodSchema, +}; + export const tool$trustPortalTrustPortalControllerReorderCustomLinksV1: - ToolDefinition = { + ToolDefinition = { name: "reorder-custom-links", description: `Reorder custom links @@ -18,10 +23,12 @@ Reorder custom links in Comp AI. Configure the live Trust Center, custom domain, "openWorldHint": false, "readOnlyHint": false, }, - tool: async (client, ctx) => { + args, + tool: async (client, args, ctx) => { const [result] = await trustPortalTrustPortalControllerReorderCustomLinksV1( client, + args.request, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); diff --git a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateFaqsV1.ts b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateFaqsV1.ts index 68543e20aa..ae7d900dbd 100644 --- a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateFaqsV1.ts +++ b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateFaqsV1.ts @@ -3,34 +3,42 @@ */ import { trustPortalTrustPortalControllerUpdateFaqsV1 } from "../../funcs/trustPortalTrustPortalControllerUpdateFaqsV1.js"; +import { TrustPortalControllerUpdateFaqsV1Request$zodSchema } from "../../models/trustportalcontrollerupdatefaqsv1op.js"; import { formatResult, ToolDefinition } from "../tools.js"; -export const tool$trustPortalTrustPortalControllerUpdateFaqsV1: ToolDefinition = - { - name: "update-faqs", - description: `Update trust portal FAQs +const args = { + request: TrustPortalControllerUpdateFaqsV1Request$zodSchema, +}; + +export const tool$trustPortalTrustPortalControllerUpdateFaqsV1: ToolDefinition< + typeof args +> = { + name: "update-faqs", + description: `Update trust portal FAQs Update trust portal FAQs in Comp AI. Configure the live Trust Center, custom domain, public overview, FAQs, compliance resources, documents, links, and vendor disclosures.`, - annotations: { - "title": "", - "destructiveHint": false, - "idempotentHint": false, - "openWorldHint": false, - "readOnlyHint": false, - }, - tool: async (client, ctx) => { - const [result] = await trustPortalTrustPortalControllerUpdateFaqsV1( - client, - { fetchOptions: { signal: ctx.signal } }, - ).$inspect(); + annotations: { + "title": "", + "destructiveHint": false, + "idempotentHint": false, + "openWorldHint": false, + "readOnlyHint": false, + }, + args, + tool: async (client, args, ctx) => { + const [result] = await trustPortalTrustPortalControllerUpdateFaqsV1( + client, + args.request, + { fetchOptions: { signal: ctx.signal } }, + ).$inspect(); - if (!result.ok) { - return { - content: [{ type: "text", text: result.error.message }], - isError: true, - }; - } + if (!result.ok) { + return { + content: [{ type: "text", text: result.error.message }], + isError: true, + }; + } - return formatResult(result.value); - }, - }; + return formatResult(result.value); + }, +}; diff --git a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateOverviewV1.ts b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateOverviewV1.ts index 2fa110ca68..e384121ce1 100644 --- a/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateOverviewV1.ts +++ b/apps/mcp-server/src/mcp-server/tools/trustPortalTrustPortalControllerUpdateOverviewV1.ts @@ -3,10 +3,15 @@ */ import { trustPortalTrustPortalControllerUpdateOverviewV1 } from "../../funcs/trustPortalTrustPortalControllerUpdateOverviewV1.js"; +import { TrustPortalControllerUpdateOverviewV1Request$zodSchema } from "../../models/trustportalcontrollerupdateoverviewv1op.js"; import { formatResult, ToolDefinition } from "../tools.js"; +const args = { + request: TrustPortalControllerUpdateOverviewV1Request$zodSchema, +}; + export const tool$trustPortalTrustPortalControllerUpdateOverviewV1: - ToolDefinition = { + ToolDefinition = { name: "update-overview", description: `Update Trust Center overview @@ -18,9 +23,11 @@ Update the public Trust Center overview content that explains security posture a "openWorldHint": false, "readOnlyHint": false, }, - tool: async (client, ctx) => { + args, + tool: async (client, args, ctx) => { const [result] = await trustPortalTrustPortalControllerUpdateOverviewV1( client, + args.request, { fetchOptions: { signal: ctx.signal } }, ).$inspect(); diff --git a/apps/mcp-server/src/models/controlscontrollerunlinkdocumenttypev1op.ts b/apps/mcp-server/src/models/controlscontrollerunlinkdocumenttypev1op.ts index de7cbf43a1..b2838291c4 100644 --- a/apps/mcp-server/src/models/controlscontrollerunlinkdocumenttypev1op.ts +++ b/apps/mcp-server/src/models/controlscontrollerunlinkdocumenttypev1op.ts @@ -55,8 +55,8 @@ export const ControlsControllerUnlinkDocumentTypeV1Security$zodSchema: export type ControlsControllerUnlinkDocumentTypeV1Request = { id: string; - frameworkInstanceId: string; formType: ControlsControllerUnlinkDocumentTypeV1FormType; + frameworkInstanceId: string; }; export const ControlsControllerUnlinkDocumentTypeV1Request$zodSchema: z.ZodType< diff --git a/apps/mcp-server/src/models/createpolicyversiondto.ts b/apps/mcp-server/src/models/createpolicyversiondto.ts new file mode 100644 index 0000000000..b56a62765d --- /dev/null +++ b/apps/mcp-server/src/models/createpolicyversiondto.ts @@ -0,0 +1,21 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export type CreatePolicyVersionDto = { + sourceVersionId?: string | undefined; + changelog?: string | undefined; +}; + +export const CreatePolicyVersionDto$zodSchema: z.ZodType< + CreatePolicyVersionDto +> = z.object({ + changelog: z.string().optional().describe( + "Optional changelog to associate with the new version", + ), + sourceVersionId: z.string().optional().describe( + "Optional version ID to base the new version on", + ), +}); diff --git a/apps/mcp-server/src/models/ismsregisterscontrollerbulkcreatemeasurementsv1op.ts b/apps/mcp-server/src/models/ismsregisterscontrollerbulkcreatemeasurementsv1op.ts new file mode 100644 index 0000000000..55137a1418 --- /dev/null +++ b/apps/mcp-server/src/models/ismsregisterscontrollerbulkcreatemeasurementsv1op.ts @@ -0,0 +1,49 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export type Measurement = { + metricId: string; + periodStart: string; + value: string; + note?: string | null | undefined; +}; + +export const Measurement$zodSchema: z.ZodType = z.object({ + metricId: z.string(), + note: z.string().nullable().optional(), + periodStart: z.string(), + value: z.string(), +}); + +/** + * Measurements to record in one save (Metrics due / backfill views) + */ +export type IsmsRegistersControllerBulkCreateMeasurementsV1RequestBody = { + measurements: Array; +}; + +export const IsmsRegistersControllerBulkCreateMeasurementsV1RequestBody$zodSchema: + z.ZodType = z + .object({ + measurements: z.array(z.lazy(() => Measurement$zodSchema)), + }).describe( + "Measurements to record in one save (Metrics due / backfill views)", + ); + +export type IsmsRegistersControllerBulkCreateMeasurementsV1Request = { + id: string; + body: IsmsRegistersControllerBulkCreateMeasurementsV1RequestBody; +}; + +export const IsmsRegistersControllerBulkCreateMeasurementsV1Request$zodSchema: + z.ZodType = z.object({ + body: z.lazy(() => + IsmsRegistersControllerBulkCreateMeasurementsV1RequestBody$zodSchema + ).describe( + "Measurements to record in one save (Metrics due / backfill views)", + ), + id: z.string(), + }); diff --git a/apps/mcp-server/src/models/ismsregisterscontrollercreaterowv1op.ts b/apps/mcp-server/src/models/ismsregisterscontrollercreaterowv1op.ts index 8506dc7ad1..c2ed8beb3a 100644 --- a/apps/mcp-server/src/models/ismsregisterscontrollercreaterowv1op.ts +++ b/apps/mcp-server/src/models/ismsregisterscontrollercreaterowv1op.ts @@ -23,6 +23,11 @@ export const IsmsRegistersControllerCreateRowV1Status = { OnTrack: "on_track", AtRisk: "at_risk", Met: "met", + Planned: "planned", + InProgress: "in_progress", + Complete: "complete", + Open: "open", + Closed: "closed", } as const; export type IsmsRegistersControllerCreateRowV1Status = ClosedEnum< typeof IsmsRegistersControllerCreateRowV1Status @@ -33,6 +38,11 @@ export const IsmsRegistersControllerCreateRowV1Status$zodSchema = z.enum([ "on_track", "at_risk", "met", + "planned", + "in_progress", + "complete", + "open", + "closed", ]); export const IsmsRegistersControllerCreateRowV1AuditRoute = { @@ -68,6 +78,56 @@ export const IsmsRegistersControllerCreateRowV1BasisOfCompetence$zodSchema = z "combination", ]); +export const IsmsRegistersControllerCreateRowV1ConclusionVerdict = { + Conform: "conform", + SubstantiallyConform: "substantially_conform", + NotYetConform: "not_yet_conform", +} as const; +export type IsmsRegistersControllerCreateRowV1ConclusionVerdict = ClosedEnum< + typeof IsmsRegistersControllerCreateRowV1ConclusionVerdict +>; + +export const IsmsRegistersControllerCreateRowV1ConclusionVerdict$zodSchema = z + .enum([ + "conform", + "substantially_conform", + "not_yet_conform", + ]); + +export const IsmsRegistersControllerCreateRowV1Result = { + ConformityConfirmed: "conformity_confirmed", + NonconformityRaised: "nonconformity_raised", + ObservationRaised: "observation_raised", + NotSampled: "not_sampled", +} as const; +export type IsmsRegistersControllerCreateRowV1Result = ClosedEnum< + typeof IsmsRegistersControllerCreateRowV1Result +>; + +export const IsmsRegistersControllerCreateRowV1Result$zodSchema = z.enum([ + "conformity_confirmed", + "nonconformity_raised", + "observation_raised", + "not_sampled", +]); + +export const IsmsRegistersControllerCreateRowV1Type = { + NcMajor: "nc_major", + NcMinor: "nc_minor", + Ofi: "ofi", + Observation: "observation", +} as const; +export type IsmsRegistersControllerCreateRowV1Type = ClosedEnum< + typeof IsmsRegistersControllerCreateRowV1Type +>; + +export const IsmsRegistersControllerCreateRowV1Type$zodSchema = z.enum([ + "nc_major", + "nc_minor", + "ofi", + "observation", +]); + /** * Register row fields (per-register; validated at runtime by zod) */ @@ -109,19 +169,59 @@ export type IsmsRegistersControllerCreateRowV1RequestBody = { gap?: string | null | undefined; remediationAction?: string | null | undefined; remediationDueDate?: string | null | undefined; + whatIsMeasured?: string | undefined; + method?: string | undefined; + monitorMemberId?: string | null | undefined; + analyzeMemberId?: string | null | undefined; + objectiveId?: string | null | undefined; + isActive?: boolean | undefined; + metricId?: string | undefined; + periodStart?: string | undefined; + value?: string | undefined; + note?: string | null | undefined; + scope?: string | undefined; + criteria?: string | undefined; + auditorName?: string | null | undefined; + plannedStartDate?: string | null | undefined; + plannedEndDate?: string | null | undefined; + conclusionVerdict?: + | IsmsRegistersControllerCreateRowV1ConclusionVerdict + | null + | undefined; + conclusionNotes?: string | null | undefined; + signoffAuditorName?: string | null | undefined; + signoffAuditorDate?: string | null | undefined; + signoffSpoName?: string | null | undefined; + signoffSpoDate?: string | null | undefined; + signoffTopMgmtName?: string | null | undefined; + signoffTopMgmtDate?: string | null | undefined; + auditId?: string | undefined; + controlRef?: string | undefined; + whatWasTested?: string | undefined; + whereToFind?: string | undefined; + result?: IsmsRegistersControllerCreateRowV1Result | null | undefined; + notes?: string | null | undefined; + type?: IsmsRegistersControllerCreateRowV1Type | undefined; + controlId?: string | null | undefined; + clauseOrControl?: string | null | undefined; + dueDate?: string | null | undefined; + closureEvidence?: string | null | undefined; position?: number | undefined; }; export const IsmsRegistersControllerCreateRowV1RequestBody$zodSchema: z.ZodType< IsmsRegistersControllerCreateRowV1RequestBody > = z.object({ + analyzeMemberId: z.string().nullable().optional(), auditCourse: z.string().nullable().optional(), auditDueDate: z.string().nullable().optional(), auditEvidenceRef: z.string().nullable().optional(), auditFirmName: z.string().nullable().optional(), + auditId: z.string().optional(), auditRoute: IsmsRegistersControllerCreateRowV1AuditRoute$zodSchema.nullable() .optional(), auditRouteMemberId: z.string().nullable().optional(), + auditorName: z.string().nullable().optional(), authorities: z.string().optional(), authorityGrantedBy: z.string().optional(), basisOfCompetence: @@ -129,30 +229,66 @@ export const IsmsRegistersControllerCreateRowV1RequestBody$zodSchema: z.ZodType< .optional(), cadence: z.string().optional(), category: z.string().optional(), + clauseOrControl: z.string().nullable().optional(), + closureEvidence: z.string().nullable().optional(), + conclusionNotes: z.string().nullable().optional(), + conclusionVerdict: + IsmsRegistersControllerCreateRowV1ConclusionVerdict$zodSchema.nullable() + .optional(), + controlId: z.string().nullable().optional(), + controlRef: z.string().optional(), + criteria: z.string().optional(), description: z.string().optional(), + dueDate: z.string().nullable().optional(), effect: z.string().optional(), evidenceRetained: z.string().nullable().optional(), gap: z.string().nullable().optional(), interestedPartyId: z.string().optional(), + isActive: z.boolean().optional(), kind: IsmsRegistersControllerCreateRowV1Kind$zodSchema.optional(), measurementMethod: z.string().optional(), memberId: z.string().optional(), + method: z.string().optional(), + metricId: z.string().optional(), + monitorMemberId: z.string().nullable().optional(), name: z.string().optional(), needsExpectations: z.string().optional(), + note: z.string().nullable().optional(), + notes: z.string().nullable().optional(), objective: z.string().optional(), + objectiveId: z.string().nullable().optional(), ownerMemberId: z.string().optional(), partyName: z.string().optional(), + periodStart: z.string().optional().describe( + "First day of the covered period (YYYY-MM-DD), aligned to the metric cadence", + ), plan: z.string().optional(), + plannedEndDate: z.string().nullable().optional(), + plannedStartDate: z.string().nullable().optional(), position: z.int().optional(), remediationAction: z.string().nullable().optional(), remediationDueDate: z.string().nullable().optional(), requiredCompetence: z.string().optional(), requirement: z.string().optional(), responsibilities: z.string().optional(), + result: IsmsRegistersControllerCreateRowV1Result$zodSchema.nullable() + .optional(), roleId: z.string().optional(), + scope: z.string().optional(), + signoffAuditorDate: z.string().nullable().optional(), + signoffAuditorName: z.string().nullable().optional(), + signoffSpoDate: z.string().nullable().optional(), + signoffSpoName: z.string().nullable().optional(), + signoffTopMgmtDate: z.string().nullable().optional(), + signoffTopMgmtName: z.string().nullable().optional(), status: IsmsRegistersControllerCreateRowV1Status$zodSchema.optional(), target: z.string().optional(), treatment: z.string().optional(), + type: IsmsRegistersControllerCreateRowV1Type$zodSchema.optional(), + value: z.string().optional(), + whatIsMeasured: z.string().optional(), + whatWasTested: z.string().optional(), + whereToFind: z.string().optional(), }).describe("Register row fields (per-register; validated at runtime by zod)"); export type IsmsRegistersControllerCreateRowV1Request = { diff --git a/apps/mcp-server/src/models/ismsregisterscontrollerupdaterowv1op.ts b/apps/mcp-server/src/models/ismsregisterscontrollerupdaterowv1op.ts index 2a9c700495..80f03aa774 100644 --- a/apps/mcp-server/src/models/ismsregisterscontrollerupdaterowv1op.ts +++ b/apps/mcp-server/src/models/ismsregisterscontrollerupdaterowv1op.ts @@ -23,6 +23,11 @@ export const IsmsRegistersControllerUpdateRowV1Status = { OnTrack: "on_track", AtRisk: "at_risk", Met: "met", + Planned: "planned", + InProgress: "in_progress", + Complete: "complete", + Open: "open", + Closed: "closed", } as const; export type IsmsRegistersControllerUpdateRowV1Status = ClosedEnum< typeof IsmsRegistersControllerUpdateRowV1Status @@ -33,6 +38,11 @@ export const IsmsRegistersControllerUpdateRowV1Status$zodSchema = z.enum([ "on_track", "at_risk", "met", + "planned", + "in_progress", + "complete", + "open", + "closed", ]); export const IsmsRegistersControllerUpdateRowV1AuditRoute = { @@ -68,6 +78,56 @@ export const IsmsRegistersControllerUpdateRowV1BasisOfCompetence$zodSchema = z "combination", ]); +export const IsmsRegistersControllerUpdateRowV1ConclusionVerdict = { + Conform: "conform", + SubstantiallyConform: "substantially_conform", + NotYetConform: "not_yet_conform", +} as const; +export type IsmsRegistersControllerUpdateRowV1ConclusionVerdict = ClosedEnum< + typeof IsmsRegistersControllerUpdateRowV1ConclusionVerdict +>; + +export const IsmsRegistersControllerUpdateRowV1ConclusionVerdict$zodSchema = z + .enum([ + "conform", + "substantially_conform", + "not_yet_conform", + ]); + +export const IsmsRegistersControllerUpdateRowV1Result = { + ConformityConfirmed: "conformity_confirmed", + NonconformityRaised: "nonconformity_raised", + ObservationRaised: "observation_raised", + NotSampled: "not_sampled", +} as const; +export type IsmsRegistersControllerUpdateRowV1Result = ClosedEnum< + typeof IsmsRegistersControllerUpdateRowV1Result +>; + +export const IsmsRegistersControllerUpdateRowV1Result$zodSchema = z.enum([ + "conformity_confirmed", + "nonconformity_raised", + "observation_raised", + "not_sampled", +]); + +export const IsmsRegistersControllerUpdateRowV1Type = { + NcMajor: "nc_major", + NcMinor: "nc_minor", + Ofi: "ofi", + Observation: "observation", +} as const; +export type IsmsRegistersControllerUpdateRowV1Type = ClosedEnum< + typeof IsmsRegistersControllerUpdateRowV1Type +>; + +export const IsmsRegistersControllerUpdateRowV1Type$zodSchema = z.enum([ + "nc_major", + "nc_minor", + "ofi", + "observation", +]); + /** * Register row fields (per-register; validated at runtime by zod) */ @@ -109,19 +169,59 @@ export type IsmsRegistersControllerUpdateRowV1RequestBody = { gap?: string | null | undefined; remediationAction?: string | null | undefined; remediationDueDate?: string | null | undefined; + whatIsMeasured?: string | undefined; + method?: string | undefined; + monitorMemberId?: string | null | undefined; + analyzeMemberId?: string | null | undefined; + objectiveId?: string | null | undefined; + isActive?: boolean | undefined; + metricId?: string | undefined; + periodStart?: string | undefined; + value?: string | undefined; + note?: string | null | undefined; + scope?: string | undefined; + criteria?: string | undefined; + auditorName?: string | null | undefined; + plannedStartDate?: string | null | undefined; + plannedEndDate?: string | null | undefined; + conclusionVerdict?: + | IsmsRegistersControllerUpdateRowV1ConclusionVerdict + | null + | undefined; + conclusionNotes?: string | null | undefined; + signoffAuditorName?: string | null | undefined; + signoffAuditorDate?: string | null | undefined; + signoffSpoName?: string | null | undefined; + signoffSpoDate?: string | null | undefined; + signoffTopMgmtName?: string | null | undefined; + signoffTopMgmtDate?: string | null | undefined; + auditId?: string | undefined; + controlRef?: string | undefined; + whatWasTested?: string | undefined; + whereToFind?: string | undefined; + result?: IsmsRegistersControllerUpdateRowV1Result | null | undefined; + notes?: string | null | undefined; + type?: IsmsRegistersControllerUpdateRowV1Type | undefined; + controlId?: string | null | undefined; + clauseOrControl?: string | null | undefined; + dueDate?: string | null | undefined; + closureEvidence?: string | null | undefined; position?: number | undefined; }; export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType< IsmsRegistersControllerUpdateRowV1RequestBody > = z.object({ + analyzeMemberId: z.string().nullable().optional(), auditCourse: z.string().nullable().optional(), auditDueDate: z.string().nullable().optional(), auditEvidenceRef: z.string().nullable().optional(), auditFirmName: z.string().nullable().optional(), + auditId: z.string().optional(), auditRoute: IsmsRegistersControllerUpdateRowV1AuditRoute$zodSchema.nullable() .optional(), auditRouteMemberId: z.string().nullable().optional(), + auditorName: z.string().nullable().optional(), authorities: z.string().optional(), authorityGrantedBy: z.string().optional(), basisOfCompetence: @@ -129,30 +229,66 @@ export const IsmsRegistersControllerUpdateRowV1RequestBody$zodSchema: z.ZodType< .optional(), cadence: z.string().optional(), category: z.string().optional(), + clauseOrControl: z.string().nullable().optional(), + closureEvidence: z.string().nullable().optional(), + conclusionNotes: z.string().nullable().optional(), + conclusionVerdict: + IsmsRegistersControllerUpdateRowV1ConclusionVerdict$zodSchema.nullable() + .optional(), + controlId: z.string().nullable().optional(), + controlRef: z.string().optional(), + criteria: z.string().optional(), description: z.string().optional(), + dueDate: z.string().nullable().optional(), effect: z.string().optional(), evidenceRetained: z.string().nullable().optional(), gap: z.string().nullable().optional(), interestedPartyId: z.string().optional(), + isActive: z.boolean().optional(), kind: IsmsRegistersControllerUpdateRowV1Kind$zodSchema.optional(), measurementMethod: z.string().optional(), memberId: z.string().optional(), + method: z.string().optional(), + metricId: z.string().optional(), + monitorMemberId: z.string().nullable().optional(), name: z.string().optional(), needsExpectations: z.string().optional(), + note: z.string().nullable().optional(), + notes: z.string().nullable().optional(), objective: z.string().optional(), + objectiveId: z.string().nullable().optional(), ownerMemberId: z.string().optional(), partyName: z.string().optional(), + periodStart: z.string().optional().describe( + "First day of the covered period (YYYY-MM-DD), aligned to the metric cadence", + ), plan: z.string().optional(), + plannedEndDate: z.string().nullable().optional(), + plannedStartDate: z.string().nullable().optional(), position: z.int().optional(), remediationAction: z.string().nullable().optional(), remediationDueDate: z.string().nullable().optional(), requiredCompetence: z.string().optional(), requirement: z.string().optional(), responsibilities: z.string().optional(), + result: IsmsRegistersControllerUpdateRowV1Result$zodSchema.nullable() + .optional(), roleId: z.string().optional(), + scope: z.string().optional(), + signoffAuditorDate: z.string().nullable().optional(), + signoffAuditorName: z.string().nullable().optional(), + signoffSpoDate: z.string().nullable().optional(), + signoffSpoName: z.string().nullable().optional(), + signoffTopMgmtDate: z.string().nullable().optional(), + signoffTopMgmtName: z.string().nullable().optional(), status: IsmsRegistersControllerUpdateRowV1Status$zodSchema.optional(), target: z.string().optional(), treatment: z.string().optional(), + type: IsmsRegistersControllerUpdateRowV1Type$zodSchema.optional(), + value: z.string().optional(), + whatIsMeasured: z.string().optional(), + whatWasTested: z.string().optional(), + whereToFind: z.string().optional(), }).describe("Register row fields (per-register; validated at runtime by zod)"); export type IsmsRegistersControllerUpdateRowV1Request = { diff --git a/apps/mcp-server/src/models/policiescontrollercreatepolicyversionv1op.ts b/apps/mcp-server/src/models/policiescontrollercreatepolicyversionv1op.ts index dfaa96ae17..0778ddef54 100644 --- a/apps/mcp-server/src/models/policiescontrollercreatepolicyversionv1op.ts +++ b/apps/mcp-server/src/models/policiescontrollercreatepolicyversionv1op.ts @@ -4,19 +4,19 @@ import * as z from "zod"; import { - CreateVersionDto, - CreateVersionDto$zodSchema, -} from "./createversiondto.js"; + CreatePolicyVersionDto, + CreatePolicyVersionDto$zodSchema, +} from "./createpolicyversiondto.js"; export type PoliciesControllerCreatePolicyVersionV1Request = { xOrganizationId?: string | undefined; id: string; - body: CreateVersionDto; + body: CreatePolicyVersionDto; }; export const PoliciesControllerCreatePolicyVersionV1Request$zodSchema: z.ZodType = z.object({ - body: CreateVersionDto$zodSchema.describe( + body: CreatePolicyVersionDto$zodSchema.describe( "Create a new policy version draft", ), id: z.string().describe("Policy ID"), diff --git a/apps/mcp-server/src/models/trustaccesscontrollergetfaqsv1op.ts b/apps/mcp-server/src/models/trustaccesscontrollergetfaqsv1op.ts index eaab1050b4..db5a2baba9 100644 --- a/apps/mcp-server/src/models/trustaccesscontrollergetfaqsv1op.ts +++ b/apps/mcp-server/src/models/trustaccesscontrollergetfaqsv1op.ts @@ -14,14 +14,16 @@ export const TrustAccessControllerGetFaqsV1Request$zodSchema: z.ZodType< ), }); -export type Faq = { +export type TrustAccessControllerGetFaqsV1Faq = { id?: string | undefined; question?: string | undefined; answer?: string | undefined; order?: number | undefined; }; -export const Faq$zodSchema: z.ZodType = z.object({ +export const TrustAccessControllerGetFaqsV1Faq$zodSchema: z.ZodType< + TrustAccessControllerGetFaqsV1Faq +> = z.object({ answer: z.string().optional(), id: z.string().optional(), order: z.number().optional(), @@ -32,11 +34,12 @@ export const Faq$zodSchema: z.ZodType = z.object({ * FAQs retrieved successfully */ export type TrustAccessControllerGetFaqsV1Response = { - faqs?: Array | null | undefined; + faqs?: Array | null | undefined; }; export const TrustAccessControllerGetFaqsV1Response$zodSchema: z.ZodType< TrustAccessControllerGetFaqsV1Response > = z.object({ - faqs: z.array(z.lazy(() => Faq$zodSchema)).nullable().optional(), + faqs: z.array(z.lazy(() => TrustAccessControllerGetFaqsV1Faq$zodSchema)) + .nullable().optional(), }).describe("FAQs retrieved successfully"); diff --git a/apps/mcp-server/src/models/trustportalcontrollercreatecustomlinkv1op.ts b/apps/mcp-server/src/models/trustportalcontrollercreatecustomlinkv1op.ts new file mode 100644 index 0000000000..d2a4e5f6dc --- /dev/null +++ b/apps/mcp-server/src/models/trustportalcontrollercreatecustomlinkv1op.ts @@ -0,0 +1,22 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export type TrustPortalControllerCreateCustomLinkV1Request = { + organizationId: string; + title: string; + description?: string | null | undefined; + url: string; +}; + +export const TrustPortalControllerCreateCustomLinkV1Request$zodSchema: + z.ZodType = z.object({ + description: z.string().nullable().optional(), + organizationId: z.string().describe( + "Organization that owns the trust portal. Must match the authenticated API key's organization.", + ), + title: z.string(), + url: z.string(), + }); diff --git a/apps/mcp-server/src/models/trustportalcontrollerreordercustomlinksv1op.ts b/apps/mcp-server/src/models/trustportalcontrollerreordercustomlinksv1op.ts new file mode 100644 index 0000000000..8982acdc7e --- /dev/null +++ b/apps/mcp-server/src/models/trustportalcontrollerreordercustomlinksv1op.ts @@ -0,0 +1,20 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export type TrustPortalControllerReorderCustomLinksV1Request = { + organizationId: string; + linkIds: Array; +}; + +export const TrustPortalControllerReorderCustomLinksV1Request$zodSchema: + z.ZodType = z.object({ + linkIds: z.array(z.string()).describe( + "Custom link IDs in the desired display order.", + ), + organizationId: z.string().describe( + "Organization that owns the trust portal. Must match the authenticated API key's organization.", + ), + }); diff --git a/apps/mcp-server/src/models/trustportalcontrollerupdatefaqsv1op.ts b/apps/mcp-server/src/models/trustportalcontrollerupdatefaqsv1op.ts new file mode 100644 index 0000000000..5935dc7df4 --- /dev/null +++ b/apps/mcp-server/src/models/trustportalcontrollerupdatefaqsv1op.ts @@ -0,0 +1,27 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export type TrustPortalControllerUpdateFaqsV1Faq = { + question: string; + answer: string; +}; + +export const TrustPortalControllerUpdateFaqsV1Faq$zodSchema: z.ZodType< + TrustPortalControllerUpdateFaqsV1Faq +> = z.object({ + answer: z.string(), + question: z.string(), +}); + +export type TrustPortalControllerUpdateFaqsV1Request = { + faqs: Array; +}; + +export const TrustPortalControllerUpdateFaqsV1Request$zodSchema: z.ZodType< + TrustPortalControllerUpdateFaqsV1Request +> = z.object({ + faqs: z.array(z.lazy(() => TrustPortalControllerUpdateFaqsV1Faq$zodSchema)), +}); diff --git a/apps/mcp-server/src/models/trustportalcontrollerupdateoverviewv1op.ts b/apps/mcp-server/src/models/trustportalcontrollerupdateoverviewv1op.ts new file mode 100644 index 0000000000..412ed48769 --- /dev/null +++ b/apps/mcp-server/src/models/trustportalcontrollerupdateoverviewv1op.ts @@ -0,0 +1,23 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +import * as z from "zod"; + +export type TrustPortalControllerUpdateOverviewV1Request = { + organizationId: string; + overviewTitle?: string | null | undefined; + overviewContent?: string | null | undefined; + showOverview?: boolean | undefined; +}; + +export const TrustPortalControllerUpdateOverviewV1Request$zodSchema: z.ZodType< + TrustPortalControllerUpdateOverviewV1Request +> = z.object({ + organizationId: z.string().describe( + "Organization that owns the trust portal. Must match the authenticated API key's organization.", + ), + overviewContent: z.string().nullable().optional(), + overviewTitle: z.string().nullable().optional(), + showOverview: z.boolean().optional(), +}); diff --git a/apps/mcp-server/src/tool-names.ts b/apps/mcp-server/src/tool-names.ts index 9a9ccbe30b..16bca9c208 100644 --- a/apps/mcp-server/src/tool-names.ts +++ b/apps/mcp-server/src/tool-names.ts @@ -1240,6 +1240,10 @@ export const toolNames: Array<{ name: string; description: string }>= [ "name": "delete-row", "description": "Delete a row in an ISMS register\n\nDelete a row in an ISMS register in Comp AI." }, + { + "name": "bulk-create-measurements", + "description": "Record measurements for several metrics/periods in one save (Metrics due / backfill)\n\nRecord measurements for several metrics/periods in one save (Metrics due / backfill) in Comp AI." + }, { "name": "save-narrative", "description": "Save a singleton document narrative\n\nSave a singleton document narrative in Comp AI."