mcp4openapi 0.2.8 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/README.md +143 -63
  2. package/dist/scripts/validate-profile.js +3 -3
  3. package/dist/scripts/validate-profile.js.map +1 -1
  4. package/dist/src/{oauth-provider.d.ts → auth/oauth-provider.d.ts} +7 -2
  5. package/dist/src/auth/oauth-provider.d.ts.map +1 -0
  6. package/dist/src/{oauth-provider.js → auth/oauth-provider.js} +30 -2
  7. package/dist/src/auth/oauth-provider.js.map +1 -0
  8. package/dist/src/core/cli-config.d.ts +9 -0
  9. package/dist/src/core/cli-config.d.ts.map +1 -0
  10. package/dist/src/core/cli-config.js +124 -0
  11. package/dist/src/core/cli-config.js.map +1 -0
  12. package/dist/src/{constants.d.ts → core/constants.d.ts} +1 -0
  13. package/dist/src/core/constants.d.ts.map +1 -0
  14. package/dist/src/{constants.js → core/constants.js} +1 -0
  15. package/dist/src/core/constants.js.map +1 -0
  16. package/dist/src/{errors.d.ts → core/errors.d.ts} +6 -0
  17. package/dist/src/core/errors.d.ts.map +1 -0
  18. package/dist/src/{errors.js → core/errors.js} +15 -6
  19. package/dist/src/core/errors.js.map +1 -0
  20. package/dist/src/core/filtering.d.ts +19 -0
  21. package/dist/src/core/filtering.d.ts.map +1 -0
  22. package/dist/src/core/filtering.js +292 -0
  23. package/dist/src/core/filtering.js.map +1 -0
  24. package/dist/src/core/index.d.ts +26 -0
  25. package/dist/src/core/index.d.ts.map +1 -0
  26. package/dist/src/core/index.js +275 -0
  27. package/dist/src/core/index.js.map +1 -0
  28. package/dist/src/core/lib.d.ts +8 -0
  29. package/dist/src/core/lib.d.ts.map +1 -0
  30. package/dist/src/core/lib.js +7 -0
  31. package/dist/src/core/lib.js.map +1 -0
  32. package/dist/src/{logger.d.ts → core/logger.d.ts} +6 -1
  33. package/dist/src/core/logger.d.ts.map +1 -0
  34. package/dist/src/{logger.js → core/logger.js} +30 -2
  35. package/dist/src/core/logger.js.map +1 -0
  36. package/dist/src/{metrics.d.ts → core/metrics.d.ts} +11 -0
  37. package/dist/src/core/metrics.d.ts.map +1 -0
  38. package/dist/src/{metrics.js → core/metrics.js} +61 -0
  39. package/dist/src/core/metrics.js.map +1 -0
  40. package/dist/src/core/naming-warnings.d.ts.map +1 -0
  41. package/dist/src/core/naming-warnings.js.map +1 -0
  42. package/dist/src/core/naming.d.ts.map +1 -0
  43. package/dist/src/core/naming.js.map +1 -0
  44. package/dist/src/generated-schemas.d.ts +245 -79
  45. package/dist/src/generated-schemas.d.ts.map +1 -1
  46. package/dist/src/generated-schemas.js +14 -2
  47. package/dist/src/generated-schemas.js.map +1 -1
  48. package/dist/src/index.d.ts +1 -6
  49. package/dist/src/index.d.ts.map +1 -1
  50. package/dist/src/index.js +1 -170
  51. package/dist/src/index.js.map +1 -1
  52. package/dist/src/lib.d.ts +1 -7
  53. package/dist/src/lib.d.ts.map +1 -1
  54. package/dist/src/lib.js +1 -6
  55. package/dist/src/lib.js.map +1 -1
  56. package/dist/src/mcp/mcp-server-manager.d.ts +20 -0
  57. package/dist/src/mcp/mcp-server-manager.d.ts.map +1 -0
  58. package/dist/src/mcp/mcp-server-manager.js +38 -0
  59. package/dist/src/mcp/mcp-server-manager.js.map +1 -0
  60. package/dist/src/{mcp-server.d.ts → mcp/mcp-server.d.ts} +31 -1
  61. package/dist/src/mcp/mcp-server.d.ts.map +1 -0
  62. package/dist/src/{mcp-server.js → mcp/mcp-server.js} +547 -146
  63. package/dist/src/mcp/mcp-server.js.map +1 -0
  64. package/dist/src/{openapi-parser.d.ts → openapi/openapi-parser.d.ts} +1 -1
  65. package/dist/src/openapi/openapi-parser.d.ts.map +1 -0
  66. package/dist/src/{openapi-parser.js → openapi/openapi-parser.js} +2 -2
  67. package/dist/src/openapi/openapi-parser.js.map +1 -0
  68. package/dist/src/{profile-loader.d.ts → profile/profile-loader.d.ts} +3 -2
  69. package/dist/src/profile/profile-loader.d.ts.map +1 -0
  70. package/dist/src/{profile-loader.js → profile/profile-loader.js} +17 -6
  71. package/dist/src/profile/profile-loader.js.map +1 -0
  72. package/dist/src/profile/profile-registry.d.ts +18 -0
  73. package/dist/src/profile/profile-registry.d.ts.map +1 -0
  74. package/dist/src/profile/profile-registry.js +26 -0
  75. package/dist/src/profile/profile-registry.js.map +1 -0
  76. package/dist/src/profile/profile-resolver.d.ts +25 -0
  77. package/dist/src/profile/profile-resolver.d.ts.map +1 -0
  78. package/dist/src/profile/profile-resolver.js +204 -0
  79. package/dist/src/profile/profile-resolver.js.map +1 -0
  80. package/dist/src/profile/startup-profile.d.ts +17 -0
  81. package/dist/src/profile/startup-profile.d.ts.map +1 -0
  82. package/dist/src/profile/startup-profile.js +30 -0
  83. package/dist/src/profile/startup-profile.js.map +1 -0
  84. package/dist/src/profile/startup-validation.d.ts +11 -0
  85. package/dist/src/profile/startup-validation.d.ts.map +1 -0
  86. package/dist/src/profile/startup-validation.js +21 -0
  87. package/dist/src/profile/startup-validation.js.map +1 -0
  88. package/dist/src/testing/dynamic-mock-server.d.ts +24 -0
  89. package/dist/src/testing/dynamic-mock-server.d.ts.map +1 -0
  90. package/dist/src/testing/dynamic-mock-server.js +138 -0
  91. package/dist/src/testing/dynamic-mock-server.js.map +1 -0
  92. package/dist/src/testing/request-assertions.d.ts +5 -0
  93. package/dist/src/testing/request-assertions.d.ts.map +1 -0
  94. package/dist/src/testing/request-assertions.js +165 -0
  95. package/dist/src/testing/request-assertions.js.map +1 -0
  96. package/dist/src/testing/template-utils.d.ts +10 -0
  97. package/dist/src/testing/template-utils.d.ts.map +1 -0
  98. package/dist/src/testing/template-utils.js +72 -0
  99. package/dist/src/testing/template-utils.js.map +1 -0
  100. package/dist/src/testing/test-http-utils.d.ts +1 -1
  101. package/dist/src/testing/test-http-utils.d.ts.map +1 -1
  102. package/dist/src/testing/test-http-utils.js +1 -1
  103. package/dist/src/testing/test-http-utils.js.map +1 -1
  104. package/dist/src/testing/test-loader.d.ts +6 -0
  105. package/dist/src/testing/test-loader.d.ts.map +1 -0
  106. package/dist/src/testing/test-loader.js +212 -0
  107. package/dist/src/testing/test-loader.js.map +1 -0
  108. package/dist/src/testing/test-schema.d.ts +1270 -0
  109. package/dist/src/testing/test-schema.d.ts.map +1 -0
  110. package/dist/src/testing/test-schema.js +76 -0
  111. package/dist/src/testing/test-schema.js.map +1 -0
  112. package/dist/src/tool-filter/compat.d.ts +49 -0
  113. package/dist/src/tool-filter/compat.d.ts.map +1 -0
  114. package/dist/src/tool-filter/compat.js +72 -0
  115. package/dist/src/tool-filter/compat.js.map +1 -0
  116. package/dist/src/tool-filter/config/env-config-parser.d.ts +38 -0
  117. package/dist/src/tool-filter/config/env-config-parser.d.ts.map +1 -0
  118. package/dist/src/tool-filter/config/env-config-parser.js +103 -0
  119. package/dist/src/tool-filter/config/env-config-parser.js.map +1 -0
  120. package/dist/src/tool-filter/config/header-config-parser.d.ts +37 -0
  121. package/dist/src/tool-filter/config/header-config-parser.d.ts.map +1 -0
  122. package/dist/src/tool-filter/config/header-config-parser.js +118 -0
  123. package/dist/src/tool-filter/config/header-config-parser.js.map +1 -0
  124. package/dist/src/tool-filter/errors.d.ts +18 -0
  125. package/dist/src/tool-filter/errors.d.ts.map +1 -0
  126. package/dist/src/tool-filter/errors.js +21 -0
  127. package/dist/src/tool-filter/errors.js.map +1 -0
  128. package/dist/src/tool-filter/filter/filter-engine.d.ts +45 -0
  129. package/dist/src/tool-filter/filter/filter-engine.d.ts.map +1 -0
  130. package/dist/src/tool-filter/filter/filter-engine.js +94 -0
  131. package/dist/src/tool-filter/filter/filter-engine.js.map +1 -0
  132. package/dist/src/tool-filter/filter/filter-rules.d.ts +44 -0
  133. package/dist/src/tool-filter/filter/filter-rules.d.ts.map +1 -0
  134. package/dist/src/tool-filter/filter/filter-rules.js +72 -0
  135. package/dist/src/tool-filter/filter/filter-rules.js.map +1 -0
  136. package/dist/src/tool-filter/filter/global-tool-filter.d.ts +40 -0
  137. package/dist/src/tool-filter/filter/global-tool-filter.d.ts.map +1 -0
  138. package/dist/src/tool-filter/filter/global-tool-filter.js +92 -0
  139. package/dist/src/tool-filter/filter/global-tool-filter.js.map +1 -0
  140. package/dist/src/tool-filter/filter/session-tool-filter.d.ts +29 -0
  141. package/dist/src/tool-filter/filter/session-tool-filter.d.ts.map +1 -0
  142. package/dist/src/tool-filter/filter/session-tool-filter.js +69 -0
  143. package/dist/src/tool-filter/filter/session-tool-filter.js.map +1 -0
  144. package/dist/src/tool-filter/index.d.ts +25 -0
  145. package/dist/src/tool-filter/index.d.ts.map +1 -0
  146. package/dist/src/tool-filter/index.js +30 -0
  147. package/dist/src/tool-filter/index.js.map +1 -0
  148. package/dist/src/tool-filter/integration/tool-filter-service.d.ts +44 -0
  149. package/dist/src/tool-filter/integration/tool-filter-service.d.ts.map +1 -0
  150. package/dist/src/tool-filter/integration/tool-filter-service.js +68 -0
  151. package/dist/src/tool-filter/integration/tool-filter-service.js.map +1 -0
  152. package/dist/src/tool-filter/operation/operation-classifier.d.ts +20 -0
  153. package/dist/src/tool-filter/operation/operation-classifier.d.ts.map +1 -0
  154. package/dist/src/tool-filter/operation/operation-classifier.js +26 -0
  155. package/dist/src/tool-filter/operation/operation-classifier.js.map +1 -0
  156. package/dist/src/tool-filter/operation/operation-detector.d.ts +30 -0
  157. package/dist/src/tool-filter/operation/operation-detector.d.ts.map +1 -0
  158. package/dist/src/tool-filter/operation/operation-detector.js +96 -0
  159. package/dist/src/tool-filter/operation/operation-detector.js.map +1 -0
  160. package/dist/src/tool-filter/operation/operation-resolver.d.ts +22 -0
  161. package/dist/src/tool-filter/operation/operation-resolver.d.ts.map +1 -0
  162. package/dist/src/tool-filter/operation/operation-resolver.js +32 -0
  163. package/dist/src/tool-filter/operation/operation-resolver.js.map +1 -0
  164. package/dist/src/tool-filter/regex/regex-compiler.d.ts +22 -0
  165. package/dist/src/tool-filter/regex/regex-compiler.d.ts.map +1 -0
  166. package/dist/src/tool-filter/regex/regex-compiler.js +56 -0
  167. package/dist/src/tool-filter/regex/regex-compiler.js.map +1 -0
  168. package/dist/src/tool-filter/regex/regex-validator.d.ts +24 -0
  169. package/dist/src/tool-filter/regex/regex-validator.d.ts.map +1 -0
  170. package/dist/src/tool-filter/regex/regex-validator.js +58 -0
  171. package/dist/src/tool-filter/regex/regex-validator.js.map +1 -0
  172. package/dist/src/tool-filter/types.d.ts +92 -0
  173. package/dist/src/tool-filter/types.d.ts.map +1 -0
  174. package/dist/src/tool-filter/types.js +5 -0
  175. package/dist/src/tool-filter/types.js.map +1 -0
  176. package/dist/src/tool-filter/utils.d.ts +11 -0
  177. package/dist/src/tool-filter/utils.d.ts.map +1 -0
  178. package/dist/src/tool-filter/utils.js +13 -0
  179. package/dist/src/tool-filter/utils.js.map +1 -0
  180. package/dist/src/{composite-executor.d.ts → tooling/composite-executor.d.ts} +3 -3
  181. package/dist/src/tooling/composite-executor.d.ts.map +1 -0
  182. package/dist/src/{composite-executor.js → tooling/composite-executor.js} +1 -1
  183. package/dist/src/tooling/composite-executor.js.map +1 -0
  184. package/dist/src/{dag-executor.d.ts → tooling/dag-executor.d.ts} +1 -1
  185. package/dist/src/tooling/dag-executor.d.ts.map +1 -0
  186. package/dist/src/tooling/dag-executor.js.map +1 -0
  187. package/dist/src/{proxy-executor.d.ts → tooling/proxy-executor.d.ts} +2 -2
  188. package/dist/src/tooling/proxy-executor.d.ts.map +1 -0
  189. package/dist/src/{proxy-executor.js → tooling/proxy-executor.js} +8 -1
  190. package/dist/src/tooling/proxy-executor.js.map +1 -0
  191. package/dist/src/{tool-generator.d.ts → tooling/tool-generator.d.ts} +4 -3
  192. package/dist/src/tooling/tool-generator.d.ts.map +1 -0
  193. package/dist/src/{tool-generator.js → tooling/tool-generator.js} +23 -7
  194. package/dist/src/tooling/tool-generator.js.map +1 -0
  195. package/dist/src/{http-client-factory.d.ts → transport/http-client-factory.d.ts} +4 -1
  196. package/dist/src/transport/http-client-factory.d.ts.map +1 -0
  197. package/dist/src/{http-client-factory.js → transport/http-client-factory.js} +13 -3
  198. package/dist/src/transport/http-client-factory.js.map +1 -0
  199. package/dist/src/transport/http-transport-config.d.ts +6 -0
  200. package/dist/src/transport/http-transport-config.d.ts.map +1 -0
  201. package/dist/src/transport/http-transport-config.js +62 -0
  202. package/dist/src/transport/http-transport-config.js.map +1 -0
  203. package/dist/src/{http-transport.d.ts → transport/http-transport.d.ts} +72 -14
  204. package/dist/src/transport/http-transport.d.ts.map +1 -0
  205. package/dist/src/{http-transport.js → transport/http-transport.js} +1166 -493
  206. package/dist/src/transport/http-transport.js.map +1 -0
  207. package/dist/src/{interceptors.d.ts → transport/interceptors.d.ts} +6 -2
  208. package/dist/src/transport/interceptors.d.ts.map +1 -0
  209. package/dist/src/{interceptors.js → transport/interceptors.js} +72 -41
  210. package/dist/src/transport/interceptors.js.map +1 -0
  211. package/dist/src/types/http-transport.d.ts +25 -0
  212. package/dist/src/types/http-transport.d.ts.map +1 -1
  213. package/dist/src/types/profile.d.ts +13 -1
  214. package/dist/src/types/profile.d.ts.map +1 -1
  215. package/dist/src/validation/argument-normalizer.d.ts +6 -0
  216. package/dist/src/validation/argument-normalizer.d.ts.map +1 -0
  217. package/dist/src/validation/argument-normalizer.js +70 -0
  218. package/dist/src/validation/argument-normalizer.js.map +1 -0
  219. package/dist/src/validation/jsonrpc-validator.d.ts.map +1 -0
  220. package/dist/src/validation/jsonrpc-validator.js.map +1 -0
  221. package/dist/src/{schema-validator.d.ts → validation/schema-validator.d.ts} +2 -2
  222. package/dist/src/validation/schema-validator.d.ts.map +1 -0
  223. package/dist/src/validation/schema-validator.js.map +1 -0
  224. package/dist/src/validation/validation-utils.d.ts.map +1 -0
  225. package/dist/src/validation/validation-utils.js.map +1 -0
  226. package/package.json +9 -3
  227. package/profile-schema.json +63 -3
  228. package/profiles/gitlab/developer-profile-oauth.json +1520 -0
  229. package/profiles/gitlab/developer-profile-oauth.test.json +3432 -0
  230. package/profiles/gitlab/openapi.yaml +6891 -0
  231. package/profiles/n8n/openapi.yaml +2441 -0
  232. package/profiles/n8n/profile-optimized.json +965 -0
  233. package/profiles/n8n/profile-optimized.test.json +1078 -0
  234. package/profiles/n8n/profile.json +1033 -0
  235. package/profiles/n8n/profile.test.json +983 -0
  236. package/profiles/n8n-nodes/openapi.yaml +24 -0
  237. package/profiles/n8n-nodes/profile-nodes.json +44 -0
  238. package/profiles/n8n-nodes/profile-nodes.test.json +91 -0
  239. package/profiles/semgrep/openapi.yaml +4706 -0
  240. package/profiles/semgrep/profile.json +692 -0
  241. package/profiles/semgrep/profile.test.json +471 -0
  242. package/profiles/youtrack/openapi.json +16976 -0
  243. package/profiles/youtrack/profile.json +608 -0
  244. package/profiles/youtrack/profile.test.json +1926 -0
  245. package/dist/src/composite-executor.d.ts.map +0 -1
  246. package/dist/src/composite-executor.js.map +0 -1
  247. package/dist/src/constants.d.ts.map +0 -1
  248. package/dist/src/constants.js.map +0 -1
  249. package/dist/src/dag-executor.d.ts.map +0 -1
  250. package/dist/src/dag-executor.js.map +0 -1
  251. package/dist/src/errors.d.ts.map +0 -1
  252. package/dist/src/errors.js.map +0 -1
  253. package/dist/src/http-client-factory.d.ts.map +0 -1
  254. package/dist/src/http-client-factory.js.map +0 -1
  255. package/dist/src/http-transport.d.ts.map +0 -1
  256. package/dist/src/http-transport.js.map +0 -1
  257. package/dist/src/interceptors.d.ts.map +0 -1
  258. package/dist/src/interceptors.js.map +0 -1
  259. package/dist/src/jsonrpc-validator.d.ts.map +0 -1
  260. package/dist/src/jsonrpc-validator.js.map +0 -1
  261. package/dist/src/logger.d.ts.map +0 -1
  262. package/dist/src/logger.js.map +0 -1
  263. package/dist/src/mcp-server.d.ts.map +0 -1
  264. package/dist/src/mcp-server.js.map +0 -1
  265. package/dist/src/metrics.d.ts.map +0 -1
  266. package/dist/src/metrics.js.map +0 -1
  267. package/dist/src/naming-warnings.d.ts.map +0 -1
  268. package/dist/src/naming-warnings.js.map +0 -1
  269. package/dist/src/naming.d.ts.map +0 -1
  270. package/dist/src/naming.js.map +0 -1
  271. package/dist/src/oauth-provider.d.ts.map +0 -1
  272. package/dist/src/oauth-provider.js.map +0 -1
  273. package/dist/src/openapi-parser.d.ts.map +0 -1
  274. package/dist/src/openapi-parser.js.map +0 -1
  275. package/dist/src/profile-loader.d.ts.map +0 -1
  276. package/dist/src/profile-loader.js.map +0 -1
  277. package/dist/src/proxy-executor.d.ts.map +0 -1
  278. package/dist/src/proxy-executor.js.map +0 -1
  279. package/dist/src/schema-validator.d.ts.map +0 -1
  280. package/dist/src/schema-validator.js.map +0 -1
  281. package/dist/src/testing/fixtures.d.ts +0 -684
  282. package/dist/src/testing/fixtures.d.ts.map +0 -1
  283. package/dist/src/testing/fixtures.js +0 -528
  284. package/dist/src/testing/fixtures.js.map +0 -1
  285. package/dist/src/testing/mock-gitlab-server.d.ts +0 -43
  286. package/dist/src/testing/mock-gitlab-server.d.ts.map +0 -1
  287. package/dist/src/testing/mock-gitlab-server.js +0 -1026
  288. package/dist/src/testing/mock-gitlab-server.js.map +0 -1
  289. package/dist/src/testing/mock-semgrep-server.d.ts +0 -32
  290. package/dist/src/testing/mock-semgrep-server.d.ts.map +0 -1
  291. package/dist/src/testing/mock-semgrep-server.js +0 -213
  292. package/dist/src/testing/mock-semgrep-server.js.map +0 -1
  293. package/dist/src/testing/mock-youtrack-server.d.ts +0 -11
  294. package/dist/src/testing/mock-youtrack-server.d.ts.map +0 -1
  295. package/dist/src/testing/mock-youtrack-server.js +0 -152
  296. package/dist/src/testing/mock-youtrack-server.js.map +0 -1
  297. package/dist/src/tool-generator.d.ts.map +0 -1
  298. package/dist/src/tool-generator.js.map +0 -1
  299. package/dist/src/validation-utils.d.ts.map +0 -1
  300. package/dist/src/validation-utils.js.map +0 -1
  301. /package/dist/src/{naming-warnings.d.ts → core/naming-warnings.d.ts} +0 -0
  302. /package/dist/src/{naming-warnings.js → core/naming-warnings.js} +0 -0
  303. /package/dist/src/{naming.d.ts → core/naming.d.ts} +0 -0
  304. /package/dist/src/{naming.js → core/naming.js} +0 -0
  305. /package/dist/src/{dag-executor.js → tooling/dag-executor.js} +0 -0
  306. /package/dist/src/{jsonrpc-validator.d.ts → validation/jsonrpc-validator.d.ts} +0 -0
  307. /package/dist/src/{jsonrpc-validator.js → validation/jsonrpc-validator.js} +0 -0
  308. /package/dist/src/{schema-validator.js → validation/schema-validator.js} +0 -0
  309. /package/dist/src/{validation-utils.d.ts → validation/validation-utils.d.ts} +0 -0
  310. /package/dist/src/{validation-utils.js → validation/validation-utils.js} +0 -0
@@ -0,0 +1,1078 @@
1
+ {
2
+ "$schema": "../../src/testing/test-schema.ts",
3
+ "profile_name": "n8n-optimized",
4
+ "variables": {
5
+ "id": "id-123",
6
+ "projectId": "project-123",
7
+ "destinationProjectId": "project-456",
8
+ "userId": "user-123",
9
+ "versionId": "version-123",
10
+ "credentialTypeName": "n8nApi",
11
+ "name": "test-name",
12
+ "type": "test-type",
13
+ "key": "test-key",
14
+ "value": "test-value",
15
+ "createdAt": "2024-01-01T00:00:00Z",
16
+ "updatedAt": "2024-01-02T00:00:00Z",
17
+ "tagId": "tag-123",
18
+ "tagName": "Production"
19
+ },
20
+ "scenarios": [
21
+ {
22
+ "name": "retrieve_n8n - get_credential_schema",
23
+ "tool": "retrieve_n8n",
24
+ "arguments": {
25
+ "action": "get_credential_schema",
26
+ "credentialTypeName": "{{credentialTypeName}}"
27
+ },
28
+ "mocks": [
29
+ {
30
+ "operationId": "get_/credentials/schema/{credentialTypeName}",
31
+ "response": {
32
+ "body": {}
33
+ }
34
+ }
35
+ ],
36
+ "expect": {
37
+ "success": true,
38
+ "request": {
39
+ "method": "GET",
40
+ "path": "/credentials/schema/{{credentialTypeName}}"
41
+ }
42
+ }
43
+ },
44
+ {
45
+ "name": "retrieve_n8n - list_executions",
46
+ "tool": "retrieve_n8n",
47
+ "arguments": {
48
+ "action": "list_executions"
49
+ },
50
+ "mocks": [
51
+ {
52
+ "operationId": "get_/executions",
53
+ "response": {
54
+ "body": {}
55
+ }
56
+ }
57
+ ],
58
+ "expect": {
59
+ "success": true,
60
+ "request": {
61
+ "method": "GET",
62
+ "path": "/executions"
63
+ }
64
+ }
65
+ },
66
+ {
67
+ "name": "retrieve_n8n - get_execution",
68
+ "tool": "retrieve_n8n",
69
+ "arguments": {
70
+ "action": "get_execution",
71
+ "id": "{{id}}"
72
+ },
73
+ "mocks": [
74
+ {
75
+ "operationId": "get_/executions/{id}",
76
+ "response": {
77
+ "body": {}
78
+ }
79
+ }
80
+ ],
81
+ "expect": {
82
+ "success": true,
83
+ "request": {
84
+ "method": "GET",
85
+ "path": "/executions/{{id}}"
86
+ }
87
+ }
88
+ },
89
+ {
90
+ "name": "retrieve_n8n - list_projects",
91
+ "tool": "retrieve_n8n",
92
+ "arguments": {
93
+ "action": "list_projects"
94
+ },
95
+ "mocks": [
96
+ {
97
+ "operationId": "get_/projects",
98
+ "response": {
99
+ "body": {}
100
+ }
101
+ }
102
+ ],
103
+ "expect": {
104
+ "success": true,
105
+ "request": {
106
+ "method": "GET",
107
+ "path": "/projects"
108
+ }
109
+ }
110
+ },
111
+ {
112
+ "name": "retrieve_n8n - list_tags",
113
+ "tool": "retrieve_n8n",
114
+ "arguments": {
115
+ "action": "list_tags"
116
+ },
117
+ "mocks": [
118
+ {
119
+ "operationId": "get_/tags",
120
+ "response": {
121
+ "body": {}
122
+ }
123
+ }
124
+ ],
125
+ "expect": {
126
+ "success": true,
127
+ "request": {
128
+ "method": "GET",
129
+ "path": "/tags"
130
+ }
131
+ }
132
+ },
133
+ {
134
+ "name": "retrieve_n8n - get_tag",
135
+ "tool": "retrieve_n8n",
136
+ "arguments": {
137
+ "action": "get_tag",
138
+ "id": "{{id}}"
139
+ },
140
+ "mocks": [
141
+ {
142
+ "operationId": "get_/tags/{id}",
143
+ "response": {
144
+ "body": {}
145
+ }
146
+ }
147
+ ],
148
+ "expect": {
149
+ "success": true,
150
+ "request": {
151
+ "method": "GET",
152
+ "path": "/tags/{{id}}"
153
+ }
154
+ }
155
+ },
156
+ {
157
+ "name": "retrieve_n8n - list_users",
158
+ "tool": "retrieve_n8n",
159
+ "arguments": {
160
+ "action": "list_users"
161
+ },
162
+ "mocks": [
163
+ {
164
+ "operationId": "get_/users",
165
+ "response": {
166
+ "body": {}
167
+ }
168
+ }
169
+ ],
170
+ "expect": {
171
+ "success": true,
172
+ "request": {
173
+ "method": "GET",
174
+ "path": "/users"
175
+ }
176
+ }
177
+ },
178
+ {
179
+ "name": "retrieve_n8n - get_user",
180
+ "tool": "retrieve_n8n",
181
+ "arguments": {
182
+ "action": "get_user",
183
+ "id": "{{id}}"
184
+ },
185
+ "mocks": [
186
+ {
187
+ "operationId": "get_/users/{id}",
188
+ "response": {
189
+ "body": {}
190
+ }
191
+ }
192
+ ],
193
+ "expect": {
194
+ "success": true,
195
+ "request": {
196
+ "method": "GET",
197
+ "path": "/users/{{id}}"
198
+ }
199
+ }
200
+ },
201
+ {
202
+ "name": "retrieve_n8n - list_variables",
203
+ "tool": "retrieve_n8n",
204
+ "arguments": {
205
+ "action": "list_variables"
206
+ },
207
+ "mocks": [
208
+ {
209
+ "operationId": "get_/variables",
210
+ "response": {
211
+ "body": {}
212
+ }
213
+ }
214
+ ],
215
+ "expect": {
216
+ "success": true,
217
+ "request": {
218
+ "method": "GET",
219
+ "path": "/variables"
220
+ }
221
+ }
222
+ },
223
+ {
224
+ "name": "retrieve_n8n - list_workflows",
225
+ "tool": "retrieve_n8n",
226
+ "arguments": {
227
+ "action": "list_workflows"
228
+ },
229
+ "mocks": [
230
+ {
231
+ "operationId": "get_/workflows",
232
+ "response": {
233
+ "body": {}
234
+ }
235
+ }
236
+ ],
237
+ "expect": {
238
+ "success": true,
239
+ "request": {
240
+ "method": "GET",
241
+ "path": "/workflows"
242
+ }
243
+ }
244
+ },
245
+ {
246
+ "name": "retrieve_n8n - get_workflow",
247
+ "tool": "retrieve_n8n",
248
+ "arguments": {
249
+ "action": "get_workflow",
250
+ "id": "{{id}}"
251
+ },
252
+ "mocks": [
253
+ {
254
+ "operationId": "get_/workflows/{id}",
255
+ "response": {
256
+ "body": {}
257
+ }
258
+ }
259
+ ],
260
+ "expect": {
261
+ "success": true,
262
+ "request": {
263
+ "method": "GET",
264
+ "path": "/workflows/{{id}}"
265
+ }
266
+ }
267
+ },
268
+ {
269
+ "name": "retrieve_n8n - get_workflow_version",
270
+ "tool": "retrieve_n8n",
271
+ "arguments": {
272
+ "action": "get_workflow_version",
273
+ "id": "{{id}}",
274
+ "versionId": "{{versionId}}"
275
+ },
276
+ "mocks": [
277
+ {
278
+ "operationId": "get_/workflows/{id}/{versionId}",
279
+ "response": {
280
+ "body": {}
281
+ }
282
+ }
283
+ ],
284
+ "expect": {
285
+ "success": true,
286
+ "request": {
287
+ "method": "GET",
288
+ "path": "/workflows/{{id}}/{{versionId}}"
289
+ }
290
+ }
291
+ },
292
+ {
293
+ "name": "retrieve_n8n - get_workflow_tags",
294
+ "tool": "retrieve_n8n",
295
+ "arguments": {
296
+ "action": "get_workflow_tags",
297
+ "id": "{{id}}"
298
+ },
299
+ "mocks": [
300
+ {
301
+ "operationId": "get_/workflows/{id}/tags",
302
+ "response": {
303
+ "body": {}
304
+ }
305
+ }
306
+ ],
307
+ "expect": {
308
+ "success": true,
309
+ "request": {
310
+ "method": "GET",
311
+ "path": "/workflows/{{id}}/tags"
312
+ }
313
+ }
314
+ },
315
+ {
316
+ "name": "modify_n8n - generate_audit",
317
+ "tool": "modify_n8n",
318
+ "arguments": {
319
+ "action": "generate_audit"
320
+ },
321
+ "mocks": [
322
+ {
323
+ "operationId": "post_/audit",
324
+ "response": {
325
+ "body": {}
326
+ }
327
+ }
328
+ ],
329
+ "expect": {
330
+ "success": true,
331
+ "request": {
332
+ "method": "POST",
333
+ "path": "/audit"
334
+ }
335
+ }
336
+ },
337
+ {
338
+ "name": "modify_n8n - create_credential",
339
+ "tool": "modify_n8n",
340
+ "arguments": {
341
+ "action": "create_credential",
342
+ "name": "{{name}}",
343
+ "type": "{{type}}",
344
+ "data": {
345
+ "token": "secret"
346
+ }
347
+ },
348
+ "mocks": [
349
+ {
350
+ "operationId": "post_/credentials",
351
+ "response": {
352
+ "body": {}
353
+ }
354
+ }
355
+ ],
356
+ "expect": {
357
+ "success": true,
358
+ "request": {
359
+ "method": "POST",
360
+ "path": "/credentials"
361
+ }
362
+ }
363
+ },
364
+ {
365
+ "name": "modify_n8n - update_credential",
366
+ "tool": "modify_n8n",
367
+ "arguments": {
368
+ "action": "update_credential",
369
+ "id": "{{id}}"
370
+ },
371
+ "mocks": [
372
+ {
373
+ "operationId": "updateCredential",
374
+ "response": {
375
+ "body": {}
376
+ }
377
+ }
378
+ ],
379
+ "expect": {
380
+ "success": true,
381
+ "request": {
382
+ "method": "PATCH",
383
+ "path": "/credentials/{{id}}"
384
+ }
385
+ }
386
+ },
387
+ {
388
+ "name": "modify_n8n - delete_credential",
389
+ "tool": "modify_n8n",
390
+ "arguments": {
391
+ "action": "delete_credential",
392
+ "id": "{{id}}"
393
+ },
394
+ "mocks": [
395
+ {
396
+ "operationId": "deleteCredential",
397
+ "response": {
398
+ "body": {}
399
+ }
400
+ }
401
+ ],
402
+ "expect": {
403
+ "success": true,
404
+ "request": {
405
+ "method": "DELETE",
406
+ "path": "/credentials/{{id}}"
407
+ }
408
+ }
409
+ },
410
+ {
411
+ "name": "modify_n8n - transfer_credential",
412
+ "tool": "modify_n8n",
413
+ "arguments": {
414
+ "action": "transfer_credential",
415
+ "id": "{{id}}",
416
+ "destinationProjectId": "{{destinationProjectId}}"
417
+ },
418
+ "mocks": [
419
+ {
420
+ "operationId": "put_/credentials/{id}/transfer",
421
+ "response": {
422
+ "body": {}
423
+ }
424
+ }
425
+ ],
426
+ "expect": {
427
+ "success": true,
428
+ "request": {
429
+ "method": "PUT",
430
+ "path": "/credentials/{{id}}/transfer"
431
+ }
432
+ }
433
+ },
434
+ {
435
+ "name": "modify_n8n - delete_execution",
436
+ "tool": "modify_n8n",
437
+ "arguments": {
438
+ "action": "delete_execution",
439
+ "id": "{{id}}"
440
+ },
441
+ "mocks": [
442
+ {
443
+ "operationId": "delete_/executions/{id}",
444
+ "response": {
445
+ "body": {}
446
+ }
447
+ }
448
+ ],
449
+ "expect": {
450
+ "success": true,
451
+ "request": {
452
+ "method": "DELETE",
453
+ "path": "/executions/{{id}}"
454
+ }
455
+ }
456
+ },
457
+ {
458
+ "name": "modify_n8n - retry_execution",
459
+ "tool": "modify_n8n",
460
+ "arguments": {
461
+ "action": "retry_execution",
462
+ "id": "{{id}}"
463
+ },
464
+ "mocks": [
465
+ {
466
+ "operationId": "post_/executions/{id}/retry",
467
+ "response": {
468
+ "body": {}
469
+ }
470
+ }
471
+ ],
472
+ "expect": {
473
+ "success": true,
474
+ "request": {
475
+ "method": "POST",
476
+ "path": "/executions/{{id}}/retry"
477
+ }
478
+ }
479
+ },
480
+ {
481
+ "name": "modify_n8n - create_project",
482
+ "tool": "modify_n8n",
483
+ "arguments": {
484
+ "action": "create_project",
485
+ "name": "{{name}}"
486
+ },
487
+ "mocks": [
488
+ {
489
+ "operationId": "post_/projects",
490
+ "response": {
491
+ "body": {}
492
+ }
493
+ }
494
+ ],
495
+ "expect": {
496
+ "success": true,
497
+ "request": {
498
+ "method": "POST",
499
+ "path": "/projects"
500
+ }
501
+ }
502
+ },
503
+ {
504
+ "name": "modify_n8n - update_project",
505
+ "tool": "modify_n8n",
506
+ "arguments": {
507
+ "action": "update_project",
508
+ "name": "{{name}}",
509
+ "projectId": "{{projectId}}"
510
+ },
511
+ "mocks": [
512
+ {
513
+ "operationId": "put_/projects/{projectId}",
514
+ "response": {
515
+ "body": {}
516
+ }
517
+ }
518
+ ],
519
+ "expect": {
520
+ "success": true,
521
+ "request": {
522
+ "method": "PUT",
523
+ "path": "/projects/{{projectId}}"
524
+ }
525
+ }
526
+ },
527
+ {
528
+ "name": "modify_n8n - delete_project",
529
+ "tool": "modify_n8n",
530
+ "arguments": {
531
+ "action": "delete_project",
532
+ "projectId": "{{projectId}}"
533
+ },
534
+ "mocks": [
535
+ {
536
+ "operationId": "delete_/projects/{projectId}",
537
+ "response": {
538
+ "body": {}
539
+ }
540
+ }
541
+ ],
542
+ "expect": {
543
+ "success": true,
544
+ "request": {
545
+ "method": "DELETE",
546
+ "path": "/projects/{{projectId}}"
547
+ }
548
+ }
549
+ },
550
+ {
551
+ "name": "modify_n8n - add_project_users",
552
+ "tool": "modify_n8n",
553
+ "arguments": {
554
+ "action": "add_project_users",
555
+ "projectId": "{{projectId}}",
556
+ "relations": [
557
+ {
558
+ "userId": "{{userId}}",
559
+ "role": "project:viewer"
560
+ }
561
+ ]
562
+ },
563
+ "mocks": [
564
+ {
565
+ "operationId": "post_/projects/{projectId}/users",
566
+ "response": {
567
+ "body": {}
568
+ }
569
+ }
570
+ ],
571
+ "expect": {
572
+ "success": true,
573
+ "request": {
574
+ "method": "POST",
575
+ "path": "/projects/{{projectId}}/users"
576
+ }
577
+ }
578
+ },
579
+ {
580
+ "name": "modify_n8n - remove_project_user",
581
+ "tool": "modify_n8n",
582
+ "arguments": {
583
+ "action": "remove_project_user",
584
+ "projectId": "{{projectId}}",
585
+ "userId": "{{userId}}"
586
+ },
587
+ "mocks": [
588
+ {
589
+ "operationId": "delete_/projects/{projectId}/users/{userId}",
590
+ "response": {
591
+ "body": {}
592
+ }
593
+ }
594
+ ],
595
+ "expect": {
596
+ "success": true,
597
+ "request": {
598
+ "method": "DELETE",
599
+ "path": "/projects/{{projectId}}/users/{{userId}}"
600
+ }
601
+ }
602
+ },
603
+ {
604
+ "name": "modify_n8n - update_project_user_role",
605
+ "tool": "modify_n8n",
606
+ "arguments": {
607
+ "action": "update_project_user_role",
608
+ "projectId": "{{projectId}}",
609
+ "userId": "{{userId}}",
610
+ "role": "project:viewer"
611
+ },
612
+ "mocks": [
613
+ {
614
+ "operationId": "patch_/projects/{projectId}/users/{userId}",
615
+ "response": {
616
+ "body": {}
617
+ }
618
+ }
619
+ ],
620
+ "expect": {
621
+ "success": true,
622
+ "request": {
623
+ "method": "PATCH",
624
+ "path": "/projects/{{projectId}}/users/{{userId}}"
625
+ }
626
+ }
627
+ },
628
+ {
629
+ "name": "modify_n8n - pull_source_control",
630
+ "tool": "modify_n8n",
631
+ "arguments": {
632
+ "action": "pull_source_control"
633
+ },
634
+ "mocks": [
635
+ {
636
+ "operationId": "post_/source-control/pull",
637
+ "response": {
638
+ "body": {}
639
+ }
640
+ }
641
+ ],
642
+ "expect": {
643
+ "success": true,
644
+ "request": {
645
+ "method": "POST",
646
+ "path": "/source-control/pull"
647
+ }
648
+ }
649
+ },
650
+ {
651
+ "name": "modify_n8n - create_tag",
652
+ "tool": "modify_n8n",
653
+ "arguments": {
654
+ "action": "create_tag",
655
+ "name": "{{name}}"
656
+ },
657
+ "mocks": [
658
+ {
659
+ "operationId": "post_/tags",
660
+ "response": {
661
+ "body": {}
662
+ }
663
+ }
664
+ ],
665
+ "expect": {
666
+ "success": true,
667
+ "request": {
668
+ "method": "POST",
669
+ "path": "/tags"
670
+ }
671
+ }
672
+ },
673
+ {
674
+ "name": "modify_n8n - update_tag",
675
+ "tool": "modify_n8n",
676
+ "arguments": {
677
+ "action": "update_tag",
678
+ "id": "{{id}}",
679
+ "name": "{{name}}"
680
+ },
681
+ "mocks": [
682
+ {
683
+ "operationId": "put_/tags/{id}",
684
+ "response": {
685
+ "body": {}
686
+ }
687
+ }
688
+ ],
689
+ "expect": {
690
+ "success": true,
691
+ "request": {
692
+ "method": "PUT",
693
+ "path": "/tags/{{id}}"
694
+ }
695
+ }
696
+ },
697
+ {
698
+ "name": "modify_n8n - delete_tag",
699
+ "tool": "modify_n8n",
700
+ "arguments": {
701
+ "action": "delete_tag",
702
+ "id": "{{id}}"
703
+ },
704
+ "mocks": [
705
+ {
706
+ "operationId": "delete_/tags/{id}",
707
+ "response": {
708
+ "body": {}
709
+ }
710
+ }
711
+ ],
712
+ "expect": {
713
+ "success": true,
714
+ "request": {
715
+ "method": "DELETE",
716
+ "path": "/tags/{{id}}"
717
+ }
718
+ }
719
+ },
720
+ {
721
+ "name": "modify_n8n - create_users",
722
+ "tool": "modify_n8n",
723
+ "arguments": {
724
+ "action": "create_users",
725
+ "users": [
726
+ {
727
+ "email": "user1@example.com",
728
+ "role": "global:member"
729
+ }
730
+ ]
731
+ },
732
+ "mocks": [
733
+ {
734
+ "operationId": "post_/users",
735
+ "response": {
736
+ "body": {}
737
+ }
738
+ }
739
+ ],
740
+ "expect": {
741
+ "success": true,
742
+ "request": {
743
+ "method": "POST",
744
+ "path": "/users"
745
+ }
746
+ }
747
+ },
748
+ {
749
+ "name": "modify_n8n - delete_user",
750
+ "tool": "modify_n8n",
751
+ "arguments": {
752
+ "action": "delete_user",
753
+ "id": "{{id}}"
754
+ },
755
+ "mocks": [
756
+ {
757
+ "operationId": "delete_/users/{id}",
758
+ "response": {
759
+ "body": {}
760
+ }
761
+ }
762
+ ],
763
+ "expect": {
764
+ "success": true,
765
+ "request": {
766
+ "method": "DELETE",
767
+ "path": "/users/{{id}}"
768
+ }
769
+ }
770
+ },
771
+ {
772
+ "name": "modify_n8n - update_user_role",
773
+ "tool": "modify_n8n",
774
+ "arguments": {
775
+ "action": "update_user_role",
776
+ "id": "{{id}}",
777
+ "userId": "{{userId}}",
778
+ "role": "project:viewer",
779
+ "newRoleName": "global:member"
780
+ },
781
+ "mocks": [
782
+ {
783
+ "operationId": "patch_/users/{id}/role",
784
+ "response": {
785
+ "body": {}
786
+ }
787
+ }
788
+ ],
789
+ "expect": {
790
+ "success": true,
791
+ "request": {
792
+ "method": "PATCH",
793
+ "path": "/users/{{id}}/role"
794
+ }
795
+ }
796
+ },
797
+ {
798
+ "name": "modify_n8n - create_variable",
799
+ "tool": "modify_n8n",
800
+ "arguments": {
801
+ "action": "create_variable",
802
+ "key": "{{key}}",
803
+ "value": "{{value}}"
804
+ },
805
+ "mocks": [
806
+ {
807
+ "operationId": "post_/variables",
808
+ "response": {
809
+ "body": {}
810
+ }
811
+ }
812
+ ],
813
+ "expect": {
814
+ "success": true,
815
+ "request": {
816
+ "method": "POST",
817
+ "path": "/variables"
818
+ }
819
+ }
820
+ },
821
+ {
822
+ "name": "modify_n8n - update_variable",
823
+ "tool": "modify_n8n",
824
+ "arguments": {
825
+ "action": "update_variable",
826
+ "id": "{{id}}",
827
+ "key": "{{key}}",
828
+ "value": "{{value}}"
829
+ },
830
+ "mocks": [
831
+ {
832
+ "operationId": "put_/variables/{id}",
833
+ "response": {
834
+ "body": {}
835
+ }
836
+ }
837
+ ],
838
+ "expect": {
839
+ "success": true,
840
+ "request": {
841
+ "method": "PUT",
842
+ "path": "/variables/{{id}}"
843
+ }
844
+ }
845
+ },
846
+ {
847
+ "name": "modify_n8n - delete_variable",
848
+ "tool": "modify_n8n",
849
+ "arguments": {
850
+ "action": "delete_variable",
851
+ "id": "{{id}}"
852
+ },
853
+ "mocks": [
854
+ {
855
+ "operationId": "delete_/variables/{id}",
856
+ "response": {
857
+ "body": {}
858
+ }
859
+ }
860
+ ],
861
+ "expect": {
862
+ "success": true,
863
+ "request": {
864
+ "method": "DELETE",
865
+ "path": "/variables/{{id}}"
866
+ }
867
+ }
868
+ },
869
+ {
870
+ "name": "modify_n8n - create_workflow",
871
+ "tool": "modify_n8n_workflows",
872
+ "arguments": {
873
+ "action": "create_workflow",
874
+ "name": "{{name}}",
875
+ "nodes": [
876
+ {
877
+ "id": "node-1",
878
+ "name": "Start",
879
+ "type": "n8n-nodes-base.start",
880
+ "typeVersion": 1,
881
+ "position": [
882
+ 0,
883
+ 0
884
+ ]
885
+ }
886
+ ],
887
+ "connections": {},
888
+ "settings": {
889
+ "timezone": "UTC",
890
+ "executionTimeout": 3600
891
+ }
892
+ },
893
+ "mocks": [
894
+ {
895
+ "operationId": "post_/workflows",
896
+ "response": {
897
+ "body": {}
898
+ }
899
+ }
900
+ ],
901
+ "expect": {
902
+ "success": true,
903
+ "request": {
904
+ "method": "POST",
905
+ "path": "/workflows"
906
+ }
907
+ }
908
+ },
909
+ {
910
+ "name": "modify_n8n - update_workflow",
911
+ "tool": "modify_n8n_workflows",
912
+ "arguments": {
913
+ "action": "update_workflow",
914
+ "id": "{{id}}",
915
+ "name": "{{name}}",
916
+ "nodes": [
917
+ {
918
+ "id": "node-1",
919
+ "name": "Start",
920
+ "type": "n8n-nodes-base.start",
921
+ "typeVersion": 1,
922
+ "position": [
923
+ 0,
924
+ 0
925
+ ]
926
+ }
927
+ ],
928
+ "connections": {},
929
+ "settings": {
930
+ "timezone": "UTC",
931
+ "executionTimeout": 3600
932
+ }
933
+ },
934
+ "mocks": [
935
+ {
936
+ "operationId": "put_/workflows/{id}",
937
+ "response": {
938
+ "body": {}
939
+ }
940
+ }
941
+ ],
942
+ "expect": {
943
+ "success": true,
944
+ "request": {
945
+ "method": "PUT",
946
+ "path": "/workflows/{{id}}"
947
+ }
948
+ }
949
+ },
950
+ {
951
+ "name": "modify_n8n - delete_workflow",
952
+ "tool": "modify_n8n_workflows",
953
+ "arguments": {
954
+ "action": "delete_workflow",
955
+ "id": "{{id}}"
956
+ },
957
+ "mocks": [
958
+ {
959
+ "operationId": "delete_/workflows/{id}",
960
+ "response": {
961
+ "body": {}
962
+ }
963
+ }
964
+ ],
965
+ "expect": {
966
+ "success": true,
967
+ "request": {
968
+ "method": "DELETE",
969
+ "path": "/workflows/{{id}}"
970
+ }
971
+ }
972
+ },
973
+ {
974
+ "name": "modify_n8n - activate_workflow",
975
+ "tool": "modify_n8n_workflows",
976
+ "arguments": {
977
+ "action": "activate_workflow",
978
+ "id": "{{id}}"
979
+ },
980
+ "mocks": [
981
+ {
982
+ "operationId": "post_/workflows/{id}/activate",
983
+ "response": {
984
+ "body": {}
985
+ }
986
+ }
987
+ ],
988
+ "expect": {
989
+ "success": true,
990
+ "request": {
991
+ "method": "POST",
992
+ "path": "/workflows/{{id}}/activate"
993
+ }
994
+ }
995
+ },
996
+ {
997
+ "name": "modify_n8n - deactivate_workflow",
998
+ "tool": "modify_n8n_workflows",
999
+ "arguments": {
1000
+ "action": "deactivate_workflow",
1001
+ "id": "{{id}}"
1002
+ },
1003
+ "mocks": [
1004
+ {
1005
+ "operationId": "post_/workflows/{id}/deactivate",
1006
+ "response": {
1007
+ "body": {}
1008
+ }
1009
+ }
1010
+ ],
1011
+ "expect": {
1012
+ "success": true,
1013
+ "request": {
1014
+ "method": "POST",
1015
+ "path": "/workflows/{{id}}/deactivate"
1016
+ }
1017
+ }
1018
+ },
1019
+ {
1020
+ "name": "modify_n8n - update_workflow_tags",
1021
+ "tool": "modify_n8n_workflows",
1022
+ "arguments": {
1023
+ "action": "update_workflow_tags",
1024
+ "id": "{{id}}",
1025
+ "tag_ids": [
1026
+ {
1027
+ "id": "{{tagId}}"
1028
+ }
1029
+ ]
1030
+ },
1031
+ "mocks": [
1032
+ {
1033
+ "operationId": "put_/workflows/{id}/tags",
1034
+ "response": {
1035
+ "body": {}
1036
+ }
1037
+ }
1038
+ ],
1039
+ "expect": {
1040
+ "success": true,
1041
+ "request": {
1042
+ "method": "PUT",
1043
+ "path": "/workflows/{{id}}/tags"
1044
+ }
1045
+ }
1046
+ },
1047
+ {
1048
+ "name": "modify_n8n - transfer_workflow",
1049
+ "tool": "modify_n8n_workflows",
1050
+ "arguments": {
1051
+ "action": "transfer_workflow",
1052
+ "id": "{{id}}",
1053
+ "destinationProjectId": "{{destinationProjectId}}"
1054
+ },
1055
+ "mocks": [
1056
+ {
1057
+ "operationId": "put_/workflows/{id}/transfer",
1058
+ "response": {
1059
+ "body": {}
1060
+ }
1061
+ }
1062
+ ],
1063
+ "expect": {
1064
+ "success": true,
1065
+ "request": {
1066
+ "method": "PUT",
1067
+ "path": "/workflows/{{id}}/transfer"
1068
+ }
1069
+ }
1070
+ }
1071
+ ],
1072
+ "coverage": {
1073
+ "require_all_actions": true,
1074
+ "skip_actions": {},
1075
+ "require_request_assertions": true,
1076
+ "skip_request_assertions": {}
1077
+ }
1078
+ }