@daghis/teamcity-mcp 0.1.2

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 (1133) hide show
  1. package/.commitlintrc.js +3 -0
  2. package/.eslintignore +16 -0
  3. package/.eslintrc.js +166 -0
  4. package/.github/settings.yml +7 -0
  5. package/.github/workflows/ci.yml +111 -0
  6. package/.github/workflows/codeql.yml +35 -0
  7. package/.github/workflows/commitlint.yml +20 -0
  8. package/.github/workflows/publish.yml +47 -0
  9. package/.github/workflows/release-please.yml +21 -0
  10. package/.nvmrc +1 -0
  11. package/.prettierignore +22 -0
  12. package/.prettierrc +28 -0
  13. package/AGENTS.md +68 -0
  14. package/ARCHITECTURE.md +66 -0
  15. package/CHANGELOG.md +8 -0
  16. package/CONTRIBUTING.md +68 -0
  17. package/LICENSE +22 -0
  18. package/README.md +256 -0
  19. package/TODO.md +80 -0
  20. package/dist/index.js +42216 -0
  21. package/dist/index.js.map +7 -0
  22. package/dist/src/api-client.d.ts +51 -0
  23. package/dist/src/api-client.d.ts.map +1 -0
  24. package/dist/src/config/index.d.ts +41 -0
  25. package/dist/src/config/index.d.ts.map +1 -0
  26. package/dist/src/errors/index.d.ts +2 -0
  27. package/dist/src/errors/index.d.ts.map +1 -0
  28. package/dist/src/formatters/build-step-formatter.d.ts +5 -0
  29. package/dist/src/formatters/build-step-formatter.d.ts.map +1 -0
  30. package/dist/src/formatters/trigger-formatter.d.ts +4 -0
  31. package/dist/src/formatters/trigger-formatter.d.ts.map +1 -0
  32. package/dist/src/index.d.ts +3 -0
  33. package/dist/src/index.d.ts.map +1 -0
  34. package/dist/src/middleware/error.d.ts +56 -0
  35. package/dist/src/middleware/error.d.ts.map +1 -0
  36. package/dist/src/middleware/global-error-handler.d.ts +22 -0
  37. package/dist/src/middleware/global-error-handler.d.ts.map +1 -0
  38. package/dist/src/middleware/index.d.ts +2 -0
  39. package/dist/src/middleware/index.d.ts.map +1 -0
  40. package/dist/src/server.d.ts +4 -0
  41. package/dist/src/server.d.ts.map +1 -0
  42. package/dist/src/swagger/index.d.ts +43 -0
  43. package/dist/src/swagger/index.d.ts.map +1 -0
  44. package/dist/src/swagger/swagger-cache.d.ts +23 -0
  45. package/dist/src/swagger/swagger-cache.d.ts.map +1 -0
  46. package/dist/src/swagger/swagger-fetcher.d.ts +24 -0
  47. package/dist/src/swagger/swagger-fetcher.d.ts.map +1 -0
  48. package/dist/src/swagger/swagger-validator.d.ts +17 -0
  49. package/dist/src/swagger/swagger-validator.d.ts.map +1 -0
  50. package/dist/src/teamcity/api-types.d.ts +224 -0
  51. package/dist/src/teamcity/api-types.d.ts.map +1 -0
  52. package/dist/src/teamcity/artifact-manager.d.ts +52 -0
  53. package/dist/src/teamcity/artifact-manager.d.ts.map +1 -0
  54. package/dist/src/teamcity/auth.d.ts +22 -0
  55. package/dist/src/teamcity/auth.d.ts.map +1 -0
  56. package/dist/src/teamcity/branch-discovery-manager.d.ts +39 -0
  57. package/dist/src/teamcity/branch-discovery-manager.d.ts.map +1 -0
  58. package/dist/src/teamcity/branch-filtering-service.d.ts +62 -0
  59. package/dist/src/teamcity/branch-filtering-service.d.ts.map +1 -0
  60. package/dist/src/teamcity/branch-specification-parser.d.ts +33 -0
  61. package/dist/src/teamcity/branch-specification-parser.d.ts.map +1 -0
  62. package/dist/src/teamcity/build-config-manager.d.ts +75 -0
  63. package/dist/src/teamcity/build-config-manager.d.ts.map +1 -0
  64. package/dist/src/teamcity/build-config-navigator.d.ts +89 -0
  65. package/dist/src/teamcity/build-config-navigator.d.ts.map +1 -0
  66. package/dist/src/teamcity/build-configuration-clone-manager.d.ts +49 -0
  67. package/dist/src/teamcity/build-configuration-clone-manager.d.ts.map +1 -0
  68. package/dist/src/teamcity/build-configuration-manager.d.ts +82 -0
  69. package/dist/src/teamcity/build-configuration-manager.d.ts.map +1 -0
  70. package/dist/src/teamcity/build-configuration-resolver.d.ts +95 -0
  71. package/dist/src/teamcity/build-configuration-resolver.d.ts.map +1 -0
  72. package/dist/src/teamcity/build-configuration-update-manager.d.ts +76 -0
  73. package/dist/src/teamcity/build-configuration-update-manager.d.ts.map +1 -0
  74. package/dist/src/teamcity/build-list-manager.d.ts +62 -0
  75. package/dist/src/teamcity/build-list-manager.d.ts.map +1 -0
  76. package/dist/src/teamcity/build-parameters-manager.d.ts +143 -0
  77. package/dist/src/teamcity/build-parameters-manager.d.ts.map +1 -0
  78. package/dist/src/teamcity/build-progress-tracker.d.ts +49 -0
  79. package/dist/src/teamcity/build-progress-tracker.d.ts.map +1 -0
  80. package/dist/src/teamcity/build-query-builder.d.ts +27 -0
  81. package/dist/src/teamcity/build-query-builder.d.ts.map +1 -0
  82. package/dist/src/teamcity/build-queue-manager.d.ts +102 -0
  83. package/dist/src/teamcity/build-queue-manager.d.ts.map +1 -0
  84. package/dist/src/teamcity/build-results-manager.d.ts +87 -0
  85. package/dist/src/teamcity/build-results-manager.d.ts.map +1 -0
  86. package/dist/src/teamcity/build-status-manager.d.ts +65 -0
  87. package/dist/src/teamcity/build-status-manager.d.ts.map +1 -0
  88. package/dist/src/teamcity/build-step-manager.d.ts +65 -0
  89. package/dist/src/teamcity/build-step-manager.d.ts.map +1 -0
  90. package/dist/src/teamcity/build-trigger-manager.d.ts +108 -0
  91. package/dist/src/teamcity/build-trigger-manager.d.ts.map +1 -0
  92. package/dist/src/teamcity/circuit-breaker.d.ts +47 -0
  93. package/dist/src/teamcity/circuit-breaker.d.ts.map +1 -0
  94. package/dist/src/teamcity/client-adapter.d.ts +12 -0
  95. package/dist/src/teamcity/client-adapter.d.ts.map +1 -0
  96. package/dist/src/teamcity/client.d.ts +49 -0
  97. package/dist/src/teamcity/client.d.ts.map +1 -0
  98. package/dist/src/teamcity/config.d.ts +41 -0
  99. package/dist/src/teamcity/config.d.ts.map +1 -0
  100. package/dist/src/teamcity/configuration-branch-matcher.d.ts +37 -0
  101. package/dist/src/teamcity/configuration-branch-matcher.d.ts.map +1 -0
  102. package/dist/src/teamcity/errors.d.ts +79 -0
  103. package/dist/src/teamcity/errors.d.ts.map +1 -0
  104. package/dist/src/teamcity/index.d.ts +48 -0
  105. package/dist/src/teamcity/index.d.ts.map +1 -0
  106. package/dist/src/teamcity/pagination.d.ts +32 -0
  107. package/dist/src/teamcity/pagination.d.ts.map +1 -0
  108. package/dist/src/teamcity/project-list-manager.d.ts +19 -0
  109. package/dist/src/teamcity/project-list-manager.d.ts.map +1 -0
  110. package/dist/src/teamcity/project-manager.d.ts +73 -0
  111. package/dist/src/teamcity/project-manager.d.ts.map +1 -0
  112. package/dist/src/teamcity/project-navigator.d.ts +100 -0
  113. package/dist/src/teamcity/project-navigator.d.ts.map +1 -0
  114. package/dist/src/teamcity/test-problem-reporter.d.ts +60 -0
  115. package/dist/src/teamcity/test-problem-reporter.d.ts.map +1 -0
  116. package/dist/src/teamcity/types/api-responses.d.ts +235 -0
  117. package/dist/src/teamcity/types/api-responses.d.ts.map +1 -0
  118. package/dist/src/teamcity-client/api/agent-api.d.ts +97 -0
  119. package/dist/src/teamcity-client/api/agent-api.d.ts.map +1 -0
  120. package/dist/src/teamcity-client/api/agent-pool-api.d.ts +92 -0
  121. package/dist/src/teamcity-client/api/agent-pool-api.d.ts.map +1 -0
  122. package/dist/src/teamcity-client/api/agent-type-api.d.ts +20 -0
  123. package/dist/src/teamcity-client/api/agent-type-api.d.ts.map +1 -0
  124. package/dist/src/teamcity-client/api/audit-api.d.ts +26 -0
  125. package/dist/src/teamcity-client/api/audit-api.d.ts.map +1 -0
  126. package/dist/src/teamcity-client/api/avatar-api.d.ts +34 -0
  127. package/dist/src/teamcity-client/api/avatar-api.d.ts.map +1 -0
  128. package/dist/src/teamcity-client/api/build-api.d.ts +315 -0
  129. package/dist/src/teamcity-client/api/build-api.d.ts.map +1 -0
  130. package/dist/src/teamcity-client/api/build-queue-api.d.ts +90 -0
  131. package/dist/src/teamcity-client/api/build-queue-api.d.ts.map +1 -0
  132. package/dist/src/teamcity-client/api/build-type-api.d.ts +585 -0
  133. package/dist/src/teamcity-client/api/build-type-api.d.ts.map +1 -0
  134. package/dist/src/teamcity-client/api/change-api.d.ts +71 -0
  135. package/dist/src/teamcity-client/api/change-api.d.ts.map +1 -0
  136. package/dist/src/teamcity-client/api/cloud-instance-api.d.ts +70 -0
  137. package/dist/src/teamcity-client/api/cloud-instance-api.d.ts.map +1 -0
  138. package/dist/src/teamcity-client/api/deployment-dashboard-api.d.ts +64 -0
  139. package/dist/src/teamcity-client/api/deployment-dashboard-api.d.ts.map +1 -0
  140. package/dist/src/teamcity-client/api/global-server-settings-api.d.ts +25 -0
  141. package/dist/src/teamcity-client/api/global-server-settings-api.d.ts.map +1 -0
  142. package/dist/src/teamcity-client/api/group-api.d.ts +99 -0
  143. package/dist/src/teamcity-client/api/group-api.d.ts.map +1 -0
  144. package/dist/src/teamcity-client/api/health-api.d.ts +38 -0
  145. package/dist/src/teamcity-client/api/health-api.d.ts.map +1 -0
  146. package/dist/src/teamcity-client/api/investigation-api.d.ts +46 -0
  147. package/dist/src/teamcity-client/api/investigation-api.d.ts.map +1 -0
  148. package/dist/src/teamcity-client/api/mute-api.d.ts +46 -0
  149. package/dist/src/teamcity-client/api/mute-api.d.ts.map +1 -0
  150. package/dist/src/teamcity-client/api/node-api.d.ts +49 -0
  151. package/dist/src/teamcity-client/api/node-api.d.ts.map +1 -0
  152. package/dist/src/teamcity-client/api/problem-api.d.ts +26 -0
  153. package/dist/src/teamcity-client/api/problem-api.d.ts.map +1 -0
  154. package/dist/src/teamcity-client/api/problem-occurrence-api.d.ts +26 -0
  155. package/dist/src/teamcity-client/api/problem-occurrence-api.d.ts.map +1 -0
  156. package/dist/src/teamcity-client/api/project-api.d.ts +271 -0
  157. package/dist/src/teamcity-client/api/project-api.d.ts.map +1 -0
  158. package/dist/src/teamcity-client/api/role-api.d.ts +56 -0
  159. package/dist/src/teamcity-client/api/role-api.d.ts.map +1 -0
  160. package/dist/src/teamcity-client/api/root-api.d.ts +35 -0
  161. package/dist/src/teamcity-client/api/root-api.d.ts.map +1 -0
  162. package/dist/src/teamcity-client/api/server-api.d.ts +112 -0
  163. package/dist/src/teamcity-client/api/server-api.d.ts.map +1 -0
  164. package/dist/src/teamcity-client/api/server-authentication-settings-api.d.ts +25 -0
  165. package/dist/src/teamcity-client/api/server-authentication-settings-api.d.ts.map +1 -0
  166. package/dist/src/teamcity-client/api/test-api.d.ts +26 -0
  167. package/dist/src/teamcity-client/api/test-api.d.ts.map +1 -0
  168. package/dist/src/teamcity-client/api/test-occurrence-api.d.ts +26 -0
  169. package/dist/src/teamcity-client/api/test-occurrence-api.d.ts.map +1 -0
  170. package/dist/src/teamcity-client/api/user-api.d.ts +164 -0
  171. package/dist/src/teamcity-client/api/user-api.d.ts.map +1 -0
  172. package/dist/src/teamcity-client/api/vcs-root-api.d.ts +88 -0
  173. package/dist/src/teamcity-client/api/vcs-root-api.d.ts.map +1 -0
  174. package/dist/src/teamcity-client/api/vcs-root-instance-api.d.ts +104 -0
  175. package/dist/src/teamcity-client/api/vcs-root-instance-api.d.ts.map +1 -0
  176. package/dist/src/teamcity-client/api/versioned-settings-api.d.ts +94 -0
  177. package/dist/src/teamcity-client/api/versioned-settings-api.d.ts.map +1 -0
  178. package/dist/src/teamcity-client/api.d.ts +31 -0
  179. package/dist/src/teamcity-client/api.d.ts.map +1 -0
  180. package/dist/src/teamcity-client/base.d.ts +32 -0
  181. package/dist/src/teamcity-client/base.d.ts.map +1 -0
  182. package/dist/src/teamcity-client/common.d.ts +14 -0
  183. package/dist/src/teamcity-client/common.d.ts.map +1 -0
  184. package/dist/src/teamcity-client/configuration.d.ts +23 -0
  185. package/dist/src/teamcity-client/configuration.d.ts.map +1 -0
  186. package/dist/src/teamcity-client/index.d.ts +4 -0
  187. package/dist/src/teamcity-client/index.d.ts.map +1 -0
  188. package/dist/src/teamcity-client/models/agent-locator.d.ts +34 -0
  189. package/dist/src/teamcity-client/models/agent-locator.d.ts.map +1 -0
  190. package/dist/src/teamcity-client/models/agent-pool-locator.d.ts +10 -0
  191. package/dist/src/teamcity-client/models/agent-pool-locator.d.ts.map +1 -0
  192. package/dist/src/teamcity-client/models/agent-pool.d.ts +16 -0
  193. package/dist/src/teamcity-client/models/agent-pool.d.ts.map +1 -0
  194. package/dist/src/teamcity-client/models/agent-pools.d.ts +9 -0
  195. package/dist/src/teamcity-client/models/agent-pools.d.ts.map +1 -0
  196. package/dist/src/teamcity-client/models/agent-requirement.d.ts +11 -0
  197. package/dist/src/teamcity-client/models/agent-requirement.d.ts.map +1 -0
  198. package/dist/src/teamcity-client/models/agent-requirements.d.ts +6 -0
  199. package/dist/src/teamcity-client/models/agent-requirements.d.ts.map +1 -0
  200. package/dist/src/teamcity-client/models/agent-type-locator.d.ts +8 -0
  201. package/dist/src/teamcity-client/models/agent-type-locator.d.ts.map +1 -0
  202. package/dist/src/teamcity-client/models/agent-type.d.ts +14 -0
  203. package/dist/src/teamcity-client/models/agent-type.d.ts.map +1 -0
  204. package/dist/src/teamcity-client/models/agent-types.d.ts +9 -0
  205. package/dist/src/teamcity-client/models/agent-types.d.ts.map +1 -0
  206. package/dist/src/teamcity-client/models/agent.d.ts +59 -0
  207. package/dist/src/teamcity-client/models/agent.d.ts.map +1 -0
  208. package/dist/src/teamcity-client/models/agents.d.ts +9 -0
  209. package/dist/src/teamcity-client/models/agents.d.ts.map +1 -0
  210. package/dist/src/teamcity-client/models/approvable-build.d.ts +6 -0
  211. package/dist/src/teamcity-client/models/approvable-build.d.ts.map +1 -0
  212. package/dist/src/teamcity-client/models/approval-info.d.ts +24 -0
  213. package/dist/src/teamcity-client/models/approval-info.d.ts.map +1 -0
  214. package/dist/src/teamcity-client/models/artifact-dependencies.d.ts +7 -0
  215. package/dist/src/teamcity-client/models/artifact-dependencies.d.ts.map +1 -0
  216. package/dist/src/teamcity-client/models/artifact-dependency.d.ts +13 -0
  217. package/dist/src/teamcity-client/models/artifact-dependency.d.ts.map +1 -0
  218. package/dist/src/teamcity-client/models/artifact-download-info.d.ts +5 -0
  219. package/dist/src/teamcity-client/models/artifact-download-info.d.ts.map +1 -0
  220. package/dist/src/teamcity-client/models/audit-action.d.ts +6 -0
  221. package/dist/src/teamcity-client/models/audit-action.d.ts.map +1 -0
  222. package/dist/src/teamcity-client/models/audit-event.d.ts +12 -0
  223. package/dist/src/teamcity-client/models/audit-event.d.ts.map +1 -0
  224. package/dist/src/teamcity-client/models/audit-events.d.ts +9 -0
  225. package/dist/src/teamcity-client/models/audit-events.d.ts.map +1 -0
  226. package/dist/src/teamcity-client/models/audit-locator.d.ts +245 -0
  227. package/dist/src/teamcity-client/models/audit-locator.d.ts.map +1 -0
  228. package/dist/src/teamcity-client/models/auth-module.d.ts +6 -0
  229. package/dist/src/teamcity-client/models/auth-module.d.ts.map +1 -0
  230. package/dist/src/teamcity-client/models/auth-modules.d.ts +5 -0
  231. package/dist/src/teamcity-client/models/auth-modules.d.ts.map +1 -0
  232. package/dist/src/teamcity-client/models/authorization-tokens-requirements.d.ts +5 -0
  233. package/dist/src/teamcity-client/models/authorization-tokens-requirements.d.ts.map +1 -0
  234. package/dist/src/teamcity-client/models/authorized-info.d.ts +6 -0
  235. package/dist/src/teamcity-client/models/authorized-info.d.ts.map +1 -0
  236. package/dist/src/teamcity-client/models/branch-locator.d.ts +40 -0
  237. package/dist/src/teamcity-client/models/branch-locator.d.ts.map +1 -0
  238. package/dist/src/teamcity-client/models/branch-version.d.ts +13 -0
  239. package/dist/src/teamcity-client/models/branch-version.d.ts.map +1 -0
  240. package/dist/src/teamcity-client/models/branch.d.ts +12 -0
  241. package/dist/src/teamcity-client/models/branch.d.ts.map +1 -0
  242. package/dist/src/teamcity-client/models/branches.d.ts +7 -0
  243. package/dist/src/teamcity-client/models/branches.d.ts.map +1 -0
  244. package/dist/src/teamcity-client/models/build-cancel-request.d.ts +5 -0
  245. package/dist/src/teamcity-client/models/build-cancel-request.d.ts.map +1 -0
  246. package/dist/src/teamcity-client/models/build-change.d.ts +6 -0
  247. package/dist/src/teamcity-client/models/build-change.d.ts.map +1 -0
  248. package/dist/src/teamcity-client/models/build-changes.d.ts +6 -0
  249. package/dist/src/teamcity-client/models/build-changes.d.ts.map +1 -0
  250. package/dist/src/teamcity-client/models/build-executor.d.ts +4 -0
  251. package/dist/src/teamcity-client/models/build-executor.d.ts.map +1 -0
  252. package/dist/src/teamcity-client/models/build-locator.d.ts +69 -0
  253. package/dist/src/teamcity-client/models/build-locator.d.ts.map +1 -0
  254. package/dist/src/teamcity-client/models/build-queue-locator.d.ts +14 -0
  255. package/dist/src/teamcity-client/models/build-queue-locator.d.ts.map +1 -0
  256. package/dist/src/teamcity-client/models/build-status-update.d.ts +5 -0
  257. package/dist/src/teamcity-client/models/build-status-update.d.ts.map +1 -0
  258. package/dist/src/teamcity-client/models/build-trigger-customization.d.ts +7 -0
  259. package/dist/src/teamcity-client/models/build-trigger-customization.d.ts.map +1 -0
  260. package/dist/src/teamcity-client/models/build-triggering-options.d.ts +12 -0
  261. package/dist/src/teamcity-client/models/build-triggering-options.d.ts.map +1 -0
  262. package/dist/src/teamcity-client/models/build-type-locator.d.ts +18 -0
  263. package/dist/src/teamcity-client/models/build-type-locator.d.ts.map +1 -0
  264. package/dist/src/teamcity-client/models/build-type.d.ts +64 -0
  265. package/dist/src/teamcity-client/models/build-type.d.ts.map +1 -0
  266. package/dist/src/teamcity-client/models/build-types.d.ts +9 -0
  267. package/dist/src/teamcity-client/models/build-types.d.ts.map +1 -0
  268. package/dist/src/teamcity-client/models/build.d.ts +127 -0
  269. package/dist/src/teamcity-client/models/build.d.ts.map +1 -0
  270. package/dist/src/teamcity-client/models/builds-with-reason.d.ts +6 -0
  271. package/dist/src/teamcity-client/models/builds-with-reason.d.ts.map +1 -0
  272. package/dist/src/teamcity-client/models/builds.d.ts +9 -0
  273. package/dist/src/teamcity-client/models/builds.d.ts.map +1 -0
  274. package/dist/src/teamcity-client/models/change-locator.d.ts +21 -0
  275. package/dist/src/teamcity-client/models/change-locator.d.ts.map +1 -0
  276. package/dist/src/teamcity-client/models/change-status.d.ts +19 -0
  277. package/dist/src/teamcity-client/models/change-status.d.ts.map +1 -0
  278. package/dist/src/teamcity-client/models/change.d.ts +35 -0
  279. package/dist/src/teamcity-client/models/change.d.ts.map +1 -0
  280. package/dist/src/teamcity-client/models/changes.d.ts +9 -0
  281. package/dist/src/teamcity-client/models/changes.d.ts.map +1 -0
  282. package/dist/src/teamcity-client/models/cleanup.d.ts +9 -0
  283. package/dist/src/teamcity-client/models/cleanup.d.ts.map +1 -0
  284. package/dist/src/teamcity-client/models/cloud-error.d.ts +5 -0
  285. package/dist/src/teamcity-client/models/cloud-error.d.ts.map +1 -0
  286. package/dist/src/teamcity-client/models/cloud-image-locator.d.ts +17 -0
  287. package/dist/src/teamcity-client/models/cloud-image-locator.d.ts.map +1 -0
  288. package/dist/src/teamcity-client/models/cloud-image.d.ts +18 -0
  289. package/dist/src/teamcity-client/models/cloud-image.d.ts.map +1 -0
  290. package/dist/src/teamcity-client/models/cloud-images.d.ts +9 -0
  291. package/dist/src/teamcity-client/models/cloud-images.d.ts.map +1 -0
  292. package/dist/src/teamcity-client/models/cloud-instance-locator.d.ts +13 -0
  293. package/dist/src/teamcity-client/models/cloud-instance-locator.d.ts.map +1 -0
  294. package/dist/src/teamcity-client/models/cloud-instance.d.ts +16 -0
  295. package/dist/src/teamcity-client/models/cloud-instance.d.ts.map +1 -0
  296. package/dist/src/teamcity-client/models/cloud-instances.d.ts +9 -0
  297. package/dist/src/teamcity-client/models/cloud-instances.d.ts.map +1 -0
  298. package/dist/src/teamcity-client/models/cloud-profile-locator.d.ts +13 -0
  299. package/dist/src/teamcity-client/models/cloud-profile-locator.d.ts.map +1 -0
  300. package/dist/src/teamcity-client/models/cloud-profile.d.ts +13 -0
  301. package/dist/src/teamcity-client/models/cloud-profile.d.ts.map +1 -0
  302. package/dist/src/teamcity-client/models/cloud-profiles.d.ts +9 -0
  303. package/dist/src/teamcity-client/models/cloud-profiles.d.ts.map +1 -0
  304. package/dist/src/teamcity-client/models/comment.d.ts +7 -0
  305. package/dist/src/teamcity-client/models/comment.d.ts.map +1 -0
  306. package/dist/src/teamcity-client/models/commiter.d.ts +6 -0
  307. package/dist/src/teamcity-client/models/commiter.d.ts.map +1 -0
  308. package/dist/src/teamcity-client/models/compatibilities.d.ts +6 -0
  309. package/dist/src/teamcity-client/models/compatibilities.d.ts.map +1 -0
  310. package/dist/src/teamcity-client/models/compatibility-policy.d.ts +6 -0
  311. package/dist/src/teamcity-client/models/compatibility-policy.d.ts.map +1 -0
  312. package/dist/src/teamcity-client/models/compatibility.d.ts +10 -0
  313. package/dist/src/teamcity-client/models/compatibility.d.ts.map +1 -0
  314. package/dist/src/teamcity-client/models/composite-approval-rule.d.ts +10 -0
  315. package/dist/src/teamcity-client/models/composite-approval-rule.d.ts.map +1 -0
  316. package/dist/src/teamcity-client/models/composite-approvals.d.ts +6 -0
  317. package/dist/src/teamcity-client/models/composite-approvals.d.ts.map +1 -0
  318. package/dist/src/teamcity-client/models/cron.d.ts +8 -0
  319. package/dist/src/teamcity-client/models/cron.d.ts.map +1 -0
  320. package/dist/src/teamcity-client/models/customizations.d.ts +15 -0
  321. package/dist/src/teamcity-client/models/customizations.d.ts.map +1 -0
  322. package/dist/src/teamcity-client/models/daily.d.ts +5 -0
  323. package/dist/src/teamcity-client/models/daily.d.ts.map +1 -0
  324. package/dist/src/teamcity-client/models/datas.d.ts +6 -0
  325. package/dist/src/teamcity-client/models/datas.d.ts.map +1 -0
  326. package/dist/src/teamcity-client/models/deployment-dashboard-locator.d.ts +9 -0
  327. package/dist/src/teamcity-client/models/deployment-dashboard-locator.d.ts.map +1 -0
  328. package/dist/src/teamcity-client/models/deployment-dashboard.d.ts +9 -0
  329. package/dist/src/teamcity-client/models/deployment-dashboard.d.ts.map +1 -0
  330. package/dist/src/teamcity-client/models/deployment-dashboards.d.ts +9 -0
  331. package/dist/src/teamcity-client/models/deployment-dashboards.d.ts.map +1 -0
  332. package/dist/src/teamcity-client/models/deployment-history.d.ts +6 -0
  333. package/dist/src/teamcity-client/models/deployment-history.d.ts.map +1 -0
  334. package/dist/src/teamcity-client/models/deployment-instance-locator.d.ts +16 -0
  335. package/dist/src/teamcity-client/models/deployment-instance-locator.d.ts.map +1 -0
  336. package/dist/src/teamcity-client/models/deployment-instance.d.ts +20 -0
  337. package/dist/src/teamcity-client/models/deployment-instance.d.ts.map +1 -0
  338. package/dist/src/teamcity-client/models/deployment-instances.d.ts +9 -0
  339. package/dist/src/teamcity-client/models/deployment-instances.d.ts.map +1 -0
  340. package/dist/src/teamcity-client/models/deployment-state-entries.d.ts +8 -0
  341. package/dist/src/teamcity-client/models/deployment-state-entries.d.ts.map +1 -0
  342. package/dist/src/teamcity-client/models/deployment-state-entry.d.ts +16 -0
  343. package/dist/src/teamcity-client/models/deployment-state-entry.d.ts.map +1 -0
  344. package/dist/src/teamcity-client/models/disabled-responsibilities.d.ts +6 -0
  345. package/dist/src/teamcity-client/models/disabled-responsibilities.d.ts.map +1 -0
  346. package/dist/src/teamcity-client/models/download-info.d.ts +8 -0
  347. package/dist/src/teamcity-client/models/download-info.d.ts.map +1 -0
  348. package/dist/src/teamcity-client/models/downloaded-artifacts.d.ts +7 -0
  349. package/dist/src/teamcity-client/models/downloaded-artifacts.d.ts.map +1 -0
  350. package/dist/src/teamcity-client/models/effective-responsibilities.d.ts +6 -0
  351. package/dist/src/teamcity-client/models/effective-responsibilities.d.ts.map +1 -0
  352. package/dist/src/teamcity-client/models/enabled-info.d.ts +7 -0
  353. package/dist/src/teamcity-client/models/enabled-info.d.ts.map +1 -0
  354. package/dist/src/teamcity-client/models/enabled-responsibilities.d.ts +6 -0
  355. package/dist/src/teamcity-client/models/enabled-responsibilities.d.ts.map +1 -0
  356. package/dist/src/teamcity-client/models/entries.d.ts +6 -0
  357. package/dist/src/teamcity-client/models/entries.d.ts.map +1 -0
  358. package/dist/src/teamcity-client/models/entry.d.ts +5 -0
  359. package/dist/src/teamcity-client/models/entry.d.ts.map +1 -0
  360. package/dist/src/teamcity-client/models/environment.d.ts +5 -0
  361. package/dist/src/teamcity-client/models/environment.d.ts.map +1 -0
  362. package/dist/src/teamcity-client/models/feature.d.ts +11 -0
  363. package/dist/src/teamcity-client/models/feature.d.ts.map +1 -0
  364. package/dist/src/teamcity-client/models/features.d.ts +6 -0
  365. package/dist/src/teamcity-client/models/features.d.ts.map +1 -0
  366. package/dist/src/teamcity-client/models/file-change.d.ts +10 -0
  367. package/dist/src/teamcity-client/models/file-change.d.ts.map +1 -0
  368. package/dist/src/teamcity-client/models/file-changes.d.ts +6 -0
  369. package/dist/src/teamcity-client/models/file-changes.d.ts.map +1 -0
  370. package/dist/src/teamcity-client/models/files.d.ts +6 -0
  371. package/dist/src/teamcity-client/models/files.d.ts.map +1 -0
  372. package/dist/src/teamcity-client/models/group-approval-rule.d.ts +8 -0
  373. package/dist/src/teamcity-client/models/group-approval-rule.d.ts.map +1 -0
  374. package/dist/src/teamcity-client/models/group-approvals.d.ts +6 -0
  375. package/dist/src/teamcity-client/models/group-approvals.d.ts.map +1 -0
  376. package/dist/src/teamcity-client/models/group.d.ts +16 -0
  377. package/dist/src/teamcity-client/models/group.d.ts.map +1 -0
  378. package/dist/src/teamcity-client/models/groups.d.ts +6 -0
  379. package/dist/src/teamcity-client/models/groups.d.ts.map +1 -0
  380. package/dist/src/teamcity-client/models/health-categories.d.ts +9 -0
  381. package/dist/src/teamcity-client/models/health-categories.d.ts.map +1 -0
  382. package/dist/src/teamcity-client/models/health-category.d.ts +7 -0
  383. package/dist/src/teamcity-client/models/health-category.d.ts.map +1 -0
  384. package/dist/src/teamcity-client/models/health-item.d.ts +13 -0
  385. package/dist/src/teamcity-client/models/health-item.d.ts.map +1 -0
  386. package/dist/src/teamcity-client/models/health-status-items.d.ts +9 -0
  387. package/dist/src/teamcity-client/models/health-status-items.d.ts.map +1 -0
  388. package/dist/src/teamcity-client/models/href.d.ts +4 -0
  389. package/dist/src/teamcity-client/models/href.d.ts.map +1 -0
  390. package/dist/src/teamcity-client/models/index.d.ts +230 -0
  391. package/dist/src/teamcity-client/models/index.d.ts.map +1 -0
  392. package/dist/src/teamcity-client/models/investigation-locator.d.ts +35 -0
  393. package/dist/src/teamcity-client/models/investigation-locator.d.ts.map +1 -0
  394. package/dist/src/teamcity-client/models/investigation.d.ts +24 -0
  395. package/dist/src/teamcity-client/models/investigation.d.ts.map +1 -0
  396. package/dist/src/teamcity-client/models/investigations.d.ts +9 -0
  397. package/dist/src/teamcity-client/models/investigations.d.ts.map +1 -0
  398. package/dist/src/teamcity-client/models/issue-usage.d.ts +7 -0
  399. package/dist/src/teamcity-client/models/issue-usage.d.ts.map +1 -0
  400. package/dist/src/teamcity-client/models/issue.d.ts +5 -0
  401. package/dist/src/teamcity-client/models/issue.d.ts.map +1 -0
  402. package/dist/src/teamcity-client/models/issues-usages.d.ts +7 -0
  403. package/dist/src/teamcity-client/models/issues-usages.d.ts.map +1 -0
  404. package/dist/src/teamcity-client/models/issues.d.ts +5 -0
  405. package/dist/src/teamcity-client/models/issues.d.ts.map +1 -0
  406. package/dist/src/teamcity-client/models/items.d.ts +4 -0
  407. package/dist/src/teamcity-client/models/items.d.ts.map +1 -0
  408. package/dist/src/teamcity-client/models/labeled-value.d.ts +5 -0
  409. package/dist/src/teamcity-client/models/labeled-value.d.ts.map +1 -0
  410. package/dist/src/teamcity-client/models/license-key.d.ts +29 -0
  411. package/dist/src/teamcity-client/models/license-key.d.ts.map +1 -0
  412. package/dist/src/teamcity-client/models/license-keys.d.ts +7 -0
  413. package/dist/src/teamcity-client/models/license-keys.d.ts.map +1 -0
  414. package/dist/src/teamcity-client/models/licensing-data.d.ts +26 -0
  415. package/dist/src/teamcity-client/models/licensing-data.d.ts.map +1 -0
  416. package/dist/src/teamcity-client/models/link.d.ts +6 -0
  417. package/dist/src/teamcity-client/models/link.d.ts.map +1 -0
  418. package/dist/src/teamcity-client/models/links.d.ts +6 -0
  419. package/dist/src/teamcity-client/models/links.d.ts.map +1 -0
  420. package/dist/src/teamcity-client/models/matrix-build-feature-descriptor.d.ts +8 -0
  421. package/dist/src/teamcity-client/models/matrix-build-feature-descriptor.d.ts.map +1 -0
  422. package/dist/src/teamcity-client/models/matrix-configuration.d.ts +9 -0
  423. package/dist/src/teamcity-client/models/matrix-configuration.d.ts.map +1 -0
  424. package/dist/src/teamcity-client/models/matrix-dependencies.d.ts +6 -0
  425. package/dist/src/teamcity-client/models/matrix-dependencies.d.ts.map +1 -0
  426. package/dist/src/teamcity-client/models/matrix-dependency.d.ts +7 -0
  427. package/dist/src/teamcity-client/models/matrix-dependency.d.ts.map +1 -0
  428. package/dist/src/teamcity-client/models/matrix-parameter-descriptor.d.ts +7 -0
  429. package/dist/src/teamcity-client/models/matrix-parameter-descriptor.d.ts.map +1 -0
  430. package/dist/src/teamcity-client/models/meta-data.d.ts +6 -0
  431. package/dist/src/teamcity-client/models/meta-data.d.ts.map +1 -0
  432. package/dist/src/teamcity-client/models/metric-tag.d.ts +5 -0
  433. package/dist/src/teamcity-client/models/metric-tag.d.ts.map +1 -0
  434. package/dist/src/teamcity-client/models/metric-tags.d.ts +6 -0
  435. package/dist/src/teamcity-client/models/metric-tags.d.ts.map +1 -0
  436. package/dist/src/teamcity-client/models/metric-value.d.ts +7 -0
  437. package/dist/src/teamcity-client/models/metric-value.d.ts.map +1 -0
  438. package/dist/src/teamcity-client/models/metric-values.d.ts +6 -0
  439. package/dist/src/teamcity-client/models/metric-values.d.ts.map +1 -0
  440. package/dist/src/teamcity-client/models/metric.d.ts +10 -0
  441. package/dist/src/teamcity-client/models/metric.d.ts.map +1 -0
  442. package/dist/src/teamcity-client/models/metrics.d.ts +6 -0
  443. package/dist/src/teamcity-client/models/metrics.d.ts.map +1 -0
  444. package/dist/src/teamcity-client/models/model-file.d.ts +13 -0
  445. package/dist/src/teamcity-client/models/model-file.d.ts.map +1 -0
  446. package/dist/src/teamcity-client/models/multiple-operation-result.d.ts +7 -0
  447. package/dist/src/teamcity-client/models/multiple-operation-result.d.ts.map +1 -0
  448. package/dist/src/teamcity-client/models/mute-locator.d.ts +26 -0
  449. package/dist/src/teamcity-client/models/mute-locator.d.ts.map +1 -0
  450. package/dist/src/teamcity-client/models/mute.d.ts +13 -0
  451. package/dist/src/teamcity-client/models/mute.d.ts.map +1 -0
  452. package/dist/src/teamcity-client/models/mutes.d.ts +9 -0
  453. package/dist/src/teamcity-client/models/mutes.d.ts.map +1 -0
  454. package/dist/src/teamcity-client/models/new-build-type-description.d.ts +13 -0
  455. package/dist/src/teamcity-client/models/new-build-type-description.d.ts.map +1 -0
  456. package/dist/src/teamcity-client/models/new-project-description.d.ts +15 -0
  457. package/dist/src/teamcity-client/models/new-project-description.d.ts.map +1 -0
  458. package/dist/src/teamcity-client/models/node.d.ts +21 -0
  459. package/dist/src/teamcity-client/models/node.d.ts.map +1 -0
  460. package/dist/src/teamcity-client/models/nodes.d.ts +6 -0
  461. package/dist/src/teamcity-client/models/nodes.d.ts.map +1 -0
  462. package/dist/src/teamcity-client/models/operation-result.d.ts +6 -0
  463. package/dist/src/teamcity-client/models/operation-result.d.ts.map +1 -0
  464. package/dist/src/teamcity-client/models/parsed-test-name.d.ts +10 -0
  465. package/dist/src/teamcity-client/models/parsed-test-name.d.ts.map +1 -0
  466. package/dist/src/teamcity-client/models/permission-assignment.d.ts +8 -0
  467. package/dist/src/teamcity-client/models/permission-assignment.d.ts.map +1 -0
  468. package/dist/src/teamcity-client/models/permission-assignments.d.ts +6 -0
  469. package/dist/src/teamcity-client/models/permission-assignments.d.ts.map +1 -0
  470. package/dist/src/teamcity-client/models/permission-restriction.d.ts +8 -0
  471. package/dist/src/teamcity-client/models/permission-restriction.d.ts.map +1 -0
  472. package/dist/src/teamcity-client/models/permission-restrictions.d.ts +6 -0
  473. package/dist/src/teamcity-client/models/permission-restrictions.d.ts.map +1 -0
  474. package/dist/src/teamcity-client/models/permission.d.ts +6 -0
  475. package/dist/src/teamcity-client/models/permission.d.ts.map +1 -0
  476. package/dist/src/teamcity-client/models/permissions.d.ts +6 -0
  477. package/dist/src/teamcity-client/models/permissions.d.ts.map +1 -0
  478. package/dist/src/teamcity-client/models/pin-info.d.ts +6 -0
  479. package/dist/src/teamcity-client/models/pin-info.d.ts.map +1 -0
  480. package/dist/src/teamcity-client/models/plugin.d.ts +9 -0
  481. package/dist/src/teamcity-client/models/plugin.d.ts.map +1 -0
  482. package/dist/src/teamcity-client/models/plugins.d.ts +6 -0
  483. package/dist/src/teamcity-client/models/plugins.d.ts.map +1 -0
  484. package/dist/src/teamcity-client/models/problem-locator.d.ts +15 -0
  485. package/dist/src/teamcity-client/models/problem-locator.d.ts.map +1 -0
  486. package/dist/src/teamcity-client/models/problem-occurrence-locator.d.ts +16 -0
  487. package/dist/src/teamcity-client/models/problem-occurrence-locator.d.ts.map +1 -0
  488. package/dist/src/teamcity-client/models/problem-occurrence.d.ts +20 -0
  489. package/dist/src/teamcity-client/models/problem-occurrence.d.ts.map +1 -0
  490. package/dist/src/teamcity-client/models/problem-occurrences.d.ts +14 -0
  491. package/dist/src/teamcity-client/models/problem-occurrences.d.ts.map +1 -0
  492. package/dist/src/teamcity-client/models/problem-scope.d.ts +9 -0
  493. package/dist/src/teamcity-client/models/problem-scope.d.ts.map +1 -0
  494. package/dist/src/teamcity-client/models/problem-target.d.ts +8 -0
  495. package/dist/src/teamcity-client/models/problem-target.d.ts.map +1 -0
  496. package/dist/src/teamcity-client/models/problem.d.ts +15 -0
  497. package/dist/src/teamcity-client/models/problem.d.ts.map +1 -0
  498. package/dist/src/teamcity-client/models/problems.d.ts +8 -0
  499. package/dist/src/teamcity-client/models/problems.d.ts.map +1 -0
  500. package/dist/src/teamcity-client/models/progress-info.d.ts +13 -0
  501. package/dist/src/teamcity-client/models/progress-info.d.ts.map +1 -0
  502. package/dist/src/teamcity-client/models/project-feature.d.ts +11 -0
  503. package/dist/src/teamcity-client/models/project-feature.d.ts.map +1 -0
  504. package/dist/src/teamcity-client/models/project-features.d.ts +7 -0
  505. package/dist/src/teamcity-client/models/project-features.d.ts.map +1 -0
  506. package/dist/src/teamcity-client/models/project-locator.d.ts +20 -0
  507. package/dist/src/teamcity-client/models/project-locator.d.ts.map +1 -0
  508. package/dist/src/teamcity-client/models/project.d.ts +39 -0
  509. package/dist/src/teamcity-client/models/project.d.ts.map +1 -0
  510. package/dist/src/teamcity-client/models/projects.d.ts +9 -0
  511. package/dist/src/teamcity-client/models/projects.d.ts.map +1 -0
  512. package/dist/src/teamcity-client/models/properties.d.ts +7 -0
  513. package/dist/src/teamcity-client/models/properties.d.ts.map +1 -0
  514. package/dist/src/teamcity-client/models/property.d.ts +8 -0
  515. package/dist/src/teamcity-client/models/property.d.ts.map +1 -0
  516. package/dist/src/teamcity-client/models/related-entities.d.ts +6 -0
  517. package/dist/src/teamcity-client/models/related-entities.d.ts.map +1 -0
  518. package/dist/src/teamcity-client/models/related-entity.d.ts +29 -0
  519. package/dist/src/teamcity-client/models/related-entity.d.ts.map +1 -0
  520. package/dist/src/teamcity-client/models/related.d.ts +5 -0
  521. package/dist/src/teamcity-client/models/related.d.ts.map +1 -0
  522. package/dist/src/teamcity-client/models/repository-state.d.ts +7 -0
  523. package/dist/src/teamcity-client/models/repository-state.d.ts.map +1 -0
  524. package/dist/src/teamcity-client/models/requirements.d.ts +4 -0
  525. package/dist/src/teamcity-client/models/requirements.d.ts.map +1 -0
  526. package/dist/src/teamcity-client/models/resolution.d.ts +11 -0
  527. package/dist/src/teamcity-client/models/resolution.d.ts.map +1 -0
  528. package/dist/src/teamcity-client/models/responsibility.d.ts +5 -0
  529. package/dist/src/teamcity-client/models/responsibility.d.ts.map +1 -0
  530. package/dist/src/teamcity-client/models/revision.d.ts +9 -0
  531. package/dist/src/teamcity-client/models/revision.d.ts.map +1 -0
  532. package/dist/src/teamcity-client/models/revisions.d.ts +7 -0
  533. package/dist/src/teamcity-client/models/revisions.d.ts.map +1 -0
  534. package/dist/src/teamcity-client/models/role.d.ts +6 -0
  535. package/dist/src/teamcity-client/models/role.d.ts.map +1 -0
  536. package/dist/src/teamcity-client/models/roles.d.ts +5 -0
  537. package/dist/src/teamcity-client/models/roles.d.ts.map +1 -0
  538. package/dist/src/teamcity-client/models/server-auth-settings.d.ts +12 -0
  539. package/dist/src/teamcity-client/models/server-auth-settings.d.ts.map +1 -0
  540. package/dist/src/teamcity-client/models/server-global-settings.d.ts +15 -0
  541. package/dist/src/teamcity-client/models/server-global-settings.d.ts.map +1 -0
  542. package/dist/src/teamcity-client/models/server.d.ts +26 -0
  543. package/dist/src/teamcity-client/models/server.d.ts.map +1 -0
  544. package/dist/src/teamcity-client/models/snapshot-dependencies.d.ts +6 -0
  545. package/dist/src/teamcity-client/models/snapshot-dependencies.d.ts.map +1 -0
  546. package/dist/src/teamcity-client/models/snapshot-dependency-link.d.ts +8 -0
  547. package/dist/src/teamcity-client/models/snapshot-dependency-link.d.ts.map +1 -0
  548. package/dist/src/teamcity-client/models/snapshot-dependency.d.ts +13 -0
  549. package/dist/src/teamcity-client/models/snapshot-dependency.d.ts.map +1 -0
  550. package/dist/src/teamcity-client/models/state-field.d.ts +5 -0
  551. package/dist/src/teamcity-client/models/state-field.d.ts.map +1 -0
  552. package/dist/src/teamcity-client/models/step.d.ts +12 -0
  553. package/dist/src/teamcity-client/models/step.d.ts.map +1 -0
  554. package/dist/src/teamcity-client/models/steps.d.ts +6 -0
  555. package/dist/src/teamcity-client/models/steps.d.ts.map +1 -0
  556. package/dist/src/teamcity-client/models/tag-locator.d.ts +6 -0
  557. package/dist/src/teamcity-client/models/tag-locator.d.ts.map +1 -0
  558. package/dist/src/teamcity-client/models/tag.d.ts +7 -0
  559. package/dist/src/teamcity-client/models/tag.d.ts.map +1 -0
  560. package/dist/src/teamcity-client/models/tags.d.ts +6 -0
  561. package/dist/src/teamcity-client/models/tags.d.ts.map +1 -0
  562. package/dist/src/teamcity-client/models/team-city-node-locator.d.ts +6 -0
  563. package/dist/src/teamcity-client/models/team-city-node-locator.d.ts.map +1 -0
  564. package/dist/src/teamcity-client/models/test-counters.d.ts +10 -0
  565. package/dist/src/teamcity-client/models/test-counters.d.ts.map +1 -0
  566. package/dist/src/teamcity-client/models/test-locator.d.ts +14 -0
  567. package/dist/src/teamcity-client/models/test-locator.d.ts.map +1 -0
  568. package/dist/src/teamcity-client/models/test-occurrence-locator.d.ts +31 -0
  569. package/dist/src/teamcity-client/models/test-occurrence-locator.d.ts.map +1 -0
  570. package/dist/src/teamcity-client/models/test-occurrence.d.ts +37 -0
  571. package/dist/src/teamcity-client/models/test-occurrence.d.ts.map +1 -0
  572. package/dist/src/teamcity-client/models/test-occurrences.d.ts +16 -0
  573. package/dist/src/teamcity-client/models/test-occurrences.d.ts.map +1 -0
  574. package/dist/src/teamcity-client/models/test-run-metadata.d.ts +6 -0
  575. package/dist/src/teamcity-client/models/test-run-metadata.d.ts.map +1 -0
  576. package/dist/src/teamcity-client/models/tests.d.ts +10 -0
  577. package/dist/src/teamcity-client/models/tests.d.ts.map +1 -0
  578. package/dist/src/teamcity-client/models/token.d.ts +9 -0
  579. package/dist/src/teamcity-client/models/token.d.ts.map +1 -0
  580. package/dist/src/teamcity-client/models/tokens.d.ts +6 -0
  581. package/dist/src/teamcity-client/models/tokens.d.ts.map +1 -0
  582. package/dist/src/teamcity-client/models/trigger.d.ts +13 -0
  583. package/dist/src/teamcity-client/models/trigger.d.ts.map +1 -0
  584. package/dist/src/teamcity-client/models/triggered-by.d.ts +16 -0
  585. package/dist/src/teamcity-client/models/triggered-by.d.ts.map +1 -0
  586. package/dist/src/teamcity-client/models/triggers.d.ts +6 -0
  587. package/dist/src/teamcity-client/models/triggers.d.ts.map +1 -0
  588. package/dist/src/teamcity-client/models/type.d.ts +4 -0
  589. package/dist/src/teamcity-client/models/type.d.ts.map +1 -0
  590. package/dist/src/teamcity-client/models/typed-value-set.d.ts +10 -0
  591. package/dist/src/teamcity-client/models/typed-value-set.d.ts.map +1 -0
  592. package/dist/src/teamcity-client/models/typed-value-sets.d.ts +6 -0
  593. package/dist/src/teamcity-client/models/typed-value-sets.d.ts.map +1 -0
  594. package/dist/src/teamcity-client/models/typed-value.d.ts +6 -0
  595. package/dist/src/teamcity-client/models/typed-value.d.ts.map +1 -0
  596. package/dist/src/teamcity-client/models/user-approval-rule.d.ts +6 -0
  597. package/dist/src/teamcity-client/models/user-approval-rule.d.ts.map +1 -0
  598. package/dist/src/teamcity-client/models/user-approvals.d.ts +6 -0
  599. package/dist/src/teamcity-client/models/user-approvals.d.ts.map +1 -0
  600. package/dist/src/teamcity-client/models/user-avatars.d.ts +10 -0
  601. package/dist/src/teamcity-client/models/user-avatars.d.ts.map +1 -0
  602. package/dist/src/teamcity-client/models/user-group-locator.d.ts +6 -0
  603. package/dist/src/teamcity-client/models/user-group-locator.d.ts.map +1 -0
  604. package/dist/src/teamcity-client/models/user-locator.d.ts +15 -0
  605. package/dist/src/teamcity-client/models/user-locator.d.ts.map +1 -0
  606. package/dist/src/teamcity-client/models/user.d.ts +22 -0
  607. package/dist/src/teamcity-client/models/user.d.ts.map +1 -0
  608. package/dist/src/teamcity-client/models/users.d.ts +6 -0
  609. package/dist/src/teamcity-client/models/users.d.ts.map +1 -0
  610. package/dist/src/teamcity-client/models/vcs-check-status.d.ts +6 -0
  611. package/dist/src/teamcity-client/models/vcs-check-status.d.ts.map +1 -0
  612. package/dist/src/teamcity-client/models/vcs-label.d.ts +18 -0
  613. package/dist/src/teamcity-client/models/vcs-label.d.ts.map +1 -0
  614. package/dist/src/teamcity-client/models/vcs-labels.d.ts +6 -0
  615. package/dist/src/teamcity-client/models/vcs-labels.d.ts.map +1 -0
  616. package/dist/src/teamcity-client/models/vcs-root-entries.d.ts +6 -0
  617. package/dist/src/teamcity-client/models/vcs-root-entries.d.ts.map +1 -0
  618. package/dist/src/teamcity-client/models/vcs-root-entry.d.ts +8 -0
  619. package/dist/src/teamcity-client/models/vcs-root-entry.d.ts.map +1 -0
  620. package/dist/src/teamcity-client/models/vcs-root-instance-locator.d.ts +38 -0
  621. package/dist/src/teamcity-client/models/vcs-root-instance-locator.d.ts.map +1 -0
  622. package/dist/src/teamcity-client/models/vcs-root-instance.d.ts +24 -0
  623. package/dist/src/teamcity-client/models/vcs-root-instance.d.ts.map +1 -0
  624. package/dist/src/teamcity-client/models/vcs-root-instances.d.ts +9 -0
  625. package/dist/src/teamcity-client/models/vcs-root-instances.d.ts.map +1 -0
  626. package/dist/src/teamcity-client/models/vcs-root-locator.d.ts +37 -0
  627. package/dist/src/teamcity-client/models/vcs-root-locator.d.ts.map +1 -0
  628. package/dist/src/teamcity-client/models/vcs-root.d.ts +20 -0
  629. package/dist/src/teamcity-client/models/vcs-root.d.ts.map +1 -0
  630. package/dist/src/teamcity-client/models/vcs-roots.d.ts +9 -0
  631. package/dist/src/teamcity-client/models/vcs-roots.d.ts.map +1 -0
  632. package/dist/src/teamcity-client/models/vcs-status.d.ts +6 -0
  633. package/dist/src/teamcity-client/models/vcs-status.d.ts.map +1 -0
  634. package/dist/src/teamcity-client/models/versioned-settings-config.d.ts +31 -0
  635. package/dist/src/teamcity-client/models/versioned-settings-config.d.ts.map +1 -0
  636. package/dist/src/teamcity-client/models/versioned-settings-context-parameter.d.ts +5 -0
  637. package/dist/src/teamcity-client/models/versioned-settings-context-parameter.d.ts.map +1 -0
  638. package/dist/src/teamcity-client/models/versioned-settings-context-parameters.d.ts +5 -0
  639. package/dist/src/teamcity-client/models/versioned-settings-context-parameters.d.ts.map +1 -0
  640. package/dist/src/teamcity-client/models/versioned-settings-error.d.ts +7 -0
  641. package/dist/src/teamcity-client/models/versioned-settings-error.d.ts.map +1 -0
  642. package/dist/src/teamcity-client/models/versioned-settings-status.d.ts +15 -0
  643. package/dist/src/teamcity-client/models/versioned-settings-status.d.ts.map +1 -0
  644. package/dist/src/teamcity-client/models/versioned-settings-token.d.ts +6 -0
  645. package/dist/src/teamcity-client/models/versioned-settings-token.d.ts.map +1 -0
  646. package/dist/src/teamcity-client/models/versioned-settings-tokens.d.ts +5 -0
  647. package/dist/src/teamcity-client/models/versioned-settings-tokens.d.ts.map +1 -0
  648. package/dist/src/tools/index.d.ts +2 -0
  649. package/dist/src/tools/index.d.ts.map +1 -0
  650. package/dist/src/tools.d.ts +22 -0
  651. package/dist/src/tools.d.ts.map +1 -0
  652. package/dist/src/types/config.d.ts +129 -0
  653. package/dist/src/types/config.d.ts.map +1 -0
  654. package/dist/src/types/index.d.ts +116 -0
  655. package/dist/src/types/index.d.ts.map +1 -0
  656. package/dist/src/types/mcp.d.ts +68 -0
  657. package/dist/src/types/mcp.d.ts.map +1 -0
  658. package/dist/src/types/project.d.ts +56 -0
  659. package/dist/src/types/project.d.ts.map +1 -0
  660. package/dist/src/types/teamcity.d.ts +258 -0
  661. package/dist/src/types/teamcity.d.ts.map +1 -0
  662. package/dist/src/utils/async/index.d.ts +90 -0
  663. package/dist/src/utils/async/index.d.ts.map +1 -0
  664. package/dist/src/utils/error-logger.d.ts +34 -0
  665. package/dist/src/utils/error-logger.d.ts.map +1 -0
  666. package/dist/src/utils/index.d.ts +23 -0
  667. package/dist/src/utils/index.d.ts.map +1 -0
  668. package/dist/src/utils/logger/index.d.ts +73 -0
  669. package/dist/src/utils/logger/index.d.ts.map +1 -0
  670. package/dist/src/utils/logger.d.ts +11 -0
  671. package/dist/src/utils/logger.d.ts.map +1 -0
  672. package/dist/src/utils/lru-cache.d.ts +20 -0
  673. package/dist/src/utils/lru-cache.d.ts.map +1 -0
  674. package/dist/src/utils/mcp.d.ts +18 -0
  675. package/dist/src/utils/mcp.d.ts.map +1 -0
  676. package/dist/src/utils/validation.d.ts +61 -0
  677. package/dist/src/utils/validation.d.ts.map +1 -0
  678. package/docs/TEAMCITY_MCP_TOOLS_GUIDE.md +1076 -0
  679. package/docs/mcp-tools-mode-matrix.md +68 -0
  680. package/docs/mcp-tools-reference.md +203 -0
  681. package/examples/list-build-configs-usage.ts +276 -0
  682. package/jest.ci.config.js +14 -0
  683. package/jest.config.js +108 -0
  684. package/jest.setup.js +24 -0
  685. package/openapi-generator-config.json +27 -0
  686. package/openapitools.json +7 -0
  687. package/package.json +101 -0
  688. package/scripts/build.cjs +87 -0
  689. package/scripts/debug-fetch-log.ts +52 -0
  690. package/scripts/emit-coverage-stats.js +42 -0
  691. package/scripts/fetch-swagger-spec.ts +140 -0
  692. package/scripts/interact.sh +23 -0
  693. package/scripts/print-builds.ts +21 -0
  694. package/scripts/verify-integration-env.cjs +29 -0
  695. package/src/api-client.ts +307 -0
  696. package/src/config/index.ts +286 -0
  697. package/src/errors/index.ts +25 -0
  698. package/src/formatters/build-step-formatter.ts +178 -0
  699. package/src/formatters/trigger-formatter.ts +207 -0
  700. package/src/index.ts +61 -0
  701. package/src/middleware/error.test.ts +274 -0
  702. package/src/middleware/error.ts +314 -0
  703. package/src/middleware/global-error-handler.test.ts +239 -0
  704. package/src/middleware/global-error-handler.ts +203 -0
  705. package/src/middleware/index.ts +5 -0
  706. package/src/server.ts +126 -0
  707. package/src/swagger/index.ts +220 -0
  708. package/src/swagger/swagger-cache.ts +220 -0
  709. package/src/swagger/swagger-fetcher.ts +126 -0
  710. package/src/swagger/swagger-validator.ts +212 -0
  711. package/src/teamcity/api-types.ts +387 -0
  712. package/src/teamcity/artifact-manager.ts +362 -0
  713. package/src/teamcity/auth.ts +215 -0
  714. package/src/teamcity/branch-discovery-manager.ts +311 -0
  715. package/src/teamcity/branch-filtering-service.ts +369 -0
  716. package/src/teamcity/branch-specification-parser.ts +238 -0
  717. package/src/teamcity/build-config-manager.ts +458 -0
  718. package/src/teamcity/build-config-navigator.ts +589 -0
  719. package/src/teamcity/build-configuration-clone-manager.ts +501 -0
  720. package/src/teamcity/build-configuration-manager.ts +447 -0
  721. package/src/teamcity/build-configuration-resolver.ts +725 -0
  722. package/src/teamcity/build-configuration-update-manager.ts +610 -0
  723. package/src/teamcity/build-list-manager.ts +313 -0
  724. package/src/teamcity/build-parameters-manager.ts +875 -0
  725. package/src/teamcity/build-progress-tracker.ts +514 -0
  726. package/src/teamcity/build-query-builder.ts +325 -0
  727. package/src/teamcity/build-queue-manager.ts +622 -0
  728. package/src/teamcity/build-results-manager.ts +589 -0
  729. package/src/teamcity/build-status-manager.ts +564 -0
  730. package/src/teamcity/build-step-manager.ts +508 -0
  731. package/src/teamcity/build-trigger-manager.ts +1083 -0
  732. package/src/teamcity/circuit-breaker.ts +219 -0
  733. package/src/teamcity/client-adapter.ts +35 -0
  734. package/src/teamcity/client.ts +269 -0
  735. package/src/teamcity/config.ts +188 -0
  736. package/src/teamcity/configuration-branch-matcher.ts +327 -0
  737. package/src/teamcity/errors.ts +351 -0
  738. package/src/teamcity/index.ts +266 -0
  739. package/src/teamcity/pagination.ts +209 -0
  740. package/src/teamcity/project-list-manager.ts +267 -0
  741. package/src/teamcity/project-manager.ts +493 -0
  742. package/src/teamcity/project-navigator.ts +664 -0
  743. package/src/teamcity/test-problem-reporter.ts +423 -0
  744. package/src/teamcity/types/api-responses.ts +314 -0
  745. package/src/teamcity-client/.openapi-generator/FILES +274 -0
  746. package/src/teamcity-client/.openapi-generator/VERSION +1 -0
  747. package/src/teamcity-client/.openapi-generator-ignore +23 -0
  748. package/src/teamcity-client/README.md +50 -0
  749. package/src/teamcity-client/api/agent-api.ts +2046 -0
  750. package/src/teamcity-client/api/agent-pool-api.ts +1877 -0
  751. package/src/teamcity-client/api/agent-type-api.ts +213 -0
  752. package/src/teamcity-client/api/audit-api.ts +341 -0
  753. package/src/teamcity-client/api/avatar-api.ts +569 -0
  754. package/src/teamcity-client/api/build-api.ts +7726 -0
  755. package/src/teamcity-client/api/build-queue-api.ts +1922 -0
  756. package/src/teamcity-client/api/build-type-api.ts +15502 -0
  757. package/src/teamcity-client/api/change-api.ts +1311 -0
  758. package/src/teamcity-client/api/cloud-instance-api.ts +1289 -0
  759. package/src/teamcity-client/api/deployment-dashboard-api.ts +1295 -0
  760. package/src/teamcity-client/api/global-server-settings-api.ts +286 -0
  761. package/src/teamcity-client/api/group-api.ts +2084 -0
  762. package/src/teamcity-client/api/health-api.ts +566 -0
  763. package/src/teamcity-client/api/investigation-api.ts +856 -0
  764. package/src/teamcity-client/api/mute-api.ts +824 -0
  765. package/src/teamcity-client/api/node-api.ts +877 -0
  766. package/src/teamcity-client/api/problem-api.ts +337 -0
  767. package/src/teamcity-client/api/problem-occurrence-api.ts +349 -0
  768. package/src/teamcity-client/api/project-api.ts +6511 -0
  769. package/src/teamcity-client/api/role-api.ts +1062 -0
  770. package/src/teamcity-client/api/root-api.ts +439 -0
  771. package/src/teamcity-client/api/server-api.ts +2306 -0
  772. package/src/teamcity-client/api/server-authentication-settings-api.ts +289 -0
  773. package/src/teamcity-client/api/test-api.ts +329 -0
  774. package/src/teamcity-client/api/test-occurrence-api.ts +340 -0
  775. package/src/teamcity-client/api/user-api.ts +3644 -0
  776. package/src/teamcity-client/api/vcs-root-api.ts +1837 -0
  777. package/src/teamcity-client/api/vcs-root-instance-api.ts +2479 -0
  778. package/src/teamcity-client/api/versioned-settings-api.ts +2025 -0
  779. package/src/teamcity-client/api.ts +44 -0
  780. package/src/teamcity-client/base.ts +91 -0
  781. package/src/teamcity-client/common.ts +197 -0
  782. package/src/teamcity-client/configuration.ts +130 -0
  783. package/src/teamcity-client/git_push.sh +57 -0
  784. package/src/teamcity-client/index.ts +17 -0
  785. package/src/teamcity-client/models/agent-locator.ts +124 -0
  786. package/src/teamcity-client/models/agent-pool-locator.ts +63 -0
  787. package/src/teamcity-client/models/agent-pool.ts +87 -0
  788. package/src/teamcity-client/models/agent-pools.ts +54 -0
  789. package/src/teamcity-client/models/agent-requirement.ts +66 -0
  790. package/src/teamcity-client/models/agent-requirements.ts +36 -0
  791. package/src/teamcity-client/models/agent-type-locator.ts +51 -0
  792. package/src/teamcity-client/models/agent-type.ts +81 -0
  793. package/src/teamcity-client/models/agent-types.ts +54 -0
  794. package/src/teamcity-client/models/agent.ts +295 -0
  795. package/src/teamcity-client/models/agents.ts +54 -0
  796. package/src/teamcity-client/models/approvable-build.ts +39 -0
  797. package/src/teamcity-client/models/approval-info.ts +100 -0
  798. package/src/teamcity-client/models/artifact-dependencies.ts +42 -0
  799. package/src/teamcity-client/models/artifact-dependency.ts +75 -0
  800. package/src/teamcity-client/models/artifact-download-info.ts +33 -0
  801. package/src/teamcity-client/models/audit-action.ts +39 -0
  802. package/src/teamcity-client/models/audit-event.ts +66 -0
  803. package/src/teamcity-client/models/audit-events.ts +54 -0
  804. package/src/teamcity-client/models/audit-locator.ts +315 -0
  805. package/src/teamcity-client/models/auth-module.ts +36 -0
  806. package/src/teamcity-client/models/auth-modules.ts +30 -0
  807. package/src/teamcity-client/models/authorization-tokens-requirements.ts +33 -0
  808. package/src/teamcity-client/models/authorized-info.ts +36 -0
  809. package/src/teamcity-client/models/branch-locator.ts +117 -0
  810. package/src/teamcity-client/models/branch-version.ts +78 -0
  811. package/src/teamcity-client/models/branch.ts +72 -0
  812. package/src/teamcity-client/models/branches.ts +42 -0
  813. package/src/teamcity-client/models/build-cancel-request.ts +33 -0
  814. package/src/teamcity-client/models/build-change.ts +36 -0
  815. package/src/teamcity-client/models/build-changes.ts +36 -0
  816. package/src/teamcity-client/models/build-executor.ts +27 -0
  817. package/src/teamcity-client/models/build-locator.ts +277 -0
  818. package/src/teamcity-client/models/build-queue-locator.ts +87 -0
  819. package/src/teamcity-client/models/build-status-update.ts +33 -0
  820. package/src/teamcity-client/models/build-trigger-customization.ts +42 -0
  821. package/src/teamcity-client/models/build-triggering-options.ts +72 -0
  822. package/src/teamcity-client/models/build-type-locator.ts +111 -0
  823. package/src/teamcity-client/models/build-type.ts +305 -0
  824. package/src/teamcity-client/models/build-types.ts +54 -0
  825. package/src/teamcity-client/models/build.ts +631 -0
  826. package/src/teamcity-client/models/builds-with-reason.ts +36 -0
  827. package/src/teamcity-client/models/builds.ts +54 -0
  828. package/src/teamcity-client/models/change-locator.ts +129 -0
  829. package/src/teamcity-client/models/change-status.ts +114 -0
  830. package/src/teamcity-client/models/change.ts +186 -0
  831. package/src/teamcity-client/models/changes.ts +54 -0
  832. package/src/teamcity-client/models/cleanup.ts +51 -0
  833. package/src/teamcity-client/models/cloud-error.ts +33 -0
  834. package/src/teamcity-client/models/cloud-image-locator.ts +105 -0
  835. package/src/teamcity-client/models/cloud-image.ts +102 -0
  836. package/src/teamcity-client/models/cloud-images.ts +54 -0
  837. package/src/teamcity-client/models/cloud-instance-locator.ts +81 -0
  838. package/src/teamcity-client/models/cloud-instance.ts +90 -0
  839. package/src/teamcity-client/models/cloud-instances.ts +54 -0
  840. package/src/teamcity-client/models/cloud-profile-locator.ts +81 -0
  841. package/src/teamcity-client/models/cloud-profile.ts +72 -0
  842. package/src/teamcity-client/models/cloud-profiles.ts +54 -0
  843. package/src/teamcity-client/models/comment.ts +42 -0
  844. package/src/teamcity-client/models/commiter.ts +36 -0
  845. package/src/teamcity-client/models/compatibilities.ts +36 -0
  846. package/src/teamcity-client/models/compatibility-policy.ts +36 -0
  847. package/src/teamcity-client/models/compatibility.ts +54 -0
  848. package/src/teamcity-client/models/composite-approval-rule.ts +54 -0
  849. package/src/teamcity-client/models/composite-approvals.ts +36 -0
  850. package/src/teamcity-client/models/cron.ts +51 -0
  851. package/src/teamcity-client/models/customizations.ts +45 -0
  852. package/src/teamcity-client/models/daily.ts +33 -0
  853. package/src/teamcity-client/models/datas.ts +36 -0
  854. package/src/teamcity-client/models/deployment-dashboard-locator.ts +57 -0
  855. package/src/teamcity-client/models/deployment-dashboard.ts +51 -0
  856. package/src/teamcity-client/models/deployment-dashboards.ts +54 -0
  857. package/src/teamcity-client/models/deployment-history.ts +36 -0
  858. package/src/teamcity-client/models/deployment-instance-locator.ts +62 -0
  859. package/src/teamcity-client/models/deployment-instance.ts +68 -0
  860. package/src/teamcity-client/models/deployment-instances.ts +54 -0
  861. package/src/teamcity-client/models/deployment-state-entries.ts +45 -0
  862. package/src/teamcity-client/models/deployment-state-entry.ts +59 -0
  863. package/src/teamcity-client/models/disabled-responsibilities.ts +36 -0
  864. package/src/teamcity-client/models/download-info.ts +45 -0
  865. package/src/teamcity-client/models/downloaded-artifacts.ts +42 -0
  866. package/src/teamcity-client/models/effective-responsibilities.ts +36 -0
  867. package/src/teamcity-client/models/enabled-info.ts +42 -0
  868. package/src/teamcity-client/models/enabled-responsibilities.ts +36 -0
  869. package/src/teamcity-client/models/entries.ts +36 -0
  870. package/src/teamcity-client/models/entry.ts +33 -0
  871. package/src/teamcity-client/models/environment.ts +33 -0
  872. package/src/teamcity-client/models/feature.ts +66 -0
  873. package/src/teamcity-client/models/features.ts +36 -0
  874. package/src/teamcity-client/models/file-change.ts +63 -0
  875. package/src/teamcity-client/models/file-changes.ts +36 -0
  876. package/src/teamcity-client/models/files.ts +39 -0
  877. package/src/teamcity-client/models/group-approval-rule.ts +45 -0
  878. package/src/teamcity-client/models/group-approvals.ts +36 -0
  879. package/src/teamcity-client/models/group.ts +87 -0
  880. package/src/teamcity-client/models/groups.ts +36 -0
  881. package/src/teamcity-client/models/health-categories.ts +54 -0
  882. package/src/teamcity-client/models/health-category.ts +45 -0
  883. package/src/teamcity-client/models/health-item.ts +51 -0
  884. package/src/teamcity-client/models/health-status-items.ts +54 -0
  885. package/src/teamcity-client/models/href.ts +27 -0
  886. package/src/teamcity-client/models/index.ts +229 -0
  887. package/src/teamcity-client/models/investigation-locator.ts +125 -0
  888. package/src/teamcity-client/models/investigation.ts +100 -0
  889. package/src/teamcity-client/models/investigations.ts +54 -0
  890. package/src/teamcity-client/models/issue-usage.ts +39 -0
  891. package/src/teamcity-client/models/issue.ts +33 -0
  892. package/src/teamcity-client/models/issues-usages.ts +42 -0
  893. package/src/teamcity-client/models/issues.ts +30 -0
  894. package/src/teamcity-client/models/items.ts +27 -0
  895. package/src/teamcity-client/models/labeled-value.ts +33 -0
  896. package/src/teamcity-client/models/license-key.ts +134 -0
  897. package/src/teamcity-client/models/license-keys.ts +42 -0
  898. package/src/teamcity-client/models/licensing-data.ts +114 -0
  899. package/src/teamcity-client/models/link.ts +39 -0
  900. package/src/teamcity-client/models/links.ts +36 -0
  901. package/src/teamcity-client/models/matrix-build-feature-descriptor.ts +48 -0
  902. package/src/teamcity-client/models/matrix-configuration.ts +51 -0
  903. package/src/teamcity-client/models/matrix-dependencies.ts +36 -0
  904. package/src/teamcity-client/models/matrix-dependency.ts +39 -0
  905. package/src/teamcity-client/models/matrix-parameter-descriptor.ts +42 -0
  906. package/src/teamcity-client/models/meta-data.ts +36 -0
  907. package/src/teamcity-client/models/metric-tag.ts +33 -0
  908. package/src/teamcity-client/models/metric-tags.ts +36 -0
  909. package/src/teamcity-client/models/metric-value.ts +42 -0
  910. package/src/teamcity-client/models/metric-values.ts +36 -0
  911. package/src/teamcity-client/models/metric.ts +57 -0
  912. package/src/teamcity-client/models/metrics.ts +36 -0
  913. package/src/teamcity-client/models/model-file.ts +75 -0
  914. package/src/teamcity-client/models/multiple-operation-result.ts +42 -0
  915. package/src/teamcity-client/models/mute-locator.ts +108 -0
  916. package/src/teamcity-client/models/mute.ts +69 -0
  917. package/src/teamcity-client/models/mutes.ts +54 -0
  918. package/src/teamcity-client/models/new-build-type-description.ts +75 -0
  919. package/src/teamcity-client/models/new-project-description.ts +87 -0
  920. package/src/teamcity-client/models/node.ts +87 -0
  921. package/src/teamcity-client/models/nodes.ts +36 -0
  922. package/src/teamcity-client/models/operation-result.ts +36 -0
  923. package/src/teamcity-client/models/parsed-test-name.ts +63 -0
  924. package/src/teamcity-client/models/permission-assignment.ts +45 -0
  925. package/src/teamcity-client/models/permission-assignments.ts +36 -0
  926. package/src/teamcity-client/models/permission-restriction.ts +45 -0
  927. package/src/teamcity-client/models/permission-restrictions.ts +36 -0
  928. package/src/teamcity-client/models/permission.ts +39 -0
  929. package/src/teamcity-client/models/permissions.ts +36 -0
  930. package/src/teamcity-client/models/pin-info.ts +36 -0
  931. package/src/teamcity-client/models/plugin.ts +54 -0
  932. package/src/teamcity-client/models/plugins.ts +36 -0
  933. package/src/teamcity-client/models/problem-locator.ts +93 -0
  934. package/src/teamcity-client/models/problem-occurrence-locator.ts +99 -0
  935. package/src/teamcity-client/models/problem-occurrence.ts +114 -0
  936. package/src/teamcity-client/models/problem-occurrences.ts +84 -0
  937. package/src/teamcity-client/models/problem-scope.ts +48 -0
  938. package/src/teamcity-client/models/problem-target.ts +45 -0
  939. package/src/teamcity-client/models/problem.ts +84 -0
  940. package/src/teamcity-client/models/problems.ts +48 -0
  941. package/src/teamcity-client/models/progress-info.ts +78 -0
  942. package/src/teamcity-client/models/project-feature.ts +66 -0
  943. package/src/teamcity-client/models/project-features.ts +42 -0
  944. package/src/teamcity-client/models/project-locator.ts +123 -0
  945. package/src/teamcity-client/models/project.ts +207 -0
  946. package/src/teamcity-client/models/projects.ts +54 -0
  947. package/src/teamcity-client/models/properties.ts +42 -0
  948. package/src/teamcity-client/models/property.ts +48 -0
  949. package/src/teamcity-client/models/related-entities.ts +36 -0
  950. package/src/teamcity-client/models/related-entity.ts +144 -0
  951. package/src/teamcity-client/models/related.ts +30 -0
  952. package/src/teamcity-client/models/repository-state.ts +42 -0
  953. package/src/teamcity-client/models/requirements.ts +27 -0
  954. package/src/teamcity-client/models/resolution.ts +41 -0
  955. package/src/teamcity-client/models/responsibility.ts +33 -0
  956. package/src/teamcity-client/models/revision.ts +54 -0
  957. package/src/teamcity-client/models/revisions.ts +42 -0
  958. package/src/teamcity-client/models/role.ts +39 -0
  959. package/src/teamcity-client/models/roles.ts +30 -0
  960. package/src/teamcity-client/models/server-auth-settings.ts +72 -0
  961. package/src/teamcity-client/models/server-global-settings.ts +93 -0
  962. package/src/teamcity-client/models/server.ts +156 -0
  963. package/src/teamcity-client/models/snapshot-dependencies.ts +36 -0
  964. package/src/teamcity-client/models/snapshot-dependency-link.ts +45 -0
  965. package/src/teamcity-client/models/snapshot-dependency.ts +75 -0
  966. package/src/teamcity-client/models/state-field.ts +33 -0
  967. package/src/teamcity-client/models/step.ts +72 -0
  968. package/src/teamcity-client/models/steps.ts +36 -0
  969. package/src/teamcity-client/models/tag-locator.ts +39 -0
  970. package/src/teamcity-client/models/tag.ts +42 -0
  971. package/src/teamcity-client/models/tags.ts +36 -0
  972. package/src/teamcity-client/models/team-city-node-locator.ts +39 -0
  973. package/src/teamcity-client/models/test-counters.ts +63 -0
  974. package/src/teamcity-client/models/test-locator.ts +87 -0
  975. package/src/teamcity-client/models/test-occurrence-locator.ts +147 -0
  976. package/src/teamcity-client/models/test-occurrence.ts +173 -0
  977. package/src/teamcity-client/models/test-occurrences.ts +93 -0
  978. package/src/teamcity-client/models/test-run-metadata.ts +36 -0
  979. package/src/teamcity-client/models/tests.ts +57 -0
  980. package/src/teamcity-client/models/token.ts +54 -0
  981. package/src/teamcity-client/models/tokens.ts +36 -0
  982. package/src/teamcity-client/models/trigger.ts +75 -0
  983. package/src/teamcity-client/models/triggered-by.ts +87 -0
  984. package/src/teamcity-client/models/triggers.ts +36 -0
  985. package/src/teamcity-client/models/type.ts +27 -0
  986. package/src/teamcity-client/models/typed-value-set.ts +60 -0
  987. package/src/teamcity-client/models/typed-value-sets.ts +36 -0
  988. package/src/teamcity-client/models/typed-value.ts +39 -0
  989. package/src/teamcity-client/models/user-approval-rule.ts +36 -0
  990. package/src/teamcity-client/models/user-approvals.ts +36 -0
  991. package/src/teamcity-client/models/user-avatars.ts +63 -0
  992. package/src/teamcity-client/models/user-group-locator.ts +39 -0
  993. package/src/teamcity-client/models/user-locator.ts +93 -0
  994. package/src/teamcity-client/models/user.ts +123 -0
  995. package/src/teamcity-client/models/users.ts +36 -0
  996. package/src/teamcity-client/models/vcs-check-status.ts +39 -0
  997. package/src/teamcity-client/models/vcs-label.ts +65 -0
  998. package/src/teamcity-client/models/vcs-labels.ts +36 -0
  999. package/src/teamcity-client/models/vcs-root-entries.ts +36 -0
  1000. package/src/teamcity-client/models/vcs-root-entry.ts +48 -0
  1001. package/src/teamcity-client/models/vcs-root-instance-locator.ts +124 -0
  1002. package/src/teamcity-client/models/vcs-root-instance.ts +132 -0
  1003. package/src/teamcity-client/models/vcs-root-instances.ts +54 -0
  1004. package/src/teamcity-client/models/vcs-root-locator.ts +118 -0
  1005. package/src/teamcity-client/models/vcs-root.ts +111 -0
  1006. package/src/teamcity-client/models/vcs-roots.ts +54 -0
  1007. package/src/teamcity-client/models/vcs-status.ts +36 -0
  1008. package/src/teamcity-client/models/versioned-settings-config.ts +111 -0
  1009. package/src/teamcity-client/models/versioned-settings-context-parameter.ts +33 -0
  1010. package/src/teamcity-client/models/versioned-settings-context-parameters.ts +30 -0
  1011. package/src/teamcity-client/models/versioned-settings-error.ts +45 -0
  1012. package/src/teamcity-client/models/versioned-settings-status.ts +68 -0
  1013. package/src/teamcity-client/models/versioned-settings-token.ts +39 -0
  1014. package/src/teamcity-client/models/versioned-settings-tokens.ts +30 -0
  1015. package/src/teamcity-client/package.json +33 -0
  1016. package/src/teamcity-client/tsconfig.esm.json +7 -0
  1017. package/src/teamcity-client/tsconfig.json +13 -0
  1018. package/src/teamcity-client-types.d.ts +27 -0
  1019. package/src/tools/index.ts +2 -0
  1020. package/src/tools.ts +2890 -0
  1021. package/src/types/config.ts +140 -0
  1022. package/src/types/index.ts +171 -0
  1023. package/src/types/mcp.ts +80 -0
  1024. package/src/types/project.ts +128 -0
  1025. package/src/types/teamcity.ts +289 -0
  1026. package/src/utils/async/index.test.ts +664 -0
  1027. package/src/utils/async/index.ts +578 -0
  1028. package/src/utils/error-logger.test.ts +173 -0
  1029. package/src/utils/error-logger.ts +145 -0
  1030. package/src/utils/index.ts +88 -0
  1031. package/src/utils/logger/index.test.ts +271 -0
  1032. package/src/utils/logger/index.ts +441 -0
  1033. package/src/utils/logger.ts +49 -0
  1034. package/src/utils/lru-cache.ts +105 -0
  1035. package/src/utils/mcp.ts +84 -0
  1036. package/src/utils/validation.ts +284 -0
  1037. package/tests/__mocks__/@modelcontextprotocol/sdk/server/index.js +31 -0
  1038. package/tests/__mocks__/@modelcontextprotocol/sdk/server/stdio.js +12 -0
  1039. package/tests/__mocks__/@modelcontextprotocol/sdk/types.js +16 -0
  1040. package/tests/development-tooling.test.ts +207 -0
  1041. package/tests/e2e/cleanup.ts +68 -0
  1042. package/tests/e2e/index.ts +166 -0
  1043. package/tests/e2e/mcp-client.ts +73 -0
  1044. package/tests/e2e/setup-playground.ts +67 -0
  1045. package/tests/integration/branches-and-queue-scenario.test.ts +108 -0
  1046. package/tests/integration/build-config-clone-update-scenario.test.ts +80 -0
  1047. package/tests/integration/build-results-and-logs-scenario.test.ts +136 -0
  1048. package/tests/integration/dev-tools-list.test.ts +103 -0
  1049. package/tests/integration/e2e-scenario.test.ts +147 -0
  1050. package/tests/integration/lib/mcp-runner.ts +59 -0
  1051. package/tests/integration/parameters-scenario.test.ts +85 -0
  1052. package/tests/integration/pause-configs-scenario.test.ts +74 -0
  1053. package/tests/integration/queue-maintenance-scenario.test.ts +132 -0
  1054. package/tests/integration/server-health-scenario.test.ts +59 -0
  1055. package/tests/integration/triggers-scenario.test.ts +80 -0
  1056. package/tests/integration/vcs-scenario.test.ts +78 -0
  1057. package/tests/jest.test.js +122 -0
  1058. package/tests/mcp-server.test.ts +378 -0
  1059. package/tests/setup.test.js +97 -0
  1060. package/tests/setup.ts +88 -0
  1061. package/tests/swagger/swagger-fetcher.test.ts +619 -0
  1062. package/tests/teamcity/auth.test.ts +276 -0
  1063. package/tests/teamcity/circuit-breaker.test.ts +304 -0
  1064. package/tests/teamcity/errors.test.ts +221 -0
  1065. package/tests/test-utils/mock-logger.ts +15 -0
  1066. package/tests/test-utils/mock-teamcity-client.ts +403 -0
  1067. package/tests/testing-infrastructure.test.ts +209 -0
  1068. package/tests/tooling.test.js +118 -0
  1069. package/tests/types/shims.d.ts +20 -0
  1070. package/tests/types/tool-results.ts +68 -0
  1071. package/tests/typescript.test.js +108 -0
  1072. package/tests/unit/mcp/server-lifecycle.test.ts +301 -0
  1073. package/tests/unit/middleware/error.test.ts +283 -0
  1074. package/tests/unit/server.test.ts +102 -0
  1075. package/tests/unit/swagger/swagger-manager.test.ts +89 -0
  1076. package/tests/unit/teamcity/artifact-manager.test.ts +450 -0
  1077. package/tests/unit/teamcity/branch-discovery-manager.test.ts +561 -0
  1078. package/tests/unit/teamcity/branch-filtering-service.test.ts +481 -0
  1079. package/tests/unit/teamcity/branch-specification-parser.test.ts +443 -0
  1080. package/tests/unit/teamcity/build-config-navigator-more.test.ts +245 -0
  1081. package/tests/unit/teamcity/build-config-navigator.test.ts +1452 -0
  1082. package/tests/unit/teamcity/build-configuration-manager.test.ts +750 -0
  1083. package/tests/unit/teamcity/build-configuration-resolver.test.ts +659 -0
  1084. package/tests/unit/teamcity/build-list-manager.test.ts +574 -0
  1085. package/tests/unit/teamcity/build-parameters-manager.test.ts +712 -0
  1086. package/tests/unit/teamcity/build-progress-tracker.test.ts +1030 -0
  1087. package/tests/unit/teamcity/build-query-builder.test.ts +311 -0
  1088. package/tests/unit/teamcity/build-queue-manager.test.ts +879 -0
  1089. package/tests/unit/teamcity/build-results-manager.test.ts +630 -0
  1090. package/tests/unit/teamcity/build-status-manager.test.ts +640 -0
  1091. package/tests/unit/teamcity/build-step-manager.test.ts +886 -0
  1092. package/tests/unit/teamcity/build-trigger-manager.test.ts +1052 -0
  1093. package/tests/unit/teamcity/configuration-branch-matcher.test.ts +692 -0
  1094. package/tests/unit/teamcity/pagination.test.ts +118 -0
  1095. package/tests/unit/teamcity/project-list-manager.test.ts +118 -0
  1096. package/tests/unit/teamcity/project-manager-branches.test.ts +176 -0
  1097. package/tests/unit/teamcity/project-manager-more.test.ts +90 -0
  1098. package/tests/unit/teamcity/project-manager.test.ts +189 -0
  1099. package/tests/unit/teamcity/project-navigator-branches.test.ts +168 -0
  1100. package/tests/unit/teamcity/project-navigator-more.test.ts +58 -0
  1101. package/tests/unit/teamcity/project-navigator.test.ts +791 -0
  1102. package/tests/unit/teamcity/test-problem-reporter-trend-patterns.test.ts +80 -0
  1103. package/tests/unit/teamcity/test-problem-reporter.test.ts +551 -0
  1104. package/tests/unit/tools/agent-vcs-admin.test.ts +121 -0
  1105. package/tests/unit/tools/availability-and-queue.test.ts +118 -0
  1106. package/tests/unit/tools/branches-vcs-agents.test.ts +119 -0
  1107. package/tests/unit/tools/build-actions-and-status.test.ts +125 -0
  1108. package/tests/unit/tools/bulk-surface-coverage.test.ts +116 -0
  1109. package/tests/unit/tools/compatibility-lookups.test.ts +150 -0
  1110. package/tests/unit/tools/fetch-build-log-ambiguity.test.ts +70 -0
  1111. package/tests/unit/tools/fetch-build-log-by-number.test.ts +66 -0
  1112. package/tests/unit/tools/fetch-build-log-pagination.test.ts +73 -0
  1113. package/tests/unit/tools/fetch-build-log-tail.test.ts +33 -0
  1114. package/tests/unit/tools/get-status-and-results.test.ts +67 -0
  1115. package/tests/unit/tools/list-branches-and-parameters.test.ts +36 -0
  1116. package/tests/unit/tools/list-build-configs-pagination.test.ts +39 -0
  1117. package/tests/unit/tools/list-builds-pagination.test.ts +45 -0
  1118. package/tests/unit/tools/list-pagination-all.test.ts +259 -0
  1119. package/tests/unit/tools/list-projects-pagination.test.ts +39 -0
  1120. package/tests/unit/tools/parameters-and-steps-triggers.test.ts +176 -0
  1121. package/tests/unit/tools/project-build-crud.test.ts +110 -0
  1122. package/tests/unit/tools/project-hierarchy.test.ts +46 -0
  1123. package/tests/unit/tools/queue-maintenance.test.ts +130 -0
  1124. package/tests/unit/tools/server-health-and-metrics.test.ts +134 -0
  1125. package/tests/unit/tools/simple-getters.test.ts +88 -0
  1126. package/tests/unit/tools/update_project_settings.test.ts +64 -0
  1127. package/tests/unit/utils/lru-cache.test.ts +77 -0
  1128. package/tests/unit/utils/mcp.test.ts +82 -0
  1129. package/tests/unit/utils/runTool.test.ts +38 -0
  1130. package/tests/unit/utils/validation.test.ts +168 -0
  1131. package/tsconfig.build.json +28 -0
  1132. package/tsconfig.json +60 -0
  1133. package/tsconfig.lint.json +13 -0
@@ -0,0 +1,68 @@
1
+ # Contributing
2
+
3
+ Thanks for contributing! This document highlights conventions and expectations to keep the repository consistent and easy to maintain.
4
+
5
+ ## Testing Philosophy
6
+
7
+ We follow a behavior‑first approach for tests:
8
+
9
+ - Prefer asserting observable outcomes over internal implementation details.
10
+ - Validate returned values, state transitions, emitted events, and documented side‑effects.
11
+ - Avoid checking private/underscored fields and exact wire formats (locators, field strings, headers, payload shapes) unless explicitly part of the public contract.
12
+
13
+ ### When call‑count assertions are appropriate
14
+
15
+ Only add call‑count assertions when the count itself is the documented behavior:
16
+
17
+ - Caching: second identical call returns the same result and does not invoke the underlying client again. After TTL or with `forceRefresh`, calls increase accordingly.
18
+ - Concurrency/parallelization: where a component guarantees parallel execution, keep minimal assertions that reflect the contract (e.g., not N× sequential time).
19
+ - Circuit breaker: ensuring short‑circuiting behavior with no underlying call in OPEN state.
20
+
21
+ ### Logging assertions
22
+
23
+ It’s acceptable to assert logger calls only when logging is part of the public contract (e.g., specific redaction guarantees, structured error logging). Otherwise prefer asserting returned errors/results.
24
+
25
+ ### MCP tool responses
26
+
27
+ Tools must return standardized JSON payloads. Tests should assert:
28
+
29
+ - `success`, `action`, and echoed identifiers (e.g., `agentId`, `locator`, `buildId`).
30
+ - Documented optional flags (e.g., `includeQueueTotals`) affecting response shape.
31
+ - Avoid verifying how API clients are invoked.
32
+
33
+ ### Examples (good)
34
+
35
+ - “Calling list with `all=true` returns all items and correct pagination metadata.”
36
+ - “Second call within TTL returns same results; client calls remain at 1.”
37
+ - “get_build_status returns `queued` with `queuePosition` and `waitReason` when flags are set.”
38
+
39
+ ### Examples (avoid)
40
+
41
+ - Verifying exact TeamCity `locator` strings or `fields` parameter composition.
42
+ - Inspecting axios request headers/payload shapes for managers/tools.
43
+ - Counting calls without a documented behavior that warrants it.
44
+
45
+ ## Code Style
46
+
47
+ - TypeScript, strict mode. No `any`. Prefer precise types and generics.
48
+ - Prettier for formatting; ESLint for lint rules. Run `npm run lint` and `npm run format`.
49
+ - Use existing logger utilities; avoid `console.log`.
50
+ - Keep changes minimal and focused; preserve module boundaries.
51
+
52
+ ## Commit Messages
53
+
54
+ - Imperative mood: “Add X”, “Fix Y”.
55
+ - Include ticket IDs when applicable: `[TMCP-123] Short summary`.
56
+ - Follow [Conventional Commits](https://www.conventionalcommits.org/):
57
+ - Use lower‑case `type` prefixes like `feat`, `fix`, or `chore`.
58
+ - Keep the summary within 72 characters.
59
+ - PR titles must also follow this format and will become the squash merge commit message.
60
+ - Commit message linting runs in CI to enforce the convention.
61
+
62
+ ## Pull Requests
63
+
64
+ - Describe scope, rationale, and testing.
65
+ - Link issues/tickets; include logs or CLI output if relevant.
66
+ - Ensure CI is green and `npm run check` passes locally.
67
+ - Use **Squash and merge** so the merge commit inherits the PR’s conventional title.
68
+
package/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 TeamCity MCP contributors
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
22
+
package/README.md ADDED
@@ -0,0 +1,256 @@
1
+ # TeamCity MCP Server
2
+
3
+ [![CI](https://github.com/Daghis/teamcity-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/Daghis/teamcity-mcp/actions/workflows/ci.yml)
4
+ [![CodeQL](https://github.com/Daghis/teamcity-mcp/actions/workflows/codeql.yml/badge.svg)](https://github.com/Daghis/teamcity-mcp/actions/workflows/codeql.yml)
5
+ [![codecov](https://codecov.io/gh/Daghis/teamcity-mcp/branch/main/graph/badge.svg)](https://codecov.io/gh/Daghis/teamcity-mcp)
6
+
7
+ A Model Control Protocol (MCP) server that bridges AI coding assistants with JetBrains TeamCity CI/CD server, enabling natural language control of builds, tests, and deployments.
8
+
9
+ ## Overview
10
+
11
+ The TeamCity MCP Server allows developers using AI-powered coding assistants (Claude Code, Cursor, Windsurf) to interact with TeamCity directly from their development environment using natural language commands.
12
+
13
+ ## Features
14
+
15
+ ### 🚀 Two Operational Modes
16
+
17
+ - **Dev Mode**: Safe CI/CD operations
18
+ - Trigger builds
19
+ - Monitor build status and progress
20
+ - Fetch and analyze build logs
21
+ - Investigate test failures
22
+ - List projects and configurations
23
+
24
+ - **Full Mode**: Complete infrastructure management
25
+ - All Dev mode features, plus:
26
+ - Create and clone build configurations
27
+ - Manage build steps and triggers
28
+ - Configure VCS roots and agents
29
+ - Set up new projects
30
+ - Modify infrastructure settings
31
+
32
+ ### 🎯 Key Capabilities
33
+
34
+ - **Natural Language Control**: Execute CI/CD tasks using conversational commands
35
+ - **Intelligent Analysis**: Automatic test failure summarization and build problem identification
36
+ - **Real-time Monitoring**: Live build status updates via WebSocket/SSE
37
+ - **Enterprise Security**: Token-based authentication with audit logging
38
+ - **Modern Architecture**: Simple, direct implementation with singleton pattern
39
+ - **Performance Optimized**: Fast startup time with minimal overhead
40
+ - **Clean Codebase**: Well-organized modules with clear separation of concerns
41
+
42
+ ## Installation
43
+
44
+ ### Prerequisites
45
+
46
+ - Node.js >= 20.10.0
47
+ - TeamCity Server 2020.1+ with REST API access
48
+ - TeamCity authentication token
49
+
50
+ ### Quick Start
51
+
52
+ ```bash
53
+ # Clone the repository
54
+ git clone https://github.com/Daghis/teamcity-mcp.git
55
+ cd teamcity-mcp
56
+
57
+ # Install dependencies
58
+ npm install
59
+
60
+ # Configure environment
61
+ cp .env.example .env
62
+ # Edit .env with your TeamCity URL and token
63
+
64
+ # Run in development mode
65
+ npm run dev
66
+ ```
67
+
68
+ ### npm Package (Coming Soon)
69
+
70
+ ```bash
71
+ npx @daghis/teamcity-mcp --mode=dev
72
+ ```
73
+
74
+ ## Configuration
75
+
76
+ Environment is validated centrally with Zod. Supported variables and defaults:
77
+
78
+ ```env
79
+ # Server Configuration
80
+ PORT=3000
81
+ NODE_ENV=development
82
+ LOG_LEVEL=info
83
+
84
+ # TeamCity Configuration (aliases supported)
85
+ TEAMCITY_URL=https://teamcity.example.com
86
+ TEAMCITY_TOKEN=your-auth-token
87
+ # Optional aliases:
88
+ # TEAMCITY_SERVER_URL=...
89
+ # TEAMCITY_API_TOKEN=...
90
+
91
+ # MCP Mode (dev or full)
92
+ MCP_MODE=dev
93
+
94
+ # Optional advanced TeamCity options (defaults shown)
95
+ # Connection
96
+ # TEAMCITY_TIMEOUT=30000
97
+ # TEAMCITY_MAX_CONCURRENT=10
98
+ # TEAMCITY_KEEP_ALIVE=true
99
+ # TEAMCITY_COMPRESSION=true
100
+
101
+ # Retry
102
+ # TEAMCITY_RETRY_ENABLED=true
103
+ # TEAMCITY_MAX_RETRIES=3
104
+ # TEAMCITY_RETRY_DELAY=1000
105
+ # TEAMCITY_MAX_RETRY_DELAY=30000
106
+
107
+ # Pagination
108
+ # TEAMCITY_PAGE_SIZE=100
109
+ # TEAMCITY_MAX_PAGE_SIZE=1000
110
+ # TEAMCITY_AUTO_FETCH_ALL=false
111
+
112
+ # Circuit Breaker
113
+ # TEAMCITY_CIRCUIT_BREAKER=true
114
+ # TEAMCITY_CB_FAILURE_THRESHOLD=5
115
+ # TEAMCITY_CB_RESET_TIMEOUT=60000
116
+ # TEAMCITY_CB_SUCCESS_THRESHOLD=2
117
+ ```
118
+
119
+ These values are normalized in `src/config/index.ts` and consumed by `src/teamcity/config.ts` via helper getters.
120
+
121
+ ## Usage Examples
122
+
123
+ Once integrated with your AI coding assistant:
124
+
125
+ ```
126
+ "Build the frontend on feature branch"
127
+ "Why did last night's tests fail?"
128
+ "Deploy staging with the latest build"
129
+ "Create a new build config for the mobile app"
130
+ ```
131
+
132
+ ### Tool Responses and Pagination
133
+
134
+ - Responses: Tools now return consistent MCP content. For list/get operations, the `content[0].text` contains a JSON string. Example shape:
135
+ `{ "items": [...], "pagination": { "page": 1, "pageSize": 100 } }` or `{ "items": [...], "pagination": { "mode": "all", "pageSize": 100, "fetched": 250 } }`.
136
+ - Pagination: Most list\_\* tools accept `pageSize`, `maxPages`, and `all`:
137
+ - `pageSize` controls items per page.
138
+ - `all: true` fetches multiple pages up to `maxPages`.
139
+ - Legacy `count` on `list_builds` is kept for compatibility but `pageSize` is preferred.
140
+
141
+ ### Validation and Errors
142
+
143
+ - Input validation: Tool inputs are validated with Zod schemas; invalid input returns a structured error payload in the response content (JSON string) with `success: false` and `error.code = VALIDATION_ERROR`.
144
+ - Error shaping: Errors are formatted consistently via a global handler. In production, messages may be sanitized; sensitive values (e.g., tokens) are redacted in logs.
145
+
146
+ ### API Usage
147
+
148
+ ```typescript
149
+ import { TeamCityAPI } from '@/api-client';
150
+
151
+ // Get the API client instance
152
+ const api = TeamCityAPI.getInstance();
153
+
154
+ // List projects
155
+ const projects = await api.listProjects();
156
+
157
+ // Get build status
158
+ const build = await api.getBuild('BuildId123');
159
+
160
+ // Trigger a new build
161
+ const newBuild = await api.triggerBuild('BuildConfigId', {
162
+ branchName: 'main',
163
+ });
164
+ ```
165
+
166
+ ## Development
167
+
168
+ ```bash
169
+ # Run tests
170
+ npm test
171
+
172
+ # Run tests with coverage
173
+ npm run test:coverage
174
+
175
+ # Lint code
176
+ npm run lint
177
+
178
+ # Format code
179
+ npm run format
180
+
181
+ # Type check
182
+ npm run typecheck
183
+
184
+ # Build for production
185
+ npm run build
186
+ ```
187
+
188
+ ## Project Structure
189
+
190
+ ```
191
+ teamcity-mcp/
192
+ ├── src/ # Source code
193
+ │ ├── tools/ # MCP tool implementations
194
+ │ ├── utils/ # Utility functions
195
+ │ ├── types/ # TypeScript type definitions
196
+ │ └── config/ # Configuration management
197
+ ├── tests/ # Test files
198
+ ├── docs/ # Documentation
199
+ └── .agent-os/ # Agent OS specifications
200
+ ```
201
+
202
+ ## API Documentation
203
+
204
+ The MCP server exposes tools for TeamCity operations. Each tool corresponds to specific TeamCity REST API endpoints:
205
+
206
+ ### Build Management
207
+
208
+ - `TriggerBuild` - Queue a new build
209
+ - `GetBuildStatus` - Check build progress
210
+ - `FetchBuildLog` - Retrieve build logs
211
+ - `ListBuilds` - Search builds by criteria
212
+
213
+ ### Test Analysis
214
+
215
+ - `ListTestFailures` - Get failing tests
216
+ - `GetTestDetails` - Detailed test information
217
+ - `AnalyzeBuildProblems` - Identify failure reasons
218
+
219
+ ### Configuration (Full Mode Only)
220
+
221
+ - `create_build_config` - Create new TeamCity build configurations with full support for:
222
+ - VCS roots (Git, SVN, Perforce) with authentication
223
+ - Build steps (script, Maven, Gradle, npm, Docker, PowerShell)
224
+ - Triggers (VCS, schedule, finish-build, maven-snapshot)
225
+ - Parameters and template-based configurations
226
+ - See the Tool Reference for details: docs/mcp-tools-reference.md
227
+ - `CloneBuildConfig` - Duplicate configurations (coming soon)
228
+ - `ManageBuildSteps` - Add/edit/remove steps (coming soon)
229
+ - `ManageVCS` - Configure version control (coming soon)
230
+
231
+ See also: `docs/TEAMCITY_MCP_TOOLS_GUIDE.md` for an overview. Some advanced sections in that guide describe future enhancements; the behavior above reflects the current implementation.
232
+
233
+ ## Contributing
234
+
235
+ We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for details.
236
+
237
+ ## Security
238
+
239
+ - Configure `TEAMCITY_TOKEN` via environment (see `.env.example`); never commit real tokens
240
+ - Token-based authentication only
241
+ - Logs redact sensitive values
242
+
243
+ ## Support
244
+
245
+ - GitHub Issues: [Report bugs or request features](https://github.com/Daghis/teamcity-mcp/issues)
246
+ - Documentation: See the `docs/` folder in this repository
247
+
248
+ ## Acknowledgments
249
+
250
+ - JetBrains TeamCity for the excellent CI/CD platform
251
+ - Anthropic for the Model Control Protocol specification
252
+ - The open-source community for continuous support
253
+
254
+ ---
255
+
256
+ Built with ❤️ for developers who love efficient CI/CD workflows
package/TODO.md ADDED
@@ -0,0 +1,80 @@
1
+ # OSS Launch TODO
2
+
3
+ High-level checklist to complete before publishing the repository to GitHub.
4
+
5
+ ## Legal & Notices
6
+ - Create `THIRD_PARTY_NOTICES.md`:
7
+ - Note use of JetBrains TeamCity name/trademark; clarify no affiliation or endorsement.
8
+ - Mention TeamCity REST API usage and link to relevant terms.
9
+ - Acknowledge project crafting via Anthropic’s Claude Code and OpenAI Codex CLI.
10
+ - List notable third‑party deps/tools: `@modelcontextprotocol/sdk`, `axios`, `zod`, `jest`, `ts-jest`, `prettier`, `eslint`, OpenAPI generator.
11
+ - Verify LICENSE (MIT) is correct and reflected in README.
12
+
13
+ ## TeamCity Self‑Integration
14
+ - Create a TeamCity project that builds this repo (self‑hosting example):
15
+ - Steps: install deps, `npm run lint`, `npm run typecheck`, `npm test`, `npm run build`.
16
+ - Parameterize Node version via `.nvmrc` (24.7.0) and agent requirements.
17
+ - Configure secure `TEAMCITY_URL`/`TEAMCITY_TOKEN` (dev‑mode, read‑only) as server/agent parameters.
18
+ - Add triggers on `main` and PR branches; publish build artifacts (e.g., coverage report) for docs.
19
+ - Optional: nightly job to run integration smoke tests against a sandbox TeamCity instance.
20
+
21
+ ## GitHub Actions (CI/CD)
22
+ - Add workflows (defer until ready to enable CI):
23
+ - `ci.yml`: Node 24, cache `~/.npm`, run `lint:check`, `format:check`, `typecheck`, and `test:coverage` (enforce thresholds); optionally upload coverage to a badge service.
24
+ - `release.yml`: On tag, build and publish to npm (if publishing), generate changelog and GitHub Release.
25
+ - `codeql.yml`: Code scanning (JavaScript/TypeScript).
26
+ - Optional: `e2e.yml` gated by secrets for TeamCity sandbox.
27
+ - Configure required checks (branch protection) for `main` when CI is enabled.
28
+
29
+ ## OSS Best Practices
30
+ - README badges: build status (GH Actions), coverage, npm version (if publishing), license, Node version, Prettier.
31
+ - Add Node 24 badge and update README references to Node 24.
32
+ - Governance docs:
33
+ - `CODE_OF_CONDUCT.md` (Contributor Covenant)
34
+ - `SECURITY.md` (reporting policy)
35
+ - Ensure `CONTRIBUTING.md` aligns with workflows and labels
36
+ - Issue/PR templates and labels (bug, feature, question, good‑first‑issue)
37
+ - Release hygiene:
38
+ - `CHANGELOG.md` (keep a human‑readable log or use release‑please)
39
+ - Semantic versioning policy documented in README
40
+ - Repository hygiene:
41
+ - `CODEOWNERS` for review routing
42
+ - Dependabot or Renovate for deps
43
+ - Stale bot policy (optional)
44
+
45
+ ## Packaging & Publishing
46
+ - `package.json` metadata: `repository`, `homepage`, `bugs`, `license`, `engines`, `exports`/`bin` (if CLI), `files` whitelist.
47
+ - Add `.npmignore` (or use `files` field) to exclude tests, local scripts, and docs not needed for package.
48
+ - Verify build output under `dist/` matches exports and type definitions.
49
+
50
+ ## Codebase Quality (Housekeeping)
51
+ - ESLint hygiene: keep `no-await-in-loop` disables narrowly scoped around intentional sequential logic (done in current codebase; verify on new contributions).
52
+ - Remove remaining legacy `getTool(...)!` usages by migrating to `getRequiredTool` where applicable.
53
+ - Centralize env var validation (zod) in `src/config` and use consistently.
54
+ - Silence ESLint multi-project hint by using `tsconfig.lint.json` or enabling `noWarnOnMultipleProjects`.
55
+
56
+ ## Test Stability
57
+ - Avoid forced Jest exits; rely on natural shutdown. Ensure timers are cleared in `tests/setup.ts` (added) and prefer fake timers in new tests.
58
+
59
+ ## Documentation
60
+ - README refinements:
61
+ - Add badges, succinct Quick Start, and a minimal “Dev vs Full mode” table.
62
+ - Link to `docs/` and `THIRD_PARTY_NOTICES.md`.
63
+ - Add a short “Security & Privacy” note about token redaction and not committing secrets.
64
+ - Docs site (optional): publish GitHub Pages or Docusaurus if scope grows.
65
+ - Provide minimal examples in `examples/` to demonstrate common tool calls and MCP client integration.
66
+
67
+ ## Security & Compliance
68
+ - Enable GitHub secret scanning and push protection.
69
+ - Validate token redaction in logs; keep `.env.example` minimal and safe.
70
+ - Add threat‑model notes (read‑only defaults in `dev` mode; `full` mode cautions).
71
+
72
+ ## Project Setup on GitHub
73
+ - Initialize repo, push baseline, add branch protections, enable Discussions (optional).
74
+ - Configure Actions permissions (workflows can create releases/tags if needed).
75
+ - Configure CI required checks and status badges.
76
+
77
+ ## Nice‑to‑Haves (Post‑Launch)
78
+ - Benchmarks and performance notes for large TeamCity instances.
79
+ - Example TeamCity templates for self‑integration (YAML or screenshots).
80
+ - Automated docs generation (OpenAPI → client usage snippets) if we add an API facade.