@cubis/foundry 0.3.33 → 0.3.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (591) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +56 -11
  3. package/bin/cubis.js +2809 -965
  4. package/mcp/.dockerignore +5 -0
  5. package/mcp/Dockerfile +19 -0
  6. package/mcp/README.md +550 -11
  7. package/mcp/config.json +18 -0
  8. package/mcp/dist/index.d.ts +1 -0
  9. package/mcp/dist/index.js +1488 -0
  10. package/mcp/package.json +36 -0
  11. package/mcp/src/cbxConfig/index.ts +23 -0
  12. package/mcp/src/cbxConfig/paths.ts +45 -0
  13. package/mcp/src/cbxConfig/reader.ts +149 -0
  14. package/mcp/src/cbxConfig/readerWriter.test.ts +147 -0
  15. package/mcp/src/cbxConfig/serviceConfig.test.ts +42 -0
  16. package/mcp/src/cbxConfig/serviceConfig.ts +157 -0
  17. package/mcp/src/cbxConfig/types.ts +44 -0
  18. package/mcp/src/cbxConfig/writer.ts +90 -0
  19. package/mcp/src/config/index.test.ts +81 -0
  20. package/mcp/src/config/index.ts +45 -0
  21. package/mcp/src/config/schema.ts +55 -0
  22. package/mcp/src/gateway/catalog.ts +37 -0
  23. package/mcp/src/gateway/config.ts +247 -0
  24. package/mcp/src/gateway/manager.ts +255 -0
  25. package/mcp/src/gateway/types.ts +54 -0
  26. package/mcp/src/gateway/upstreamClient.ts +80 -0
  27. package/mcp/src/index.ts +211 -0
  28. package/mcp/src/server.ts +219 -0
  29. package/mcp/src/tools/configTools.test.ts +166 -0
  30. package/mcp/src/tools/future/README.md +21 -0
  31. package/mcp/src/tools/future/index.ts +8 -0
  32. package/mcp/src/tools/index.ts +76 -0
  33. package/mcp/src/tools/mcpGateway.ts +44 -0
  34. package/mcp/src/tools/postmanGetMode.ts +82 -0
  35. package/mcp/src/tools/postmanGetStatus.ts +65 -0
  36. package/mcp/src/tools/postmanModes.ts +28 -0
  37. package/mcp/src/tools/postmanSetMode.ts +71 -0
  38. package/mcp/src/tools/skillBrowseCategory.ts +54 -0
  39. package/mcp/src/tools/skillGet.ts +43 -0
  40. package/mcp/src/tools/skillListCategories.ts +40 -0
  41. package/mcp/src/tools/skillSearch.ts +72 -0
  42. package/mcp/src/tools/skillTools.test.ts +126 -0
  43. package/mcp/src/tools/stitchGetMode.ts +58 -0
  44. package/mcp/src/tools/stitchGetStatus.ts +70 -0
  45. package/mcp/src/tools/stitchSetProfile.ts +82 -0
  46. package/mcp/src/transports/stdio.ts +9 -0
  47. package/mcp/src/transports/streamableHttp.ts +43 -0
  48. package/mcp/src/upstream/passthrough.ts +273 -0
  49. package/mcp/src/utils/errors.ts +38 -0
  50. package/mcp/src/utils/logger.ts +63 -0
  51. package/mcp/src/vault/manifest.test.ts +126 -0
  52. package/mcp/src/vault/manifest.ts +99 -0
  53. package/mcp/src/vault/scanner.test.ts +70 -0
  54. package/mcp/src/vault/scanner.ts +145 -0
  55. package/mcp/src/vault/types.ts +21 -0
  56. package/package.json +9 -2
  57. package/workflows/scripts/generate-powers.mjs +27 -18
  58. package/workflows/skills/skills_index.json +0 -102
  59. package/workflows/workflows/agent-environment-setup/manifest.json +0 -24
  60. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/nextjs-react-expert/SKILL.md +1 -1
  61. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/skills_index.json +0 -102
  62. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/nextjs-react-expert/SKILL.md +1 -1
  63. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/skills_index.json +0 -102
  64. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/nextjs-react-expert/SKILL.md +1 -1
  65. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/skills_index.json +0 -102
  66. package/mcp/catalogs/default.json +0 -14
  67. package/mcp/powers/atlassian-mcp/POWER.md +0 -91
  68. package/mcp/powers/atlassian-mcp/SKILL.md +0 -88
  69. package/mcp/powers/atlassian-mcp/steering/authentication-patterns.md +0 -520
  70. package/mcp/powers/atlassian-mcp/steering/common-workflows.md +0 -660
  71. package/mcp/powers/atlassian-mcp/steering/confluence-operations.md +0 -528
  72. package/mcp/powers/atlassian-mcp/steering/jira-queries.md +0 -421
  73. package/mcp/powers/atlassian-mcp/steering/mcp-server-setup.md +0 -292
  74. package/mcp/powers/building-mcp-server-on-cloudflare/POWER.md +0 -261
  75. package/mcp/powers/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  76. package/mcp/powers/building-mcp-server-on-cloudflare/steering/examples.md +0 -115
  77. package/mcp/powers/building-mcp-server-on-cloudflare/steering/oauth-setup.md +0 -338
  78. package/mcp/powers/building-mcp-server-on-cloudflare/steering/troubleshooting.md +0 -317
  79. package/mcp/powers/datadog-automation/POWER.md +0 -238
  80. package/mcp/powers/datadog-automation/SKILL.md +0 -235
  81. package/mcp/powers/github-automation/POWER.md +0 -230
  82. package/mcp/powers/github-automation/SKILL.md +0 -227
  83. package/mcp/powers/mcp-builder/LICENSE.txt +0 -202
  84. package/mcp/powers/mcp-builder/POWER.md +0 -179
  85. package/mcp/powers/mcp-builder/SKILL.md +0 -176
  86. package/mcp/powers/mcp-builder/reference/evaluation.md +0 -602
  87. package/mcp/powers/mcp-builder/reference/mcp_best_practices.md +0 -915
  88. package/mcp/powers/mcp-builder/reference/node_mcp_server.md +0 -916
  89. package/mcp/powers/mcp-builder/reference/python_mcp_server.md +0 -752
  90. package/mcp/powers/mcp-builder/scripts/connections.py +0 -151
  91. package/mcp/powers/mcp-builder/scripts/evaluation.py +0 -373
  92. package/mcp/powers/mcp-builder/scripts/example_evaluation.xml +0 -22
  93. package/mcp/powers/mcp-builder/scripts/requirements.txt +0 -2
  94. package/mcp/powers/mcp-developer/POWER.md +0 -88
  95. package/mcp/powers/mcp-developer/SKILL.md +0 -85
  96. package/mcp/powers/mcp-developer/steering/protocol.md +0 -244
  97. package/mcp/powers/mcp-developer/steering/python-sdk.md +0 -367
  98. package/mcp/powers/mcp-developer/steering/resources.md +0 -554
  99. package/mcp/powers/mcp-developer/steering/tools.md +0 -480
  100. package/mcp/powers/mcp-developer/steering/typescript-sdk.md +0 -350
  101. package/mcp/powers/postman/POWER.md +0 -243
  102. package/mcp/powers/postman/SKILL.md +0 -240
  103. package/mcp/powers/postman/flutter-expert/POWER.md +0 -89
  104. package/mcp/powers/postman/flutter-expert/SKILL.md +0 -77
  105. package/mcp/powers/postman/flutter-expert/steering/bloc-state.md +0 -259
  106. package/mcp/powers/postman/flutter-expert/steering/engineering-principles.md +0 -82
  107. package/mcp/powers/postman/flutter-expert/steering/gorouter-navigation.md +0 -157
  108. package/mcp/powers/postman/flutter-expert/steering/performance.md +0 -99
  109. package/mcp/powers/postman/flutter-expert/steering/project-structure.md +0 -77
  110. package/mcp/powers/postman/flutter-expert/steering/riverpod-state.md +0 -404
  111. package/mcp/powers/postman/flutter-expert/steering/widget-patterns.md +0 -123
  112. package/mcp/powers/postman/flutter-security-reviewer/POWER.md +0 -204
  113. package/mcp/powers/postman/flutter-security-reviewer/SKILL.md +0 -180
  114. package/mcp/powers/postman/flutter-security-reviewer/steering/log_redaction.md +0 -17
  115. package/mcp/powers/postman/flutter-security-reviewer/steering/network_hardening.md +0 -13
  116. package/mcp/powers/postman/flutter-security-reviewer/steering/secret-scanning.md +0 -123
  117. package/mcp/powers/postman/flutter-security-reviewer/steering/secure_storage_policy.md +0 -16
  118. package/mcp/powers/postman/flutter-security-reviewer/steering/vulnerability-patterns.md +0 -189
  119. package/mcp/powers/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  120. package/mcp/powers/postman/flutter-test-master/POWER.md +0 -527
  121. package/mcp/powers/postman/flutter-test-master/SKILL.md +0 -513
  122. package/mcp/powers/postman/flutter-test-master/steering/golden-testing.md +0 -444
  123. package/mcp/powers/postman/flutter-test-master/steering/integration-testing.md +0 -688
  124. package/mcp/powers/postman/flutter-test-master/steering/property-testing.md +0 -408
  125. package/mcp/powers/postman/flutter-test-master/steering/riverpod-testing.md +0 -606
  126. package/mcp/powers/postman/flutter-test-master/steering/test-utilities.md +0 -566
  127. package/mcp/powers/postman/flutter-test-master/steering/unit-testing.md +0 -511
  128. package/mcp/powers/postman/flutter-test-master/steering/widget-testing.md +0 -601
  129. package/mcp/powers/postman/git-commit/POWER.md +0 -47
  130. package/mcp/powers/postman/git-commit/SKILL.md +0 -46
  131. package/mcp/powers/postman/gorouter-restoration/POWER.md +0 -227
  132. package/mcp/powers/postman/gorouter-restoration/SKILL.md +0 -217
  133. package/mcp/powers/postman/gorouter-restoration/steering/guard_patterns.md +0 -14
  134. package/mcp/powers/postman/gorouter-restoration/steering/tab_preservation.md +0 -12
  135. package/mcp/powers/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  136. package/mcp/powers/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  137. package/mcp/powers/postman/mcp.json +0 -11
  138. package/mcp/powers/postman/microservices-architect/POWER.md +0 -109
  139. package/mcp/powers/postman/microservices-architect/SKILL.md +0 -93
  140. package/mcp/powers/postman/microservices-architect/steering/communication.md +0 -499
  141. package/mcp/powers/postman/microservices-architect/steering/data.md +0 -721
  142. package/mcp/powers/postman/microservices-architect/steering/decomposition.md +0 -344
  143. package/mcp/powers/postman/microservices-architect/steering/observability.md +0 -805
  144. package/mcp/powers/postman/microservices-architect/steering/patterns.md +0 -603
  145. package/mcp/powers/postman/nestjs-expert/POWER.md +0 -130
  146. package/mcp/powers/postman/nestjs-expert/SKILL.md +0 -114
  147. package/mcp/powers/postman/nestjs-expert/steering/authentication.md +0 -461
  148. package/mcp/powers/postman/nestjs-expert/steering/controllers-routing.md +0 -114
  149. package/mcp/powers/postman/nestjs-expert/steering/dtos-validation.md +0 -156
  150. package/mcp/powers/postman/nestjs-expert/steering/migration-from-express.md +0 -1240
  151. package/mcp/powers/postman/nestjs-expert/steering/secure-sessions.md +0 -56
  152. package/mcp/powers/postman/nestjs-expert/steering/services-di.md +0 -143
  153. package/mcp/powers/postman/nestjs-expert/steering/strangler-fig-pattern.md +0 -47
  154. package/mcp/powers/postman/nestjs-expert/steering/testing-patterns.md +0 -189
  155. package/mcp/powers/postman/oneup-design/POWER.md +0 -72
  156. package/mcp/powers/postman/oneup-design/SKILL.md +0 -71
  157. package/mcp/powers/postman/oneup-design/steering/colors.md +0 -41
  158. package/mcp/powers/postman/oneup-design/steering/components.md +0 -53
  159. package/mcp/powers/postman/oneup-design/steering/spacing.md +0 -84
  160. package/mcp/powers/postman/openapi-docs/POWER.md +0 -78
  161. package/mcp/powers/postman/openapi-docs/SKILL.md +0 -68
  162. package/mcp/powers/postman/openapi-docs/steering/crud-templates.md +0 -43
  163. package/mcp/powers/postman/openapi-docs/steering/framework-express.md +0 -19
  164. package/mcp/powers/postman/openapi-docs/steering/framework-fastapi.md +0 -20
  165. package/mcp/powers/postman/openapi-docs/steering/framework-nestjs.md +0 -20
  166. package/mcp/powers/postman/openapi-docs/steering/framework-raw-openapi.md +0 -14
  167. package/mcp/powers/postman/openapi-docs/steering/openapi-checklist.md +0 -33
  168. package/mcp/powers/postman/openapi-docs/steering/stoplight-ui.md +0 -21
  169. package/mcp/powers/postman/steering/steering.md +0 -26
  170. package/mcp/powers/sentry-automation/POWER.md +0 -235
  171. package/mcp/powers/sentry-automation/SKILL.md +0 -232
  172. package/mcp/skills/atlassian-mcp/SKILL.md +0 -88
  173. package/mcp/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  174. package/mcp/skills/atlassian-mcp/references/common-workflows.md +0 -660
  175. package/mcp/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  176. package/mcp/skills/atlassian-mcp/references/jira-queries.md +0 -421
  177. package/mcp/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  178. package/mcp/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  179. package/mcp/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  180. package/mcp/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  181. package/mcp/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  182. package/mcp/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  183. package/mcp/skills/datadog-automation/SKILL.md +0 -235
  184. package/mcp/skills/github-automation/SKILL.md +0 -227
  185. package/mcp/skills/mcp-builder/LICENSE.txt +0 -202
  186. package/mcp/skills/mcp-builder/SKILL.md +0 -176
  187. package/mcp/skills/mcp-builder/reference/evaluation.md +0 -602
  188. package/mcp/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  189. package/mcp/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  190. package/mcp/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  191. package/mcp/skills/mcp-builder/scripts/connections.py +0 -151
  192. package/mcp/skills/mcp-builder/scripts/evaluation.py +0 -373
  193. package/mcp/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  194. package/mcp/skills/mcp-builder/scripts/requirements.txt +0 -2
  195. package/mcp/skills/mcp-developer/SKILL.md +0 -85
  196. package/mcp/skills/mcp-developer/references/protocol.md +0 -244
  197. package/mcp/skills/mcp-developer/references/python-sdk.md +0 -367
  198. package/mcp/skills/mcp-developer/references/resources.md +0 -554
  199. package/mcp/skills/mcp-developer/references/tools.md +0 -480
  200. package/mcp/skills/mcp-developer/references/typescript-sdk.md +0 -350
  201. package/mcp/skills/postman/POWER.md +0 -242
  202. package/mcp/skills/postman/SKILL.md +0 -240
  203. package/mcp/skills/postman/flutter-expert/POWER.md +0 -89
  204. package/mcp/skills/postman/flutter-expert/SKILL.md +0 -77
  205. package/mcp/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  206. package/mcp/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  207. package/mcp/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  208. package/mcp/skills/postman/flutter-expert/references/performance.md +0 -99
  209. package/mcp/skills/postman/flutter-expert/references/project-structure.md +0 -77
  210. package/mcp/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  211. package/mcp/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  212. package/mcp/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  213. package/mcp/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  214. package/mcp/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  215. package/mcp/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  216. package/mcp/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  217. package/mcp/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  218. package/mcp/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  219. package/mcp/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  220. package/mcp/skills/postman/flutter-test-master/POWER.md +0 -527
  221. package/mcp/skills/postman/flutter-test-master/SKILL.md +0 -513
  222. package/mcp/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  223. package/mcp/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  224. package/mcp/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  225. package/mcp/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  226. package/mcp/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  227. package/mcp/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  228. package/mcp/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  229. package/mcp/skills/postman/git-commit/POWER.md +0 -47
  230. package/mcp/skills/postman/git-commit/SKILL.md +0 -46
  231. package/mcp/skills/postman/gorouter-restoration/POWER.md +0 -227
  232. package/mcp/skills/postman/gorouter-restoration/SKILL.md +0 -217
  233. package/mcp/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  234. package/mcp/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  235. package/mcp/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  236. package/mcp/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  237. package/mcp/skills/postman/mcp.json +0 -11
  238. package/mcp/skills/postman/microservices-architect/POWER.md +0 -109
  239. package/mcp/skills/postman/microservices-architect/SKILL.md +0 -93
  240. package/mcp/skills/postman/microservices-architect/references/communication.md +0 -499
  241. package/mcp/skills/postman/microservices-architect/references/data.md +0 -721
  242. package/mcp/skills/postman/microservices-architect/references/decomposition.md +0 -344
  243. package/mcp/skills/postman/microservices-architect/references/observability.md +0 -805
  244. package/mcp/skills/postman/microservices-architect/references/patterns.md +0 -603
  245. package/mcp/skills/postman/nestjs-expert/POWER.md +0 -130
  246. package/mcp/skills/postman/nestjs-expert/SKILL.md +0 -114
  247. package/mcp/skills/postman/nestjs-expert/references/authentication.md +0 -461
  248. package/mcp/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  249. package/mcp/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  250. package/mcp/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  251. package/mcp/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  252. package/mcp/skills/postman/nestjs-expert/references/services-di.md +0 -143
  253. package/mcp/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  254. package/mcp/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  255. package/mcp/skills/postman/oneup-design/POWER.md +0 -72
  256. package/mcp/skills/postman/oneup-design/SKILL.md +0 -71
  257. package/mcp/skills/postman/oneup-design/references/colors.md +0 -41
  258. package/mcp/skills/postman/oneup-design/references/components.md +0 -53
  259. package/mcp/skills/postman/oneup-design/references/spacing.md +0 -84
  260. package/mcp/skills/postman/openapi-docs/POWER.md +0 -78
  261. package/mcp/skills/postman/openapi-docs/SKILL.md +0 -68
  262. package/mcp/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  263. package/mcp/skills/postman/openapi-docs/references/framework-express.md +0 -19
  264. package/mcp/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  265. package/mcp/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  266. package/mcp/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  267. package/mcp/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  268. package/mcp/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  269. package/mcp/skills/postman/references/steering.md +0 -26
  270. package/mcp/skills/sentry-automation/SKILL.md +0 -232
  271. package/workflows/powers/atlassian-mcp/POWER.md +0 -21
  272. package/workflows/powers/atlassian-mcp/SKILL.md +0 -18
  273. package/workflows/powers/building-mcp-server-on-cloudflare/POWER.md +0 -21
  274. package/workflows/powers/building-mcp-server-on-cloudflare/SKILL.md +0 -18
  275. package/workflows/powers/datadog-automation/POWER.md +0 -21
  276. package/workflows/powers/datadog-automation/SKILL.md +0 -18
  277. package/workflows/powers/github-automation/POWER.md +0 -21
  278. package/workflows/powers/github-automation/SKILL.md +0 -18
  279. package/workflows/powers/mcp-builder/POWER.md +0 -21
  280. package/workflows/powers/mcp-builder/SKILL.md +0 -18
  281. package/workflows/powers/mcp-developer/POWER.md +0 -21
  282. package/workflows/powers/mcp-developer/SKILL.md +0 -18
  283. package/workflows/powers/postman/POWER.md +0 -21
  284. package/workflows/powers/postman/SKILL.md +0 -18
  285. package/workflows/powers/sentry-automation/POWER.md +0 -21
  286. package/workflows/powers/sentry-automation/SKILL.md +0 -18
  287. package/workflows/skills/atlassian-mcp/SKILL.md +0 -18
  288. package/workflows/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -18
  289. package/workflows/skills/datadog-automation/SKILL.md +0 -18
  290. package/workflows/skills/github-automation/SKILL.md +0 -18
  291. package/workflows/skills/mcp-builder/SKILL.md +0 -18
  292. package/workflows/skills/mcp-developer/SKILL.md +0 -18
  293. package/workflows/skills/postman/SKILL.md +0 -18
  294. package/workflows/skills/sentry-automation/SKILL.md +0 -18
  295. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/SKILL.md +0 -88
  296. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  297. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/common-workflows.md +0 -660
  298. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  299. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/jira-queries.md +0 -421
  300. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  301. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  302. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  303. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  304. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  305. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  306. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/datadog-automation/SKILL.md +0 -235
  307. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/github-automation/SKILL.md +0 -227
  308. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/LICENSE.txt +0 -202
  309. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/SKILL.md +0 -176
  310. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/evaluation.md +0 -602
  311. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  312. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  313. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  314. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/connections.py +0 -151
  315. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/evaluation.py +0 -373
  316. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  317. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-builder/scripts/requirements.txt +0 -2
  318. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/SKILL.md +0 -85
  319. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/protocol.md +0 -244
  320. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/python-sdk.md +0 -367
  321. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/resources.md +0 -554
  322. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/tools.md +0 -480
  323. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/mcp-developer/references/typescript-sdk.md +0 -350
  324. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/POWER.md +0 -242
  325. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/SKILL.md +0 -240
  326. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/POWER.md +0 -89
  327. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/SKILL.md +0 -77
  328. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  329. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  330. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  331. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/performance.md +0 -99
  332. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/project-structure.md +0 -77
  333. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  334. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  335. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  336. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  337. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  338. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  339. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  340. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  341. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  342. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  343. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/POWER.md +0 -527
  344. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/SKILL.md +0 -513
  345. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  346. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  347. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  348. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  349. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  350. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  351. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  352. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/git-commit/POWER.md +0 -47
  353. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/git-commit/SKILL.md +0 -46
  354. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/POWER.md +0 -227
  355. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/SKILL.md +0 -217
  356. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  357. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  358. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  359. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  360. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/mcp.json +0 -11
  361. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/POWER.md +0 -109
  362. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/SKILL.md +0 -93
  363. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/communication.md +0 -499
  364. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/data.md +0 -721
  365. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/decomposition.md +0 -344
  366. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/observability.md +0 -805
  367. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/microservices-architect/references/patterns.md +0 -603
  368. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/POWER.md +0 -130
  369. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/SKILL.md +0 -114
  370. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/authentication.md +0 -461
  371. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  372. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  373. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  374. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  375. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/services-di.md +0 -143
  376. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  377. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  378. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/POWER.md +0 -72
  379. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/SKILL.md +0 -71
  380. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/references/colors.md +0 -41
  381. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/references/components.md +0 -53
  382. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/oneup-design/references/spacing.md +0 -84
  383. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/POWER.md +0 -78
  384. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/SKILL.md +0 -68
  385. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  386. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-express.md +0 -19
  387. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  388. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  389. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  390. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  391. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  392. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/postman/references/steering.md +0 -26
  393. package/workflows/workflows/agent-environment-setup/platforms/copilot/skills/sentry-automation/SKILL.md +0 -232
  394. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/SKILL.md +0 -88
  395. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  396. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/common-workflows.md +0 -660
  397. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  398. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/jira-queries.md +0 -421
  399. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  400. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  401. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  402. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  403. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  404. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  405. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/datadog-automation/SKILL.md +0 -235
  406. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/github-automation/SKILL.md +0 -227
  407. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/LICENSE.txt +0 -202
  408. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/SKILL.md +0 -176
  409. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/evaluation.md +0 -602
  410. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  411. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  412. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  413. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/connections.py +0 -151
  414. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/evaluation.py +0 -373
  415. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  416. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-builder/scripts/requirements.txt +0 -2
  417. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/SKILL.md +0 -85
  418. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/protocol.md +0 -244
  419. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/python-sdk.md +0 -367
  420. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/resources.md +0 -554
  421. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/tools.md +0 -480
  422. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/mcp-developer/references/typescript-sdk.md +0 -350
  423. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/POWER.md +0 -242
  424. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/SKILL.md +0 -240
  425. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/POWER.md +0 -89
  426. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/SKILL.md +0 -77
  427. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  428. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  429. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  430. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/performance.md +0 -99
  431. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/project-structure.md +0 -77
  432. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  433. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  434. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  435. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  436. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  437. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  438. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  439. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  440. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  441. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  442. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/POWER.md +0 -527
  443. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/SKILL.md +0 -513
  444. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  445. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  446. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  447. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  448. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  449. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  450. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  451. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/git-commit/POWER.md +0 -47
  452. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/git-commit/SKILL.md +0 -46
  453. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/POWER.md +0 -227
  454. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/SKILL.md +0 -217
  455. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  456. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  457. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  458. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  459. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/mcp.json +0 -11
  460. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/POWER.md +0 -109
  461. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/SKILL.md +0 -93
  462. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/communication.md +0 -499
  463. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/data.md +0 -721
  464. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/decomposition.md +0 -344
  465. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/observability.md +0 -805
  466. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/microservices-architect/references/patterns.md +0 -603
  467. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/POWER.md +0 -130
  468. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/SKILL.md +0 -114
  469. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/authentication.md +0 -461
  470. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  471. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  472. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  473. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  474. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/services-di.md +0 -143
  475. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  476. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  477. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/POWER.md +0 -72
  478. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/SKILL.md +0 -71
  479. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/references/colors.md +0 -41
  480. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/references/components.md +0 -53
  481. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/oneup-design/references/spacing.md +0 -84
  482. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/POWER.md +0 -78
  483. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/SKILL.md +0 -68
  484. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  485. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-express.md +0 -19
  486. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  487. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  488. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  489. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  490. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  491. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/postman/references/steering.md +0 -26
  492. package/workflows/workflows/agent-environment-setup/platforms/cursor/skills/sentry-automation/SKILL.md +0 -232
  493. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/SKILL.md +0 -88
  494. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/authentication-patterns.md +0 -520
  495. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/common-workflows.md +0 -660
  496. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/confluence-operations.md +0 -528
  497. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/jira-queries.md +0 -421
  498. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/atlassian-mcp/references/mcp-server-setup.md +0 -292
  499. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/SKILL.md +0 -258
  500. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/examples.md +0 -115
  501. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/oauth-setup.md +0 -338
  502. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/tool-patterns.md +0 -29
  503. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/building-mcp-server-on-cloudflare/references/troubleshooting.md +0 -317
  504. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/datadog-automation/SKILL.md +0 -235
  505. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/github-automation/SKILL.md +0 -227
  506. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/LICENSE.txt +0 -202
  507. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/SKILL.md +0 -176
  508. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/evaluation.md +0 -602
  509. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/mcp_best_practices.md +0 -915
  510. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/node_mcp_server.md +0 -916
  511. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/reference/python_mcp_server.md +0 -752
  512. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/connections.py +0 -151
  513. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/evaluation.py +0 -373
  514. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  515. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-builder/scripts/requirements.txt +0 -2
  516. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/SKILL.md +0 -85
  517. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/protocol.md +0 -244
  518. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/python-sdk.md +0 -367
  519. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/resources.md +0 -554
  520. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/tools.md +0 -480
  521. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/mcp-developer/references/typescript-sdk.md +0 -350
  522. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/POWER.md +0 -242
  523. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/SKILL.md +0 -240
  524. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/POWER.md +0 -89
  525. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/SKILL.md +0 -77
  526. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/bloc-state.md +0 -259
  527. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/engineering-principles.md +0 -82
  528. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/gorouter-navigation.md +0 -157
  529. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/performance.md +0 -99
  530. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/project-structure.md +0 -77
  531. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/riverpod-state.md +0 -404
  532. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-expert/references/widget-patterns.md +0 -123
  533. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/POWER.md +0 -204
  534. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/SKILL.md +0 -180
  535. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/log_redaction.md +0 -17
  536. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/network_hardening.md +0 -13
  537. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/secret-scanning.md +0 -123
  538. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/secure_storage_policy.md +0 -16
  539. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/references/vulnerability-patterns.md +0 -189
  540. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-security-reviewer/templates/security_review_response.md +0 -31
  541. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/POWER.md +0 -527
  542. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/SKILL.md +0 -513
  543. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/golden-testing.md +0 -444
  544. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/integration-testing.md +0 -688
  545. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/property-testing.md +0 -408
  546. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/riverpod-testing.md +0 -606
  547. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/test-utilities.md +0 -566
  548. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/unit-testing.md +0 -511
  549. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/flutter-test-master/references/widget-testing.md +0 -601
  550. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/git-commit/POWER.md +0 -47
  551. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/git-commit/SKILL.md +0 -46
  552. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/POWER.md +0 -227
  553. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/SKILL.md +0 -217
  554. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/references/guard_patterns.md +0 -14
  555. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/references/tab_preservation.md +0 -12
  556. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/templates/guard_redirect.md +0 -30
  557. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/gorouter-restoration/templates/stateful_shell_skeleton.md +0 -40
  558. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/mcp.json +0 -11
  559. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/POWER.md +0 -109
  560. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/SKILL.md +0 -93
  561. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/communication.md +0 -499
  562. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/data.md +0 -721
  563. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/decomposition.md +0 -344
  564. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/observability.md +0 -805
  565. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/microservices-architect/references/patterns.md +0 -603
  566. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/POWER.md +0 -130
  567. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/SKILL.md +0 -114
  568. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/authentication.md +0 -461
  569. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/controllers-routing.md +0 -114
  570. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/dtos-validation.md +0 -156
  571. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/migration-from-express.md +0 -1240
  572. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/secure-sessions.md +0 -56
  573. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/services-di.md +0 -143
  574. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/strangler-fig-pattern.md +0 -47
  575. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/nestjs-expert/references/testing-patterns.md +0 -189
  576. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/POWER.md +0 -72
  577. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/SKILL.md +0 -71
  578. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/references/colors.md +0 -41
  579. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/references/components.md +0 -53
  580. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/oneup-design/references/spacing.md +0 -84
  581. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/POWER.md +0 -78
  582. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/SKILL.md +0 -68
  583. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/crud-templates.md +0 -43
  584. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-express.md +0 -19
  585. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-fastapi.md +0 -20
  586. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-nestjs.md +0 -20
  587. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/framework-raw-openapi.md +0 -14
  588. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/openapi-checklist.md +0 -33
  589. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/openapi-docs/references/stoplight-ui.md +0 -21
  590. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/postman/references/steering.md +0 -26
  591. package/workflows/workflows/agent-environment-setup/platforms/windsurf/skills/sentry-automation/SKILL.md +0 -232
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Cubis Foundry MCP Server – Streamable HTTP transport adapter.
3
+ *
4
+ * Uses the SDK's StreamableHTTPServerTransport for remote connections.
5
+ * Binds to localhost by default (security: prevents DNS rebinding).
6
+ */
7
+
8
+ import { createServer, type Server } from "node:http";
9
+ import { StreamableHTTPServerTransport } from "@modelcontextprotocol/sdk/server/streamableHttp.js";
10
+ import { logger } from "../utils/logger.js";
11
+
12
+ export interface HttpTransportOptions {
13
+ port: number;
14
+ host: string;
15
+ }
16
+
17
+ export function createStreamableHttpTransport(options: HttpTransportOptions): {
18
+ transport: StreamableHTTPServerTransport;
19
+ httpServer: Server;
20
+ } {
21
+ const transport = new StreamableHTTPServerTransport({
22
+ sessionIdGenerator: () => crypto.randomUUID(),
23
+ });
24
+
25
+ const httpServer = createServer(async (req, res) => {
26
+ // Only handle the /mcp endpoint
27
+ const url = new URL(req.url ?? "/", `http://${req.headers.host}`);
28
+ if (url.pathname !== "/mcp") {
29
+ res.writeHead(404, { "Content-Type": "text/plain" });
30
+ res.end("Not Found");
31
+ return;
32
+ }
33
+ await transport.handleRequest(req, res);
34
+ });
35
+
36
+ httpServer.listen(options.port, options.host, () => {
37
+ logger.info(
38
+ `Streamable HTTP transport listening on http://${options.host}:${options.port}/mcp`,
39
+ );
40
+ });
41
+
42
+ return { transport, httpServer };
43
+ }
@@ -0,0 +1,273 @@
1
+ /**
2
+ * Cubis Foundry MCP Server – upstream Postman/Stitch passthrough support.
3
+ */
4
+
5
+ import { mkdir, writeFile } from "node:fs/promises";
6
+ import path from "node:path";
7
+ import { Client } from "@modelcontextprotocol/sdk/client/index.js";
8
+ import { StreamableHTTPClientTransport } from "@modelcontextprotocol/sdk/client/streamableHttp.js";
9
+ import {
10
+ parsePostmanState,
11
+ parseStitchState,
12
+ readEffectiveConfig,
13
+ } from "../cbxConfig/index.js";
14
+ import type { CbxConfig } from "../cbxConfig/types.js";
15
+
16
+ type ServiceId = "postman" | "stitch";
17
+
18
+ export interface UpstreamToolInfo {
19
+ name: string;
20
+ namespacedName: string;
21
+ description?: string;
22
+ inputSchema?: unknown;
23
+ outputSchema?: unknown;
24
+ }
25
+
26
+ export interface UpstreamCatalog {
27
+ service: ServiceId;
28
+ configured: boolean;
29
+ mcpUrl: string | null;
30
+ activeProfileName: string | null;
31
+ envVar: string | null;
32
+ scope: "global" | "project" | null;
33
+ configPath: string | null;
34
+ toolCount: number;
35
+ tools: UpstreamToolInfo[];
36
+ discoveryError?: string;
37
+ }
38
+
39
+ function resolveCatalogDir(configPath: string): string {
40
+ const configDir = path.dirname(configPath);
41
+ if (path.basename(configDir) === ".cbx") {
42
+ return path.join(configDir, "mcp", "catalog");
43
+ }
44
+ return path.join(configDir, ".cbx", "mcp", "catalog");
45
+ }
46
+
47
+ function getServiceAuth(config: CbxConfig, service: ServiceId): {
48
+ mcpUrl: string | null;
49
+ activeProfileName: string | null;
50
+ envVar: string | null;
51
+ headers: Record<string, string>;
52
+ configured: boolean;
53
+ error?: string;
54
+ } {
55
+ if (service === "postman") {
56
+ const state = parsePostmanState(config);
57
+ const activeProfile = state.activeProfile;
58
+ const envVar = activeProfile?.apiKeyEnvVar ?? "POSTMAN_API_KEY";
59
+ const token = process.env[envVar]?.trim();
60
+ if (!token) {
61
+ return {
62
+ mcpUrl: state.mcpUrl,
63
+ activeProfileName: state.activeProfileName,
64
+ envVar,
65
+ headers: {},
66
+ configured: false,
67
+ error: `Missing Postman key env var: ${envVar}`,
68
+ };
69
+ }
70
+ return {
71
+ mcpUrl: state.mcpUrl,
72
+ activeProfileName: state.activeProfileName,
73
+ envVar,
74
+ headers: { Authorization: `Bearer ${token}` },
75
+ configured: Boolean(state.mcpUrl),
76
+ };
77
+ }
78
+
79
+ const state = parseStitchState(config);
80
+ const activeProfile = state.activeProfile;
81
+ const envVar = activeProfile?.apiKeyEnvVar ?? "STITCH_API_KEY";
82
+ const token = process.env[envVar]?.trim();
83
+ if (!token && !state.useSystemGcloud) {
84
+ return {
85
+ mcpUrl: state.mcpUrl,
86
+ activeProfileName: state.activeProfileName,
87
+ envVar,
88
+ headers: {},
89
+ configured: false,
90
+ error: `Missing Stitch key env var: ${envVar}`,
91
+ };
92
+ }
93
+ return {
94
+ mcpUrl: state.mcpUrl,
95
+ activeProfileName: state.activeProfileName,
96
+ envVar,
97
+ headers: token ? { "X-Goog-Api-Key": token } : {},
98
+ configured: Boolean(state.mcpUrl),
99
+ };
100
+ }
101
+
102
+ async function withUpstreamClient<T>({
103
+ url,
104
+ headers,
105
+ fn,
106
+ }: {
107
+ url: string;
108
+ headers: Record<string, string>;
109
+ fn: (client: Client) => Promise<T>;
110
+ }): Promise<T> {
111
+ const client = new Client(
112
+ {
113
+ name: "cubis-foundry-mcp-passthrough",
114
+ version: "0.1.0",
115
+ },
116
+ {
117
+ capabilities: {},
118
+ },
119
+ );
120
+ const transport = new StreamableHTTPClientTransport(new URL(url), {
121
+ requestInit: { headers },
122
+ });
123
+ await client.connect(transport);
124
+ try {
125
+ return await fn(client);
126
+ } finally {
127
+ await client.close();
128
+ }
129
+ }
130
+
131
+ async function persistCatalog(catalog: UpstreamCatalog): Promise<void> {
132
+ if (!catalog.configPath) return;
133
+ const catalogDir = resolveCatalogDir(catalog.configPath);
134
+ const catalogPath = path.join(catalogDir, `${catalog.service}.json`);
135
+ const payload = {
136
+ schemaVersion: 1,
137
+ generatedAt: new Date().toISOString(),
138
+ generatedBy: "cubis-foundry-mcp startup discovery",
139
+ service: catalog.service,
140
+ scope: catalog.scope,
141
+ mcpUrl: catalog.mcpUrl,
142
+ activeProfileName: catalog.activeProfileName,
143
+ envVar: catalog.envVar,
144
+ toolCount: catalog.toolCount,
145
+ tools: catalog.tools.map((tool) => ({
146
+ name: tool.name,
147
+ description: tool.description ?? null,
148
+ inputSchema: tool.inputSchema ?? null,
149
+ outputSchema: tool.outputSchema ?? null,
150
+ })),
151
+ discoveryError: catalog.discoveryError ?? null,
152
+ };
153
+ await mkdir(catalogDir, { recursive: true });
154
+ await writeFile(catalogPath, `${JSON.stringify(payload, null, 2)}\n`, "utf8");
155
+ }
156
+
157
+ export async function discoverUpstreamCatalogs(): Promise<{
158
+ postman: UpstreamCatalog;
159
+ stitch: UpstreamCatalog;
160
+ }> {
161
+ const effective = readEffectiveConfig("auto");
162
+ if (!effective) {
163
+ const missing: UpstreamCatalog = {
164
+ service: "postman",
165
+ configured: false,
166
+ mcpUrl: null,
167
+ activeProfileName: null,
168
+ envVar: null,
169
+ scope: null,
170
+ configPath: null,
171
+ toolCount: 0,
172
+ tools: [],
173
+ discoveryError: "cbx_config.json not found",
174
+ };
175
+ const missingStitch: UpstreamCatalog = { ...missing, service: "stitch" };
176
+ return {
177
+ postman: missing,
178
+ stitch: missingStitch,
179
+ };
180
+ }
181
+
182
+ const baseInfo = {
183
+ scope: effective.scope,
184
+ configPath: effective.path,
185
+ } as const;
186
+
187
+ const discoverOne = async (service: ServiceId): Promise<UpstreamCatalog> => {
188
+ const auth = getServiceAuth(effective.config, service);
189
+ const catalog: UpstreamCatalog = {
190
+ service,
191
+ configured: auth.configured,
192
+ mcpUrl: auth.mcpUrl,
193
+ activeProfileName: auth.activeProfileName,
194
+ envVar: auth.envVar,
195
+ scope: baseInfo.scope,
196
+ configPath: baseInfo.configPath,
197
+ toolCount: 0,
198
+ tools: [],
199
+ discoveryError: auth.error,
200
+ };
201
+
202
+ if (!auth.configured || !auth.mcpUrl || auth.error) {
203
+ await persistCatalog(catalog);
204
+ return catalog;
205
+ }
206
+
207
+ try {
208
+ const listed = await withUpstreamClient({
209
+ url: auth.mcpUrl,
210
+ headers: auth.headers,
211
+ fn: async (client) => client.listTools(),
212
+ });
213
+ const rawTools = Array.isArray(listed.tools) ? listed.tools : [];
214
+ catalog.tools = rawTools
215
+ .map((tool) => {
216
+ const name = typeof tool?.name === "string" ? tool.name.trim() : "";
217
+ if (!name) return null;
218
+ return {
219
+ name,
220
+ namespacedName: `${service}.${name}`,
221
+ description:
222
+ typeof tool?.description === "string" ? tool.description : undefined,
223
+ inputSchema: tool?.inputSchema ?? undefined,
224
+ outputSchema: tool?.outputSchema ?? undefined,
225
+ } satisfies UpstreamToolInfo;
226
+ })
227
+ .filter((tool): tool is UpstreamToolInfo => Boolean(tool));
228
+ catalog.toolCount = catalog.tools.length;
229
+ } catch (error) {
230
+ catalog.discoveryError = `Tool discovery failed: ${String(error)}`;
231
+ }
232
+
233
+ await persistCatalog(catalog);
234
+ return catalog;
235
+ };
236
+
237
+ return {
238
+ postman: await discoverOne("postman"),
239
+ stitch: await discoverOne("stitch"),
240
+ };
241
+ }
242
+
243
+ export async function callUpstreamTool({
244
+ service,
245
+ name,
246
+ argumentsValue,
247
+ }: {
248
+ service: ServiceId;
249
+ name: string;
250
+ argumentsValue: Record<string, unknown>;
251
+ }) {
252
+ const effective = readEffectiveConfig("auto");
253
+ if (!effective) {
254
+ throw new Error("cbx_config.json not found");
255
+ }
256
+ const auth = getServiceAuth(effective.config, service);
257
+ if (!auth.configured || !auth.mcpUrl) {
258
+ throw new Error(auth.error || `${service} is not configured`);
259
+ }
260
+ if (auth.error) {
261
+ throw new Error(auth.error);
262
+ }
263
+
264
+ return withUpstreamClient({
265
+ url: auth.mcpUrl,
266
+ headers: auth.headers,
267
+ fn: async (client) =>
268
+ client.callTool({
269
+ name,
270
+ arguments: argumentsValue,
271
+ }),
272
+ });
273
+ }
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Cubis Foundry MCP Server – error utilities.
3
+ *
4
+ * Provides structured MCP-compatible error helpers.
5
+ */
6
+
7
+ import { McpError, ErrorCode } from "@modelcontextprotocol/sdk/types.js";
8
+
9
+ /** Throw when a tool receives invalid input that passes Zod but fails domain validation. */
10
+ export function invalidInput(message: string): never {
11
+ throw new McpError(ErrorCode.InvalidParams, message);
12
+ }
13
+
14
+ /** Throw when a required config file is missing. */
15
+ export function configNotFound(): never {
16
+ throw new McpError(
17
+ ErrorCode.InternalError,
18
+ "cbx_config.json not found. Run cbx workflows config --scope global --show to diagnose.",
19
+ );
20
+ }
21
+
22
+ /** Throw for unknown Postman mode URL found in config. */
23
+ export function unknownPostmanMode(url: string): never {
24
+ throw new McpError(
25
+ ErrorCode.InvalidParams,
26
+ `Unknown Postman MCP URL in config: "${url}". Expected one of: https://mcp.postman.com/minimal, https://mcp.postman.com/code, https://mcp.postman.com/mcp`,
27
+ );
28
+ }
29
+
30
+ /** Throw when a vault skill or category is not found. */
31
+ export function notFound(entity: string, id: string): never {
32
+ throw new McpError(ErrorCode.InvalidParams, `${entity} not found: "${id}"`);
33
+ }
34
+
35
+ /** Throw for any internal server error with a message. */
36
+ export function internalError(message: string): never {
37
+ throw new McpError(ErrorCode.InternalError, message);
38
+ }
@@ -0,0 +1,63 @@
1
+ /**
2
+ * Cubis Foundry MCP Server – utilities / structured logger.
3
+ *
4
+ * ALL log output goes to stderr so stdio transport stays clean.
5
+ */
6
+
7
+ export type LogLevel = "debug" | "info" | "warn" | "error";
8
+
9
+ const LEVEL_ORDER: Record<LogLevel, number> = {
10
+ debug: 0,
11
+ info: 1,
12
+ warn: 2,
13
+ error: 3,
14
+ };
15
+
16
+ let currentLevel: LogLevel = "info";
17
+
18
+ export function setLogLevel(level: LogLevel): void {
19
+ currentLevel = level;
20
+ }
21
+
22
+ function shouldLog(level: LogLevel): boolean {
23
+ return LEVEL_ORDER[level] >= LEVEL_ORDER[currentLevel];
24
+ }
25
+
26
+ function ts(): string {
27
+ return new Date().toISOString();
28
+ }
29
+
30
+ export const logger = {
31
+ debug(msg: string, data?: unknown): void {
32
+ if (shouldLog("debug")) {
33
+ process.stderr.write(
34
+ `[${ts()}] DEBUG ${msg}${data ? ` ${JSON.stringify(data)}` : ""}\n`,
35
+ );
36
+ }
37
+ },
38
+ info(msg: string, data?: unknown): void {
39
+ if (shouldLog("info")) {
40
+ process.stderr.write(
41
+ `[${ts()}] INFO ${msg}${data ? ` ${JSON.stringify(data)}` : ""}\n`,
42
+ );
43
+ }
44
+ },
45
+ warn(msg: string, data?: unknown): void {
46
+ if (shouldLog("warn")) {
47
+ process.stderr.write(
48
+ `[${ts()}] WARN ${msg}${data ? ` ${JSON.stringify(data)}` : ""}\n`,
49
+ );
50
+ }
51
+ },
52
+ error(msg: string, data?: unknown): void {
53
+ if (shouldLog("error")) {
54
+ process.stderr.write(
55
+ `[${ts()}] ERROR ${msg}${data ? ` ${JSON.stringify(data)}` : ""}\n`,
56
+ );
57
+ }
58
+ },
59
+ /** Raw line to stderr (no timestamp/level prefix). Used for startup banners. */
60
+ raw(msg: string): void {
61
+ process.stderr.write(`${msg}\n`);
62
+ },
63
+ };
@@ -0,0 +1,126 @@
1
+ import { afterEach, describe, expect, it } from "vitest";
2
+ import { mkdtempSync, rmSync, writeFileSync } from "node:fs";
3
+ import os from "node:os";
4
+ import path from "node:path";
5
+ import {
6
+ enrichWithDescriptions,
7
+ extractDescription,
8
+ parseDescriptionFromFrontmatter,
9
+ readFullSkillContent,
10
+ } from "./manifest.js";
11
+
12
+ const tempDirs: string[] = [];
13
+
14
+ function createTempDir(prefix: string): string {
15
+ const dir = mkdtempSync(path.join(os.tmpdir(), prefix));
16
+ tempDirs.push(dir);
17
+ return dir;
18
+ }
19
+
20
+ afterEach(() => {
21
+ while (tempDirs.length > 0) {
22
+ const dir = tempDirs.pop();
23
+ if (dir) {
24
+ rmSync(dir, { recursive: true, force: true });
25
+ }
26
+ }
27
+ });
28
+
29
+ describe("frontmatter description parsing", () => {
30
+ it("extracts a quoted description", () => {
31
+ const content = [
32
+ "---",
33
+ 'name: "react-expert"',
34
+ 'description: "React architecture and performance best practices"',
35
+ "---",
36
+ "# React Expert",
37
+ ].join("\n");
38
+
39
+ expect(parseDescriptionFromFrontmatter(content, 200)).toBe(
40
+ "React architecture and performance best practices",
41
+ );
42
+ });
43
+
44
+ it("truncates long descriptions with ellipsis", () => {
45
+ const content = [
46
+ "---",
47
+ "name: long-skill",
48
+ "description: This is a very long description for testing truncation behavior",
49
+ "---",
50
+ ].join("\n");
51
+
52
+ expect(parseDescriptionFromFrontmatter(content, 24)).toBe(
53
+ "This is a very long d...",
54
+ );
55
+ });
56
+
57
+ it("returns undefined when frontmatter description is missing", () => {
58
+ const content = ["---", "name: no-description", "---", "# Body"].join("\n");
59
+ expect(parseDescriptionFromFrontmatter(content, 100)).toBeUndefined();
60
+ });
61
+ });
62
+
63
+ describe("skill content IO", () => {
64
+ it("extracts description from file content", async () => {
65
+ const dir = createTempDir("mcp-manifest-");
66
+ const file = path.join(dir, "SKILL.md");
67
+ writeFileSync(
68
+ file,
69
+ ["---", "name: test-skill", "description: Fast API design patterns", "---"].join(
70
+ "\n",
71
+ ),
72
+ "utf8",
73
+ );
74
+
75
+ await expect(extractDescription(file, 100)).resolves.toBe(
76
+ "Fast API design patterns",
77
+ );
78
+ });
79
+
80
+ it("returns undefined when file cannot be read", async () => {
81
+ await expect(extractDescription("/missing/skill.md", 100)).resolves.toBeUndefined();
82
+ });
83
+
84
+ it("returns full skill file contents", async () => {
85
+ const dir = createTempDir("mcp-full-read-");
86
+ const file = path.join(dir, "SKILL.md");
87
+ const body = "---\nname: full-read\ndescription: Full body\n---\n# Content";
88
+ writeFileSync(file, body, "utf8");
89
+
90
+ await expect(readFullSkillContent(file)).resolves.toBe(body);
91
+ });
92
+ });
93
+
94
+ describe("manifest enrichment", () => {
95
+ it("enriches missing descriptions and keeps existing descriptions", async () => {
96
+ const dir = createTempDir("mcp-enrich-");
97
+ const fileA = path.join(dir, "a.md");
98
+ const fileB = path.join(dir, "b.md");
99
+ writeFileSync(
100
+ fileA,
101
+ ["---", "name: alpha", "description: Alpha description", "---"].join("\n"),
102
+ "utf8",
103
+ );
104
+ writeFileSync(
105
+ fileB,
106
+ ["---", "name: beta", "description: Beta description", "---"].join("\n"),
107
+ "utf8",
108
+ );
109
+
110
+ const enriched = await enrichWithDescriptions(
111
+ [
112
+ { id: "alpha", category: "general", path: fileA },
113
+ {
114
+ id: "beta",
115
+ category: "general",
116
+ path: fileB,
117
+ description: "Already populated",
118
+ },
119
+ ],
120
+ 100,
121
+ );
122
+
123
+ expect(enriched[0].description).toBe("Alpha description");
124
+ expect(enriched[1].description).toBe("Already populated");
125
+ });
126
+ });
@@ -0,0 +1,99 @@
1
+ /**
2
+ * Cubis Foundry MCP Server – vault manifest.
3
+ *
4
+ * Browse/search operations extract frontmatter description only (truncated).
5
+ * Full SKILL.md content is read only by skill_get.
6
+ */
7
+
8
+ import { readFile } from "node:fs/promises";
9
+ import type { SkillPointer, VaultManifest } from "./types.js";
10
+ import { logger } from "../utils/logger.js";
11
+
12
+ /**
13
+ * Build a VaultManifest from scanned skill pointers.
14
+ * Categories are derived from the pointers.
15
+ */
16
+ export function buildManifest(skills: SkillPointer[]): VaultManifest {
17
+ const categorySet = new Set<string>();
18
+ for (const skill of skills) {
19
+ categorySet.add(skill.category);
20
+ }
21
+ return {
22
+ categories: [...categorySet].sort(),
23
+ skills,
24
+ };
25
+ }
26
+
27
+ /**
28
+ * Extract the frontmatter `description` from a SKILL.md file.
29
+ * Reads only the YAML frontmatter block (between `---` delimiters).
30
+ * Returns the description truncated to maxLength, or undefined if not found.
31
+ */
32
+ export async function extractDescription(
33
+ skillPath: string,
34
+ maxLength: number,
35
+ ): Promise<string | undefined> {
36
+ try {
37
+ const content = await readFile(skillPath, "utf8");
38
+ return parseDescriptionFromFrontmatter(content, maxLength);
39
+ } catch (err) {
40
+ logger.debug(`Failed to read description from ${skillPath}: ${err}`);
41
+ return undefined;
42
+ }
43
+ }
44
+
45
+ /**
46
+ * Parse the description field from YAML frontmatter.
47
+ */
48
+ export function parseDescriptionFromFrontmatter(
49
+ content: string,
50
+ maxLength: number,
51
+ ): string | undefined {
52
+ // Match YAML frontmatter block
53
+ const fmMatch = content.match(/^---\s*\n([\s\S]*?)\n---/);
54
+ if (!fmMatch) return undefined;
55
+
56
+ const frontmatter = fmMatch[1];
57
+
58
+ // Extract description field (handles both single-line and multi-line)
59
+ const descMatch = frontmatter.match(/^description:\s*(.+)$/m);
60
+ if (!descMatch) return undefined;
61
+
62
+ let desc = descMatch[1].trim();
63
+ // Remove surrounding quotes if present
64
+ if (
65
+ (desc.startsWith('"') && desc.endsWith('"')) ||
66
+ (desc.startsWith("'") && desc.endsWith("'"))
67
+ ) {
68
+ desc = desc.slice(1, -1);
69
+ }
70
+
71
+ if (desc.length > maxLength) {
72
+ return desc.slice(0, maxLength - 3) + "...";
73
+ }
74
+ return desc;
75
+ }
76
+
77
+ /**
78
+ * Read the full content of a SKILL.md file.
79
+ * This is the ONLY function that reads full file content (lazy model).
80
+ */
81
+ export async function readFullSkillContent(skillPath: string): Promise<string> {
82
+ return readFile(skillPath, "utf8");
83
+ }
84
+
85
+ /**
86
+ * Enrich skill pointers with descriptions (for browse/search results).
87
+ */
88
+ export async function enrichWithDescriptions(
89
+ skills: SkillPointer[],
90
+ maxLength: number,
91
+ ): Promise<SkillPointer[]> {
92
+ return Promise.all(
93
+ skills.map(async (skill) => {
94
+ if (skill.description) return skill;
95
+ const description = await extractDescription(skill.path, maxLength);
96
+ return { ...skill, description };
97
+ }),
98
+ );
99
+ }