@structured-world/gitlab-mcp 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +486 -0
  3. package/dist/config.d.ts +31 -0
  4. package/dist/config.js +115 -0
  5. package/dist/config.js.map +1 -0
  6. package/dist/entities/core/index.d.ts +7 -0
  7. package/dist/entities/core/index.js +31 -0
  8. package/dist/entities/core/index.js.map +1 -0
  9. package/dist/entities/core/registry.d.ts +5 -0
  10. package/dist/entities/core/registry.js +584 -0
  11. package/dist/entities/core/registry.js.map +1 -0
  12. package/dist/entities/core/schema-readonly.d.ts +302 -0
  13. package/dist/entities/core/schema-readonly.js +364 -0
  14. package/dist/entities/core/schema-readonly.js.map +1 -0
  15. package/dist/entities/core/schema.d.ts +87 -0
  16. package/dist/entities/core/schema.js +143 -0
  17. package/dist/entities/core/schema.js.map +1 -0
  18. package/dist/entities/files/index.d.ts +7 -0
  19. package/dist/entities/files/index.js +31 -0
  20. package/dist/entities/files/index.js.map +1 -0
  21. package/dist/entities/files/registry.d.ts +5 -0
  22. package/dist/entities/files/registry.js +199 -0
  23. package/dist/entities/files/registry.js.map +1 -0
  24. package/dist/entities/files/schema-readonly.d.ts +78 -0
  25. package/dist/entities/files/schema-readonly.js +50 -0
  26. package/dist/entities/files/schema-readonly.js.map +1 -0
  27. package/dist/entities/files/schema.d.ts +42 -0
  28. package/dist/entities/files/schema.js +38 -0
  29. package/dist/entities/files/schema.js.map +1 -0
  30. package/dist/entities/index.d.ts +10 -0
  31. package/dist/entities/index.js +27 -0
  32. package/dist/entities/index.js.map +1 -0
  33. package/dist/entities/labels/index.d.ts +7 -0
  34. package/dist/entities/labels/index.js +31 -0
  35. package/dist/entities/labels/index.js.map +1 -0
  36. package/dist/entities/labels/registry.d.ts +5 -0
  37. package/dist/entities/labels/registry.js +186 -0
  38. package/dist/entities/labels/registry.js.map +1 -0
  39. package/dist/entities/labels/schema-readonly.d.ts +16 -0
  40. package/dist/entities/labels/schema-readonly.js +29 -0
  41. package/dist/entities/labels/schema-readonly.js.map +1 -0
  42. package/dist/entities/labels/schema.d.ts +26 -0
  43. package/dist/entities/labels/schema.js +50 -0
  44. package/dist/entities/labels/schema.js.map +1 -0
  45. package/dist/entities/milestones/index.d.ts +7 -0
  46. package/dist/entities/milestones/index.js +31 -0
  47. package/dist/entities/milestones/index.js.map +1 -0
  48. package/dist/entities/milestones/registry.d.ts +5 -0
  49. package/dist/entities/milestones/registry.js +316 -0
  50. package/dist/entities/milestones/registry.js.map +1 -0
  51. package/dist/entities/milestones/schema-readonly.d.ts +63 -0
  52. package/dist/entities/milestones/schema-readonly.js +68 -0
  53. package/dist/entities/milestones/schema-readonly.js.map +1 -0
  54. package/dist/entities/milestones/schema.d.ts +36 -0
  55. package/dist/entities/milestones/schema.js +52 -0
  56. package/dist/entities/milestones/schema.js.map +1 -0
  57. package/dist/entities/mrs/index.d.ts +7 -0
  58. package/dist/entities/mrs/index.js +31 -0
  59. package/dist/entities/mrs/index.js.map +1 -0
  60. package/dist/entities/mrs/registry.d.ts +5 -0
  61. package/dist/entities/mrs/registry.js +629 -0
  62. package/dist/entities/mrs/registry.js.map +1 -0
  63. package/dist/entities/mrs/schema-readonly.d.ts +127 -0
  64. package/dist/entities/mrs/schema-readonly.js +213 -0
  65. package/dist/entities/mrs/schema-readonly.js.map +1 -0
  66. package/dist/entities/mrs/schema.d.ts +285 -0
  67. package/dist/entities/mrs/schema.js +161 -0
  68. package/dist/entities/mrs/schema.js.map +1 -0
  69. package/dist/entities/pipelines/index.d.ts +7 -0
  70. package/dist/entities/pipelines/index.js +31 -0
  71. package/dist/entities/pipelines/index.js.map +1 -0
  72. package/dist/entities/pipelines/registry.d.ts +5 -0
  73. package/dist/entities/pipelines/registry.js +369 -0
  74. package/dist/entities/pipelines/registry.js.map +1 -0
  75. package/dist/entities/pipelines/schema-readonly.d.ts +238 -0
  76. package/dist/entities/pipelines/schema-readonly.js +257 -0
  77. package/dist/entities/pipelines/schema-readonly.js.map +1 -0
  78. package/dist/entities/pipelines/schema.d.ts +49 -0
  79. package/dist/entities/pipelines/schema.js +44 -0
  80. package/dist/entities/pipelines/schema.js.map +1 -0
  81. package/dist/entities/shared.d.ts +291 -0
  82. package/dist/entities/shared.js +277 -0
  83. package/dist/entities/shared.js.map +1 -0
  84. package/dist/entities/utils.d.ts +3 -0
  85. package/dist/entities/utils.js +22 -0
  86. package/dist/entities/utils.js.map +1 -0
  87. package/dist/entities/variables/index.d.ts +7 -0
  88. package/dist/entities/variables/index.js +31 -0
  89. package/dist/entities/variables/index.js.map +1 -0
  90. package/dist/entities/variables/registry.d.ts +5 -0
  91. package/dist/entities/variables/registry.js +192 -0
  92. package/dist/entities/variables/registry.js.map +1 -0
  93. package/dist/entities/variables/schema-readonly.d.ts +17 -0
  94. package/dist/entities/variables/schema-readonly.js +35 -0
  95. package/dist/entities/variables/schema-readonly.js.map +1 -0
  96. package/dist/entities/variables/schema.d.ts +45 -0
  97. package/dist/entities/variables/schema.js +127 -0
  98. package/dist/entities/variables/schema.js.map +1 -0
  99. package/dist/entities/wiki/index.d.ts +7 -0
  100. package/dist/entities/wiki/index.js +31 -0
  101. package/dist/entities/wiki/index.js.map +1 -0
  102. package/dist/entities/wiki/registry.d.ts +5 -0
  103. package/dist/entities/wiki/registry.js +195 -0
  104. package/dist/entities/wiki/registry.js.map +1 -0
  105. package/dist/entities/wiki/schema-readonly.d.ts +24 -0
  106. package/dist/entities/wiki/schema-readonly.js +34 -0
  107. package/dist/entities/wiki/schema-readonly.js.map +1 -0
  108. package/dist/entities/wiki/schema.d.ts +24 -0
  109. package/dist/entities/wiki/schema.js +37 -0
  110. package/dist/entities/wiki/schema.js.map +1 -0
  111. package/dist/entities/workitems/index.d.ts +7 -0
  112. package/dist/entities/workitems/index.js +31 -0
  113. package/dist/entities/workitems/index.js.map +1 -0
  114. package/dist/entities/workitems/registry.d.ts +5 -0
  115. package/dist/entities/workitems/registry.js +183 -0
  116. package/dist/entities/workitems/registry.js.map +1 -0
  117. package/dist/entities/workitems/schema-readonly.d.ts +46 -0
  118. package/dist/entities/workitems/schema-readonly.js +38 -0
  119. package/dist/entities/workitems/schema-readonly.js.map +1 -0
  120. package/dist/entities/workitems/schema.d.ts +37 -0
  121. package/dist/entities/workitems/schema.js +29 -0
  122. package/dist/entities/workitems/schema.js.map +1 -0
  123. package/dist/graphql/DynamicWorkItemsQuery.d.ts +56 -0
  124. package/dist/graphql/DynamicWorkItemsQuery.js +190 -0
  125. package/dist/graphql/DynamicWorkItemsQuery.js.map +1 -0
  126. package/dist/graphql/client.d.ts +15 -0
  127. package/dist/graphql/client.js +50 -0
  128. package/dist/graphql/client.js.map +1 -0
  129. package/dist/graphql/index.d.ts +2 -0
  130. package/dist/graphql/index.js +21 -0
  131. package/dist/graphql/index.js.map +1 -0
  132. package/dist/graphql/workItems.d.ts +430 -0
  133. package/dist/graphql/workItems.js +559 -0
  134. package/dist/graphql/workItems.js.map +1 -0
  135. package/dist/handlers.d.ts +2 -0
  136. package/dist/handlers.js +132 -0
  137. package/dist/handlers.js.map +1 -0
  138. package/dist/http-client.d.ts +1 -0
  139. package/dist/http-client.js +13 -0
  140. package/dist/http-client.js.map +1 -0
  141. package/dist/logger.d.ts +2 -0
  142. package/dist/logger.js +21 -0
  143. package/dist/logger.js.map +1 -0
  144. package/dist/main.d.ts +2 -0
  145. package/dist/main.js +10 -0
  146. package/dist/main.js.map +1 -0
  147. package/dist/registry-manager.d.ts +25 -0
  148. package/dist/registry-manager.js +176 -0
  149. package/dist/registry-manager.js.map +1 -0
  150. package/dist/server.d.ts +25 -0
  151. package/dist/server.js +129 -0
  152. package/dist/server.js.map +1 -0
  153. package/dist/services/ConnectionManager.d.ts +27 -0
  154. package/dist/services/ConnectionManager.js +144 -0
  155. package/dist/services/ConnectionManager.js.map +1 -0
  156. package/dist/services/GitLabVersionDetector.d.ts +53 -0
  157. package/dist/services/GitLabVersionDetector.js +216 -0
  158. package/dist/services/GitLabVersionDetector.js.map +1 -0
  159. package/dist/services/SchemaIntrospector.d.ts +39 -0
  160. package/dist/services/SchemaIntrospector.js +188 -0
  161. package/dist/services/SchemaIntrospector.js.map +1 -0
  162. package/dist/services/ToolAvailability.d.ts +18 -0
  163. package/dist/services/ToolAvailability.js +373 -0
  164. package/dist/services/ToolAvailability.js.map +1 -0
  165. package/dist/services/WidgetAvailability.d.ts +14 -0
  166. package/dist/services/WidgetAvailability.js +84 -0
  167. package/dist/services/WidgetAvailability.js.map +1 -0
  168. package/dist/structured-world-gitlab-mcp-4.0.0.tgz +0 -0
  169. package/dist/tsconfig.build.tsbuildinfo +1 -0
  170. package/dist/types.d.ts +21 -0
  171. package/dist/types.js +10 -0
  172. package/dist/types.js.map +1 -0
  173. package/dist/utils/fetch.d.ts +9 -0
  174. package/dist/utils/fetch.js +164 -0
  175. package/dist/utils/fetch.js.map +1 -0
  176. package/package.json +90 -0
@@ -0,0 +1,369 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pipelinesToolRegistry = void 0;
4
+ exports.getPipelinesReadOnlyToolNames = getPipelinesReadOnlyToolNames;
5
+ exports.getPipelinesToolDefinitions = getPipelinesToolDefinitions;
6
+ exports.getFilteredPipelinesTools = getFilteredPipelinesTools;
7
+ const zod_to_json_schema_1 = require("zod-to-json-schema");
8
+ const schema_readonly_1 = require("./schema-readonly");
9
+ const schema_1 = require("./schema");
10
+ const fetch_1 = require("../../utils/fetch");
11
+ exports.pipelinesToolRegistry = new Map([
12
+ [
13
+ 'list_pipelines',
14
+ {
15
+ name: 'list_pipelines',
16
+ description: 'List pipelines in a GitLab project with filtering options',
17
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_readonly_1.ListPipelinesSchema),
18
+ handler: async (args) => {
19
+ const options = schema_readonly_1.ListPipelinesSchema.parse(args);
20
+ const queryParams = new URLSearchParams();
21
+ Object.entries(options).forEach(([key, value]) => {
22
+ if (value !== undefined && value !== null && key !== 'project_id') {
23
+ queryParams.set(key, String(value));
24
+ }
25
+ });
26
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(options.project_id)}/pipelines?${queryParams}`;
27
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
28
+ headers: {
29
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
30
+ },
31
+ });
32
+ if (!response.ok) {
33
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
34
+ }
35
+ const pipelines = await response.json();
36
+ return pipelines;
37
+ },
38
+ },
39
+ ],
40
+ [
41
+ 'get_pipeline',
42
+ {
43
+ name: 'get_pipeline',
44
+ description: 'Get details of a specific pipeline in a GitLab project',
45
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_readonly_1.GetPipelineSchema),
46
+ handler: async (args) => {
47
+ const options = schema_readonly_1.GetPipelineSchema.parse(args);
48
+ const { project_id, pipeline_id } = options;
49
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/pipelines/${pipeline_id}`;
50
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
51
+ headers: {
52
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
53
+ },
54
+ });
55
+ if (!response.ok) {
56
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
57
+ }
58
+ const pipeline = await response.json();
59
+ return pipeline;
60
+ },
61
+ },
62
+ ],
63
+ [
64
+ 'list_pipeline_jobs',
65
+ {
66
+ name: 'list_pipeline_jobs',
67
+ description: 'List all jobs in a specific pipeline',
68
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_readonly_1.ListPipelineJobsSchema),
69
+ handler: async (args) => {
70
+ const options = schema_readonly_1.ListPipelineJobsSchema.parse(args);
71
+ const { project_id, pipeline_id } = options;
72
+ const queryParams = new URLSearchParams();
73
+ Object.entries(options).forEach(([key, value]) => {
74
+ if (value !== undefined &&
75
+ value !== null &&
76
+ key !== 'project_id' &&
77
+ key !== 'pipeline_id') {
78
+ queryParams.set(key, String(value));
79
+ }
80
+ });
81
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/pipelines/${pipeline_id}/jobs?${queryParams}`;
82
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
83
+ headers: {
84
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
85
+ },
86
+ });
87
+ if (!response.ok) {
88
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
89
+ }
90
+ const jobs = await response.json();
91
+ return jobs;
92
+ },
93
+ },
94
+ ],
95
+ [
96
+ 'list_pipeline_trigger_jobs',
97
+ {
98
+ name: 'list_pipeline_trigger_jobs',
99
+ description: 'List all trigger jobs (bridges) in a specific pipeline that trigger downstream pipelines',
100
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_readonly_1.ListPipelineTriggerJobsSchema),
101
+ handler: async (args) => {
102
+ const options = schema_readonly_1.ListPipelineTriggerJobsSchema.parse(args);
103
+ const { project_id, pipeline_id } = options;
104
+ const queryParams = new URLSearchParams();
105
+ Object.entries(options).forEach(([key, value]) => {
106
+ if (value !== undefined &&
107
+ value !== null &&
108
+ key !== 'project_id' &&
109
+ key !== 'pipeline_id') {
110
+ queryParams.set(key, String(value));
111
+ }
112
+ });
113
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/pipelines/${pipeline_id}/bridges?${queryParams}`;
114
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
115
+ headers: {
116
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
117
+ },
118
+ });
119
+ if (!response.ok) {
120
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
121
+ }
122
+ const bridges = await response.json();
123
+ return bridges;
124
+ },
125
+ },
126
+ ],
127
+ [
128
+ 'get_pipeline_job',
129
+ {
130
+ name: 'get_pipeline_job',
131
+ description: 'Get details of a GitLab pipeline job number',
132
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_readonly_1.GetPipelineJobOutputSchema),
133
+ handler: async (args) => {
134
+ const options = schema_readonly_1.GetPipelineJobOutputSchema.parse(args);
135
+ const { project_id, job_id } = options;
136
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/jobs/${job_id}`;
137
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
138
+ headers: {
139
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
140
+ },
141
+ });
142
+ if (!response.ok) {
143
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
144
+ }
145
+ const job = await response.json();
146
+ return job;
147
+ },
148
+ },
149
+ ],
150
+ [
151
+ 'get_pipeline_job_output',
152
+ {
153
+ name: 'get_pipeline_job_output',
154
+ description: 'Get the output/trace of a GitLab pipeline job with optional pagination to limit context window usage',
155
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_readonly_1.GetPipelineJobOutputSchema),
156
+ handler: async (args) => {
157
+ const options = schema_readonly_1.GetPipelineJobOutputSchema.parse(args);
158
+ const { project_id, job_id, limit } = options;
159
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/jobs/${job_id}/trace`;
160
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
161
+ headers: {
162
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
163
+ },
164
+ });
165
+ if (!response.ok) {
166
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
167
+ }
168
+ let trace = await response.text();
169
+ if (limit && trace.length > limit) {
170
+ const lines = trace.split('\n');
171
+ const totalLines = lines.length;
172
+ const maxLines = Math.floor(limit / 50);
173
+ if (totalLines > maxLines) {
174
+ const keepLines = Math.floor(maxLines / 2);
175
+ const startLines = lines.slice(0, keepLines);
176
+ const endLines = lines.slice(-keepLines);
177
+ trace = [
178
+ ...startLines,
179
+ `... [${totalLines - maxLines} lines truncated] ...`,
180
+ ...endLines,
181
+ ].join('\n');
182
+ }
183
+ }
184
+ return { trace };
185
+ },
186
+ },
187
+ ],
188
+ [
189
+ 'create_pipeline',
190
+ {
191
+ name: 'create_pipeline',
192
+ description: 'Create a new pipeline for a branch or tag',
193
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_1.CreatePipelineSchema),
194
+ handler: async (args) => {
195
+ const options = schema_1.CreatePipelineSchema.parse(args);
196
+ const { project_id } = options;
197
+ const body = {};
198
+ Object.entries(options).forEach(([key, value]) => {
199
+ if (value !== undefined && value !== null && key !== 'project_id') {
200
+ body[key] = value;
201
+ }
202
+ });
203
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/pipeline`;
204
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
205
+ method: 'POST',
206
+ headers: {
207
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
208
+ 'Content-Type': 'application/json',
209
+ },
210
+ body: JSON.stringify(body),
211
+ });
212
+ if (!response.ok) {
213
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
214
+ }
215
+ const pipeline = await response.json();
216
+ return pipeline;
217
+ },
218
+ },
219
+ ],
220
+ [
221
+ 'retry_pipeline',
222
+ {
223
+ name: 'retry_pipeline',
224
+ description: 'Retry a failed or canceled pipeline',
225
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_1.RetryPipelineSchema),
226
+ handler: async (args) => {
227
+ const options = schema_1.RetryPipelineSchema.parse(args);
228
+ const { project_id, pipeline_id } = options;
229
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/pipelines/${pipeline_id}/retry`;
230
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
231
+ method: 'POST',
232
+ headers: {
233
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
234
+ },
235
+ });
236
+ if (!response.ok) {
237
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
238
+ }
239
+ const pipeline = await response.json();
240
+ return pipeline;
241
+ },
242
+ },
243
+ ],
244
+ [
245
+ 'cancel_pipeline',
246
+ {
247
+ name: 'cancel_pipeline',
248
+ description: 'Cancel a running pipeline',
249
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_1.CancelPipelineSchema),
250
+ handler: async (args) => {
251
+ const options = schema_1.CancelPipelineSchema.parse(args);
252
+ const { project_id, pipeline_id } = options;
253
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/pipelines/${pipeline_id}/cancel`;
254
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
255
+ method: 'POST',
256
+ headers: {
257
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
258
+ },
259
+ });
260
+ if (!response.ok) {
261
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
262
+ }
263
+ const pipeline = await response.json();
264
+ return pipeline;
265
+ },
266
+ },
267
+ ],
268
+ [
269
+ 'play_pipeline_job',
270
+ {
271
+ name: 'play_pipeline_job',
272
+ description: 'Run a manual pipeline job',
273
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_1.PlayPipelineJobSchema),
274
+ handler: async (args) => {
275
+ const options = schema_1.PlayPipelineJobSchema.parse(args);
276
+ const { project_id, job_id } = options;
277
+ const body = {};
278
+ Object.entries(options).forEach(([key, value]) => {
279
+ if (value !== undefined && value !== null && key !== 'project_id' && key !== 'job_id') {
280
+ body[key] = value;
281
+ }
282
+ });
283
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/jobs/${job_id}/play`;
284
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
285
+ method: 'POST',
286
+ headers: {
287
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
288
+ 'Content-Type': 'application/json',
289
+ },
290
+ body: JSON.stringify(body),
291
+ });
292
+ if (!response.ok) {
293
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
294
+ }
295
+ const job = await response.json();
296
+ return job;
297
+ },
298
+ },
299
+ ],
300
+ [
301
+ 'retry_pipeline_job',
302
+ {
303
+ name: 'retry_pipeline_job',
304
+ description: 'Retry a failed or canceled pipeline job',
305
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_1.RetryPipelineJobSchema),
306
+ handler: async (args) => {
307
+ const options = schema_1.RetryPipelineJobSchema.parse(args);
308
+ const { project_id, job_id } = options;
309
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/jobs/${job_id}/retry`;
310
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
311
+ method: 'POST',
312
+ headers: {
313
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
314
+ },
315
+ });
316
+ if (!response.ok) {
317
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
318
+ }
319
+ const job = await response.json();
320
+ return job;
321
+ },
322
+ },
323
+ ],
324
+ [
325
+ 'cancel_pipeline_job',
326
+ {
327
+ name: 'cancel_pipeline_job',
328
+ description: 'Cancel a running pipeline job',
329
+ inputSchema: (0, zod_to_json_schema_1.zodToJsonSchema)(schema_1.CancelPipelineJobSchema),
330
+ handler: async (args) => {
331
+ const options = schema_1.CancelPipelineJobSchema.parse(args);
332
+ const { project_id, job_id } = options;
333
+ const apiUrl = `${process.env.GITLAB_API_URL}/api/v4/projects/${encodeURIComponent(project_id)}/jobs/${job_id}/cancel`;
334
+ const response = await (0, fetch_1.enhancedFetch)(apiUrl, {
335
+ method: 'POST',
336
+ headers: {
337
+ Authorization: `Bearer ${process.env.GITLAB_TOKEN}`,
338
+ },
339
+ });
340
+ if (!response.ok) {
341
+ throw new Error(`GitLab API error: ${response.status} ${response.statusText}`);
342
+ }
343
+ const job = await response.json();
344
+ return job;
345
+ },
346
+ },
347
+ ],
348
+ ]);
349
+ function getPipelinesReadOnlyToolNames() {
350
+ return [
351
+ 'list_pipelines',
352
+ 'get_pipeline',
353
+ 'list_pipeline_jobs',
354
+ 'list_pipeline_trigger_jobs',
355
+ 'get_pipeline_job',
356
+ 'get_pipeline_job_output',
357
+ ];
358
+ }
359
+ function getPipelinesToolDefinitions() {
360
+ return Array.from(exports.pipelinesToolRegistry.values());
361
+ }
362
+ function getFilteredPipelinesTools(readOnlyMode = false) {
363
+ if (readOnlyMode) {
364
+ const readOnlyNames = getPipelinesReadOnlyToolNames();
365
+ return Array.from(exports.pipelinesToolRegistry.values()).filter((tool) => readOnlyNames.includes(tool.name));
366
+ }
367
+ return getPipelinesToolDefinitions();
368
+ }
369
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/entities/pipelines/registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,238 @@
1
+ import { z } from 'zod';
2
+ export declare const GitLabPipelineSchema: z.ZodObject<{
3
+ id: z.ZodCoercedString<unknown>;
4
+ project_id: z.ZodCoercedString<unknown>;
5
+ sha: z.ZodString;
6
+ ref: z.ZodString;
7
+ status: z.ZodString;
8
+ source: z.ZodOptional<z.ZodString>;
9
+ created_at: z.ZodString;
10
+ updated_at: z.ZodString;
11
+ web_url: z.ZodString;
12
+ duration: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
13
+ started_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
14
+ finished_at: z.ZodOptional<z.ZodNullable<z.ZodString>>;
15
+ coverage: z.ZodOptional<z.ZodNullable<z.ZodCoercedNumber<unknown>>>;
16
+ user: z.ZodOptional<z.ZodObject<{
17
+ id: z.ZodCoercedString<unknown>;
18
+ name: z.ZodString;
19
+ username: z.ZodString;
20
+ avatar_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
21
+ }, z.core.$strip>>;
22
+ detailed_status: z.ZodOptional<z.ZodObject<{
23
+ icon: z.ZodOptional<z.ZodString>;
24
+ text: z.ZodOptional<z.ZodString>;
25
+ label: z.ZodOptional<z.ZodString>;
26
+ group: z.ZodOptional<z.ZodString>;
27
+ tooltip: z.ZodOptional<z.ZodString>;
28
+ has_details: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
29
+ details_path: z.ZodOptional<z.ZodString>;
30
+ illustration: z.ZodOptional<z.ZodNullable<z.ZodObject<{
31
+ image: z.ZodOptional<z.ZodString>;
32
+ size: z.ZodOptional<z.ZodString>;
33
+ title: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>>>;
35
+ favicon: z.ZodOptional<z.ZodString>;
36
+ }, z.core.$strip>>;
37
+ }, z.core.$strip>;
38
+ export declare const GitLabPipelineJobSchema: z.ZodObject<{
39
+ id: z.ZodCoercedString<unknown>;
40
+ status: z.ZodString;
41
+ stage: z.ZodString;
42
+ name: z.ZodString;
43
+ ref: z.ZodString;
44
+ tag: z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>;
45
+ coverage: z.ZodOptional<z.ZodNullable<z.ZodCoercedNumber<unknown>>>;
46
+ allow_failure: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
47
+ created_at: z.ZodString;
48
+ started_at: z.ZodOptional<z.ZodString>;
49
+ finished_at: z.ZodOptional<z.ZodString>;
50
+ duration: z.ZodOptional<z.ZodNumber>;
51
+ queued_duration: z.ZodOptional<z.ZodNumber>;
52
+ user: z.ZodOptional<z.ZodObject<{
53
+ id: z.ZodCoercedString<unknown>;
54
+ name: z.ZodString;
55
+ username: z.ZodString;
56
+ state: z.ZodString;
57
+ avatar_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
58
+ web_url: z.ZodString;
59
+ }, z.core.$strip>>;
60
+ commit: z.ZodOptional<z.ZodObject<{
61
+ id: z.ZodString;
62
+ short_id: z.ZodString;
63
+ title: z.ZodString;
64
+ author_name: z.ZodString;
65
+ author_email: z.ZodString;
66
+ created_at: z.ZodString;
67
+ message: z.ZodString;
68
+ }, z.core.$strip>>;
69
+ pipeline: z.ZodOptional<z.ZodObject<{
70
+ id: z.ZodCoercedString<unknown>;
71
+ project_id: z.ZodCoercedString<unknown>;
72
+ ref: z.ZodString;
73
+ sha: z.ZodString;
74
+ status: z.ZodString;
75
+ }, z.core.$strip>>;
76
+ web_url: z.ZodString;
77
+ }, z.core.$strip>;
78
+ export declare const GitLabPipelineTriggerJobSchema: z.ZodObject<{
79
+ id: z.ZodCoercedString<unknown>;
80
+ status: z.ZodString;
81
+ stage: z.ZodString;
82
+ name: z.ZodString;
83
+ ref: z.ZodString;
84
+ tag: z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>;
85
+ coverage: z.ZodOptional<z.ZodNullable<z.ZodCoercedNumber<unknown>>>;
86
+ allow_failure: z.ZodOptional<z.ZodPipe<z.ZodTransform<boolean, unknown>, z.ZodBoolean>>;
87
+ created_at: z.ZodString;
88
+ started_at: z.ZodOptional<z.ZodString>;
89
+ finished_at: z.ZodOptional<z.ZodString>;
90
+ duration: z.ZodOptional<z.ZodNumber>;
91
+ queued_duration: z.ZodOptional<z.ZodNumber>;
92
+ user: z.ZodOptional<z.ZodObject<{
93
+ id: z.ZodCoercedString<unknown>;
94
+ name: z.ZodString;
95
+ username: z.ZodString;
96
+ state: z.ZodString;
97
+ avatar_url: z.ZodOptional<z.ZodNullable<z.ZodString>>;
98
+ web_url: z.ZodString;
99
+ }, z.core.$strip>>;
100
+ commit: z.ZodOptional<z.ZodObject<{
101
+ id: z.ZodString;
102
+ short_id: z.ZodString;
103
+ title: z.ZodString;
104
+ author_name: z.ZodString;
105
+ author_email: z.ZodString;
106
+ created_at: z.ZodString;
107
+ message: z.ZodString;
108
+ }, z.core.$strip>>;
109
+ pipeline: z.ZodOptional<z.ZodObject<{
110
+ id: z.ZodCoercedString<unknown>;
111
+ project_id: z.ZodCoercedString<unknown>;
112
+ ref: z.ZodString;
113
+ sha: z.ZodString;
114
+ status: z.ZodString;
115
+ }, z.core.$strip>>;
116
+ web_url: z.ZodString;
117
+ downstream_pipeline: z.ZodOptional<z.ZodObject<{
118
+ id: z.ZodCoercedString<unknown>;
119
+ sha: z.ZodString;
120
+ ref: z.ZodString;
121
+ status: z.ZodString;
122
+ created_at: z.ZodString;
123
+ updated_at: z.ZodString;
124
+ web_url: z.ZodString;
125
+ }, z.core.$strip>>;
126
+ }, z.core.$strip>;
127
+ export declare const ListPipelinesSchema: z.ZodObject<{
128
+ project_id: z.ZodCoercedString<unknown>;
129
+ scope: z.ZodOptional<z.ZodEnum<{
130
+ running: "running";
131
+ pending: "pending";
132
+ finished: "finished";
133
+ branches: "branches";
134
+ tags: "tags";
135
+ }>>;
136
+ status: z.ZodOptional<z.ZodEnum<{
137
+ manual: "manual";
138
+ success: "success";
139
+ created: "created";
140
+ running: "running";
141
+ pending: "pending";
142
+ waiting_for_resource: "waiting_for_resource";
143
+ preparing: "preparing";
144
+ failed: "failed";
145
+ canceled: "canceled";
146
+ skipped: "skipped";
147
+ scheduled: "scheduled";
148
+ }>>;
149
+ source: z.ZodOptional<z.ZodEnum<{
150
+ push: "push";
151
+ external: "external";
152
+ web: "web";
153
+ trigger: "trigger";
154
+ schedule: "schedule";
155
+ api: "api";
156
+ chat: "chat";
157
+ webide: "webide";
158
+ merge_request_event: "merge_request_event";
159
+ external_pull_request_event: "external_pull_request_event";
160
+ parent_pipeline: "parent_pipeline";
161
+ ondemand_dast_scan: "ondemand_dast_scan";
162
+ ondemand_dast_validation: "ondemand_dast_validation";
163
+ }>>;
164
+ ref: z.ZodOptional<z.ZodString>;
165
+ sha: z.ZodOptional<z.ZodString>;
166
+ yaml_errors: z.ZodOptional<z.ZodBoolean>;
167
+ name: z.ZodOptional<z.ZodString>;
168
+ username: z.ZodOptional<z.ZodString>;
169
+ updated_after: z.ZodOptional<z.ZodString>;
170
+ updated_before: z.ZodOptional<z.ZodString>;
171
+ order_by: z.ZodOptional<z.ZodEnum<{
172
+ id: "id";
173
+ updated_at: "updated_at";
174
+ ref: "ref";
175
+ status: "status";
176
+ user_id: "user_id";
177
+ }>>;
178
+ sort: z.ZodOptional<z.ZodEnum<{
179
+ asc: "asc";
180
+ desc: "desc";
181
+ }>>;
182
+ page: z.ZodOptional<z.ZodNumber>;
183
+ per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
184
+ }, z.core.$strip>;
185
+ export declare const GetPipelineSchema: z.ZodObject<{
186
+ project_id: z.ZodCoercedString<unknown>;
187
+ pipeline_id: z.ZodCoercedString<unknown>;
188
+ }, z.core.$strip>;
189
+ export declare const ListPipelineJobsSchema: z.ZodObject<{
190
+ project_id: z.ZodCoercedString<unknown>;
191
+ pipeline_id: z.ZodCoercedString<unknown>;
192
+ scope: z.ZodOptional<z.ZodArray<z.ZodEnum<{
193
+ manual: "manual";
194
+ success: "success";
195
+ created: "created";
196
+ running: "running";
197
+ pending: "pending";
198
+ failed: "failed";
199
+ canceled: "canceled";
200
+ skipped: "skipped";
201
+ }>>>;
202
+ include_retried: z.ZodOptional<z.ZodBoolean>;
203
+ page: z.ZodOptional<z.ZodNumber>;
204
+ per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
205
+ }, z.core.$strip>;
206
+ export declare const ListPipelineTriggerJobsSchema: z.ZodObject<{
207
+ project_id: z.ZodCoercedString<unknown>;
208
+ pipeline_id: z.ZodCoercedString<unknown>;
209
+ scope: z.ZodOptional<z.ZodArray<z.ZodEnum<{
210
+ manual: "manual";
211
+ success: "success";
212
+ created: "created";
213
+ running: "running";
214
+ pending: "pending";
215
+ waiting_for_resource: "waiting_for_resource";
216
+ preparing: "preparing";
217
+ failed: "failed";
218
+ canceled: "canceled";
219
+ skipped: "skipped";
220
+ }>>>;
221
+ include_retried: z.ZodOptional<z.ZodBoolean>;
222
+ page: z.ZodOptional<z.ZodNumber>;
223
+ per_page: z.ZodDefault<z.ZodOptional<z.ZodNumber>>;
224
+ }, z.core.$strip>;
225
+ export declare const GetPipelineJobOutputSchema: z.ZodObject<{
226
+ project_id: z.ZodCoercedString<unknown>;
227
+ job_id: z.ZodCoercedString<unknown>;
228
+ limit: z.ZodOptional<z.ZodNumber>;
229
+ max_lines: z.ZodOptional<z.ZodNumber>;
230
+ start: z.ZodOptional<z.ZodNumber>;
231
+ }, z.core.$strip>;
232
+ export type GitLabPipeline = z.infer<typeof GitLabPipelineSchema>;
233
+ export type GitLabPipelineJob = z.infer<typeof GitLabPipelineJobSchema>;
234
+ export type GitLabPipelineTriggerJob = z.infer<typeof GitLabPipelineTriggerJobSchema>;
235
+ export type ListPipelinesOptions = z.infer<typeof ListPipelinesSchema>;
236
+ export type GetPipelineOptions = z.infer<typeof GetPipelineSchema>;
237
+ export type ListPipelineJobsOptions = z.infer<typeof ListPipelineJobsSchema>;
238
+ export type ListPipelineTriggerJobsOptions = z.infer<typeof ListPipelineTriggerJobsSchema>;