@andrebuzeli/git-mcp 2.6.1

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 (122) hide show
  1. package/README.md +346 -0
  2. package/dist/client.d.ts +307 -0
  3. package/dist/client.d.ts.map +1 -0
  4. package/dist/client.js +299 -0
  5. package/dist/client.js.map +1 -0
  6. package/dist/config.d.ts +299 -0
  7. package/dist/config.d.ts.map +1 -0
  8. package/dist/config.js +381 -0
  9. package/dist/config.js.map +1 -0
  10. package/dist/index.d.ts +22 -0
  11. package/dist/index.d.ts.map +1 -0
  12. package/dist/index.js +53 -0
  13. package/dist/index.js.map +1 -0
  14. package/dist/providers/base-provider.d.ts +139 -0
  15. package/dist/providers/base-provider.d.ts.map +1 -0
  16. package/dist/providers/base-provider.js +246 -0
  17. package/dist/providers/base-provider.js.map +1 -0
  18. package/dist/providers/error-handler.d.ts +51 -0
  19. package/dist/providers/error-handler.d.ts.map +1 -0
  20. package/dist/providers/error-handler.js +170 -0
  21. package/dist/providers/error-handler.js.map +1 -0
  22. package/dist/providers/gitea-provider.d.ts +68 -0
  23. package/dist/providers/gitea-provider.d.ts.map +1 -0
  24. package/dist/providers/gitea-provider.js +515 -0
  25. package/dist/providers/gitea-provider.js.map +1 -0
  26. package/dist/providers/github-provider.d.ts +68 -0
  27. package/dist/providers/github-provider.d.ts.map +1 -0
  28. package/dist/providers/github-provider.js +518 -0
  29. package/dist/providers/github-provider.js.map +1 -0
  30. package/dist/providers/index.d.ts +13 -0
  31. package/dist/providers/index.d.ts.map +1 -0
  32. package/dist/providers/index.js +41 -0
  33. package/dist/providers/index.js.map +1 -0
  34. package/dist/providers/provider-factory.d.ts +75 -0
  35. package/dist/providers/provider-factory.d.ts.map +1 -0
  36. package/dist/providers/provider-factory.js +298 -0
  37. package/dist/providers/provider-factory.js.map +1 -0
  38. package/dist/providers/types.d.ts +276 -0
  39. package/dist/providers/types.d.ts.map +1 -0
  40. package/dist/providers/types.js +7 -0
  41. package/dist/providers/types.js.map +1 -0
  42. package/dist/server.d.ts +77 -0
  43. package/dist/server.d.ts.map +1 -0
  44. package/dist/server.js +262 -0
  45. package/dist/server.js.map +1 -0
  46. package/dist/tools/actions.d.ts +272 -0
  47. package/dist/tools/actions.d.ts.map +1 -0
  48. package/dist/tools/actions.js +428 -0
  49. package/dist/tools/actions.js.map +1 -0
  50. package/dist/tools/analytics.d.ts +326 -0
  51. package/dist/tools/analytics.d.ts.map +1 -0
  52. package/dist/tools/analytics.js +473 -0
  53. package/dist/tools/analytics.js.map +1 -0
  54. package/dist/tools/branches.d.ts +461 -0
  55. package/dist/tools/branches.d.ts.map +1 -0
  56. package/dist/tools/branches.js +525 -0
  57. package/dist/tools/branches.js.map +1 -0
  58. package/dist/tools/code-review.d.ts +323 -0
  59. package/dist/tools/code-review.d.ts.map +1 -0
  60. package/dist/tools/code-review.js +552 -0
  61. package/dist/tools/code-review.js.map +1 -0
  62. package/dist/tools/commits.d.ts +488 -0
  63. package/dist/tools/commits.d.ts.map +1 -0
  64. package/dist/tools/commits.js +578 -0
  65. package/dist/tools/commits.js.map +1 -0
  66. package/dist/tools/deployments.d.ts +319 -0
  67. package/dist/tools/deployments.d.ts.map +1 -0
  68. package/dist/tools/deployments.js +355 -0
  69. package/dist/tools/deployments.js.map +1 -0
  70. package/dist/tools/files.d.ts +456 -0
  71. package/dist/tools/files.d.ts.map +1 -0
  72. package/dist/tools/files.js +531 -0
  73. package/dist/tools/files.js.map +1 -0
  74. package/dist/tools/git-sync.d.ts +177 -0
  75. package/dist/tools/git-sync.d.ts.map +1 -0
  76. package/dist/tools/git-sync.js +112 -0
  77. package/dist/tools/git-sync.js.map +1 -0
  78. package/dist/tools/issues.d.ts +579 -0
  79. package/dist/tools/issues.d.ts.map +1 -0
  80. package/dist/tools/issues.js +631 -0
  81. package/dist/tools/issues.js.map +1 -0
  82. package/dist/tools/pulls.d.ts +702 -0
  83. package/dist/tools/pulls.d.ts.map +1 -0
  84. package/dist/tools/pulls.js +730 -0
  85. package/dist/tools/pulls.js.map +1 -0
  86. package/dist/tools/releases.d.ts +495 -0
  87. package/dist/tools/releases.d.ts.map +1 -0
  88. package/dist/tools/releases.js +551 -0
  89. package/dist/tools/releases.js.map +1 -0
  90. package/dist/tools/repositories.d.ts +513 -0
  91. package/dist/tools/repositories.d.ts.map +1 -0
  92. package/dist/tools/repositories.js +634 -0
  93. package/dist/tools/repositories.js.map +1 -0
  94. package/dist/tools/security.d.ts +341 -0
  95. package/dist/tools/security.d.ts.map +1 -0
  96. package/dist/tools/security.js +394 -0
  97. package/dist/tools/security.js.map +1 -0
  98. package/dist/tools/tags.d.ts +419 -0
  99. package/dist/tools/tags.d.ts.map +1 -0
  100. package/dist/tools/tags.js +479 -0
  101. package/dist/tools/tags.js.map +1 -0
  102. package/dist/tools/users.d.ts +376 -0
  103. package/dist/tools/users.d.ts.map +1 -0
  104. package/dist/tools/users.js +495 -0
  105. package/dist/tools/users.js.map +1 -0
  106. package/dist/tools/validator.d.ts +192 -0
  107. package/dist/tools/validator.d.ts.map +1 -0
  108. package/dist/tools/validator.js +198 -0
  109. package/dist/tools/validator.js.map +1 -0
  110. package/dist/tools/version-control.d.ts +247 -0
  111. package/dist/tools/version-control.d.ts.map +1 -0
  112. package/dist/tools/version-control.js +521 -0
  113. package/dist/tools/version-control.js.map +1 -0
  114. package/dist/tools/webhooks.d.ts +478 -0
  115. package/dist/tools/webhooks.d.ts.map +1 -0
  116. package/dist/tools/webhooks.js +541 -0
  117. package/dist/tools/webhooks.js.map +1 -0
  118. package/dist/tools/workflows.d.ts +313 -0
  119. package/dist/tools/workflows.d.ts.map +1 -0
  120. package/dist/tools/workflows.js +430 -0
  121. package/dist/tools/workflows.js.map +1 -0
  122. package/package.json +58 -0
@@ -0,0 +1,430 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.workflowsTool = void 0;
4
+ const zod_1 = require("zod");
5
+ const index_js_1 = require("../providers/index.js");
6
+ const validator_js_1 = require("./validator.js");
7
+ /**
8
+ * Tool: workflows
9
+ *
10
+ * DESCRIÇÃO:
11
+ * Gerenciamento completo de workflows CI/CD com múltiplas ações
12
+ *
13
+ * FUNCIONALIDADES:
14
+ * - Listagem de workflows ativos
15
+ * - Criação de novos workflows
16
+ * - Disparo manual de workflows
17
+ * - Verificação de status de execução
18
+ * - Obtenção de logs de execução
19
+ * - Controle de workflows (enable/disable)
20
+ *
21
+ * USO:
22
+ * - Para automatizar CI/CD pipelines
23
+ * - Para monitorar execuções
24
+ * - Para gerenciar workflows de desenvolvimento
25
+ * - Para integração com ferramentas de deploy
26
+ *
27
+ * RECOMENDAÇÕES:
28
+ * - Use workflows para automatizar testes
29
+ * - Configure triggers apropriados
30
+ * - Monitore logs regularmente
31
+ * - Mantenha workflows simples e focados
32
+ */
33
+ /**
34
+ * Schema de validação para entrada da tool workflows
35
+ *
36
+ * VALIDAÇÕES:
37
+ * - action: Ação obrigatória (list, create, trigger, status, logs, disable, enable)
38
+ * - Parâmetros específicos por ação
39
+ * - Validação de tipos e formatos
40
+ *
41
+ * RECOMENDAÇÕES:
42
+ * - Sempre valide entrada antes de usar
43
+ * - Use parâmetros opcionais adequadamente
44
+ * - Documente parâmetros obrigatórios
45
+ */
46
+ const WorkflowsInputSchema = zod_1.z.object({
47
+ action: zod_1.z.enum(['list', 'create', 'trigger', 'status', 'logs', 'disable', 'enable']),
48
+ // Parâmetros comuns
49
+ owner: validator_js_1.CommonSchemas.owner,
50
+ repo: validator_js_1.CommonSchemas.repo,
51
+ provider: validator_js_1.CommonSchemas.provider,
52
+ // Parâmetros para listagem
53
+ page: validator_js_1.CommonSchemas.page,
54
+ limit: validator_js_1.CommonSchemas.limit,
55
+ // Parâmetros para criação
56
+ name: validator_js_1.CommonSchemas.shortString,
57
+ description: validator_js_1.CommonSchemas.mediumString,
58
+ workflow_content: validator_js_1.CommonSchemas.longString,
59
+ branch: validator_js_1.CommonSchemas.branch,
60
+ // Parâmetros para trigger e status
61
+ workflow_id: validator_js_1.CommonSchemas.shortString,
62
+ workflow_name: validator_js_1.CommonSchemas.shortString,
63
+ run_id: validator_js_1.CommonSchemas.shortString,
64
+ // Parâmetros para logs
65
+ job_id: validator_js_1.CommonSchemas.shortString,
66
+ step_number: zod_1.z.number().optional(),
67
+ // Parâmetros para inputs do workflow
68
+ inputs: zod_1.z.record(zod_1.z.string()).optional(),
69
+ ref: validator_js_1.CommonSchemas.branch.optional()
70
+ }).refine((data) => {
71
+ // Validações específicas por ação
72
+ if (['create'].includes(data.action)) {
73
+ return data.owner && data.repo && data.name && data.workflow_content;
74
+ }
75
+ if (['trigger', 'status', 'logs', 'disable', 'enable'].includes(data.action)) {
76
+ return data.owner && data.repo && (data.workflow_id || data.workflow_name);
77
+ }
78
+ return data.owner && data.repo;
79
+ }, {
80
+ message: "Parâmetros obrigatórios não fornecidos para a ação especificada"
81
+ });
82
+ /**
83
+ * Schema de validação para resultado da tool workflows
84
+ */
85
+ const WorkflowsResultSchema = zod_1.z.object({
86
+ success: zod_1.z.boolean(),
87
+ action: zod_1.z.string(),
88
+ message: zod_1.z.string(),
89
+ data: zod_1.z.any().optional(),
90
+ error: zod_1.z.string().optional()
91
+ });
92
+ /**
93
+ * Implementação da tool workflows
94
+ *
95
+ * ESTRUTURA:
96
+ * - Validação de entrada
97
+ * - Seleção do provider
98
+ * - Execução da ação
99
+ * - Tratamento de erros
100
+ * - Formatação do resultado
101
+ *
102
+ * AÇÕES SUPORTADAS:
103
+ * - list: Lista workflows do repositório
104
+ * - create: Cria novo workflow
105
+ * - trigger: Dispara workflow manualmente
106
+ * - status: Verifica status de execução
107
+ * - logs: Obtém logs de execução
108
+ * - disable: Desabilita workflow
109
+ * - enable: Habilita workflow
110
+ *
111
+ * TRATAMENTO DE ERROS:
112
+ * - Validação de parâmetros
113
+ * - Verificação de permissões
114
+ * - Tratamento de falhas de API
115
+ * - Logs detalhados para debug
116
+ */
117
+ exports.workflowsTool = {
118
+ name: 'workflows',
119
+ description: 'Manage CI/CD workflows with multiple actions: list, create, trigger, status, logs, disable, enable. Suporte completo a GitHub Actions e Gitea Actions simultaneamente. Boas práticas: use para automatizar CI/CD pipelines, monitorar execuções, configurar triggers apropriados e manter workflows simples e focados.',
120
+ inputSchema: {
121
+ type: 'object',
122
+ properties: {
123
+ action: {
124
+ type: 'string',
125
+ enum: ['list', 'create', 'trigger', 'status', 'logs', 'disable', 'enable'],
126
+ description: 'Action to perform on workflows'
127
+ },
128
+ owner: { type: 'string', description: 'Repository owner' },
129
+ repo: { type: 'string', description: 'Repository name' },
130
+ provider: { type: 'string', description: 'Specific provider (github, gitea) or use default' },
131
+ name: { type: 'string', description: 'Workflow name for creation' },
132
+ description: { type: 'string', description: 'Workflow description' },
133
+ workflow_content: { type: 'string', description: 'Workflow YAML content' },
134
+ branch: { type: 'string', description: 'Target branch' },
135
+ workflow_id: { type: 'string', description: 'Workflow ID' },
136
+ workflow_name: { type: 'string', description: 'Workflow name' },
137
+ run_id: { type: 'string', description: 'Workflow run ID' },
138
+ job_id: { type: 'string', description: 'Job ID for logs' },
139
+ step_number: { type: 'number', description: 'Step number for logs' },
140
+ inputs: { type: 'object', description: 'Workflow inputs' },
141
+ ref: { type: 'string', description: 'Git reference for trigger' },
142
+ page: { type: 'number', description: 'Page number', minimum: 1 },
143
+ limit: { type: 'number', description: 'Items per page', minimum: 1, maximum: 100 }
144
+ },
145
+ required: ['action']
146
+ },
147
+ /**
148
+ * Handler principal da tool workflows
149
+ *
150
+ * FLUXO:
151
+ * 1. Validação da entrada
152
+ * 2. Seleção do provider
153
+ * 3. Execução da ação específica
154
+ * 4. Formatação e retorno do resultado
155
+ *
156
+ * PARÂMETROS:
157
+ * @param input - Dados de entrada validados
158
+ *
159
+ * RETORNO:
160
+ * @returns Promise<WorkflowsResult> - Resultado da operação
161
+ *
162
+ * ERROS:
163
+ * - Lança exceção em caso de erro de validação
164
+ * - Retorna erro formatado em caso de falha de API
165
+ */
166
+ async handler(input) {
167
+ try {
168
+ // Validação da entrada
169
+ const validatedInput = WorkflowsInputSchema.parse(input);
170
+ // Seleção do provider
171
+ const provider = validatedInput.provider
172
+ ? index_js_1.globalProviderFactory.getProvider(validatedInput.provider)
173
+ : index_js_1.globalProviderFactory.getDefaultProvider();
174
+ if (!provider) {
175
+ throw new Error(`Provider '${validatedInput.provider}' não encontrado`);
176
+ }
177
+ // Execução da ação específica
178
+ switch (validatedInput.action) {
179
+ case 'list':
180
+ return await this.listWorkflows(validatedInput, provider);
181
+ case 'create':
182
+ return await this.createWorkflow(validatedInput, provider);
183
+ case 'trigger':
184
+ return await this.triggerWorkflow(validatedInput, provider);
185
+ case 'status':
186
+ return await this.getWorkflowStatus(validatedInput, provider);
187
+ case 'logs':
188
+ return await this.getWorkflowLogs(validatedInput, provider);
189
+ case 'disable':
190
+ return await this.disableWorkflow(validatedInput, provider);
191
+ case 'enable':
192
+ return await this.enableWorkflow(validatedInput, provider);
193
+ default:
194
+ throw new Error(`Ação não suportada: ${validatedInput.action}`);
195
+ }
196
+ }
197
+ catch (error) {
198
+ return {
199
+ success: false,
200
+ action: input.action || 'unknown',
201
+ message: 'Erro na operação de workflows',
202
+ error: error instanceof Error ? error.message : String(error)
203
+ };
204
+ }
205
+ },
206
+ /**
207
+ * Lista workflows do repositório
208
+ */
209
+ async listWorkflows(params, provider) {
210
+ try {
211
+ if (!provider.listWorkflows) {
212
+ return {
213
+ success: false,
214
+ action: 'list-workflows',
215
+ message: 'Funcionalidade não suportada por este provider',
216
+ error: 'Provider não implementa listWorkflows'
217
+ };
218
+ }
219
+ if (!provider.listWorkflows) {
220
+ return {
221
+ success: false,
222
+ action: 'list',
223
+ message: 'Funcionalidade de workflows não suportada por este provider',
224
+ error: 'Provider não implementa listWorkflows'
225
+ };
226
+ }
227
+ const result = await provider.listWorkflows({
228
+ owner: params.owner,
229
+ repo: params.repo,
230
+ page: params.page,
231
+ limit: params.limit
232
+ });
233
+ return {
234
+ success: true,
235
+ action: 'list',
236
+ message: `${result.workflows?.length || 0} workflows encontrados`,
237
+ data: result
238
+ };
239
+ }
240
+ catch (error) {
241
+ throw new Error(`Falha ao listar workflows: ${error}`);
242
+ }
243
+ },
244
+ /**
245
+ * Cria novo workflow
246
+ */
247
+ async createWorkflow(params, provider) {
248
+ try {
249
+ if (!provider.createWorkflow) {
250
+ return {
251
+ success: false,
252
+ action: 'create-workflow',
253
+ message: 'Funcionalidade não suportada por este provider',
254
+ error: 'Provider não implementa createWorkflow'
255
+ };
256
+ }
257
+ const result = await provider.createWorkflow({
258
+ owner: params.owner,
259
+ repo: params.repo,
260
+ name: params.name,
261
+ description: params.description,
262
+ content: params.workflow_content,
263
+ branch: params.branch
264
+ });
265
+ return {
266
+ success: true,
267
+ action: 'create',
268
+ message: `Workflow '${params.name}' criado com sucesso`,
269
+ data: result
270
+ };
271
+ }
272
+ catch (error) {
273
+ throw new Error(`Falha ao criar workflow: ${error}`);
274
+ }
275
+ },
276
+ /**
277
+ * Dispara workflow manualmente
278
+ */
279
+ async triggerWorkflow(params, provider) {
280
+ try {
281
+ if (!provider.triggerWorkflow) {
282
+ return {
283
+ success: false,
284
+ action: 'trigger-workflow',
285
+ message: 'Funcionalidade não suportada por este provider',
286
+ error: 'Provider não implementa triggerWorkflow'
287
+ };
288
+ }
289
+ const result = await provider.triggerWorkflow({
290
+ owner: params.owner,
291
+ repo: params.repo,
292
+ workflow_id: params.workflow_id,
293
+ workflow_name: params.workflow_name,
294
+ ref: params.ref || 'main',
295
+ inputs: params.inputs
296
+ });
297
+ return {
298
+ success: true,
299
+ action: 'trigger',
300
+ message: `Workflow disparado com sucesso`,
301
+ data: result
302
+ };
303
+ }
304
+ catch (error) {
305
+ throw new Error(`Falha ao disparar workflow: ${error}`);
306
+ }
307
+ },
308
+ /**
309
+ * Verifica status de execução do workflow
310
+ */
311
+ async getWorkflowStatus(params, provider) {
312
+ try {
313
+ if (!provider.getWorkflowStatus) {
314
+ return {
315
+ success: false,
316
+ action: 'get-workflow-status',
317
+ message: 'Funcionalidade não suportada por este provider',
318
+ error: 'Provider não implementa getWorkflowStatus'
319
+ };
320
+ }
321
+ const result = await provider.getWorkflowStatus({
322
+ owner: params.owner,
323
+ repo: params.repo,
324
+ run_id: params.run_id,
325
+ workflow_id: params.workflow_id
326
+ });
327
+ return {
328
+ success: true,
329
+ action: 'status',
330
+ message: `Status do workflow obtido com sucesso`,
331
+ data: result
332
+ };
333
+ }
334
+ catch (error) {
335
+ throw new Error(`Falha ao obter status do workflow: ${error}`);
336
+ }
337
+ },
338
+ /**
339
+ * Obtém logs de execução do workflow
340
+ */
341
+ async getWorkflowLogs(params, provider) {
342
+ try {
343
+ if (!provider.getWorkflowLogs) {
344
+ return {
345
+ success: false,
346
+ action: 'get-workflow-logs',
347
+ message: 'Funcionalidade não suportada por este provider',
348
+ error: 'Provider não implementa getWorkflowLogs'
349
+ };
350
+ }
351
+ const result = await provider.getWorkflowLogs({
352
+ owner: params.owner,
353
+ repo: params.repo,
354
+ run_id: params.run_id,
355
+ job_id: params.job_id,
356
+ step_number: params.step_number
357
+ });
358
+ return {
359
+ success: true,
360
+ action: 'logs',
361
+ message: `Logs do workflow obtidos com sucesso`,
362
+ data: result
363
+ };
364
+ }
365
+ catch (error) {
366
+ throw new Error(`Falha ao obter logs do workflow: ${error}`);
367
+ }
368
+ },
369
+ /**
370
+ * Desabilita workflow
371
+ */
372
+ async disableWorkflow(params, provider) {
373
+ try {
374
+ if (!provider.disableWorkflow) {
375
+ return {
376
+ success: false,
377
+ action: 'disable-workflow',
378
+ message: 'Funcionalidade não suportada por este provider',
379
+ error: 'Provider não implementa disableWorkflow'
380
+ };
381
+ }
382
+ const result = await provider.disableWorkflow({
383
+ owner: params.owner,
384
+ repo: params.repo,
385
+ workflow_id: params.workflow_id,
386
+ workflow_name: params.workflow_name
387
+ });
388
+ return {
389
+ success: true,
390
+ action: 'disable',
391
+ message: `Workflow desabilitado com sucesso`,
392
+ data: result
393
+ };
394
+ }
395
+ catch (error) {
396
+ throw new Error(`Falha ao desabilitar workflow: ${error}`);
397
+ }
398
+ },
399
+ /**
400
+ * Habilita workflow
401
+ */
402
+ async enableWorkflow(params, provider) {
403
+ try {
404
+ if (!provider.enableWorkflow) {
405
+ return {
406
+ success: false,
407
+ action: 'enable-workflow',
408
+ message: 'Funcionalidade não suportada por este provider',
409
+ error: 'Provider não implementa enableWorkflow'
410
+ };
411
+ }
412
+ const result = await provider.enableWorkflow({
413
+ owner: params.owner,
414
+ repo: params.repo,
415
+ workflow_id: params.workflow_id,
416
+ workflow_name: params.workflow_name
417
+ });
418
+ return {
419
+ success: true,
420
+ action: 'enable',
421
+ message: `Workflow habilitado com sucesso`,
422
+ data: result
423
+ };
424
+ }
425
+ catch (error) {
426
+ throw new Error(`Falha ao habilitar workflow: ${error}`);
427
+ }
428
+ }
429
+ };
430
+ //# sourceMappingURL=workflows.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.js","sourceRoot":"","sources":["../../src/tools/workflows.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,58 @@
1
+ {
2
+ "name": "@andrebuzeli/git-mcp",
3
+ "version": "2.6.1",
4
+ "description": "MCP server for Gitea and GitHub integration with 17 comprehensive DevOps tools including CI/CD, security, analytics and advanced automation",
5
+ "main": "dist/index.js",
6
+ "bin": {
7
+ "git-mcp": "dist/index.js"
8
+ },
9
+ "scripts": {
10
+ "build": "tsc",
11
+ "start": "node dist/index.js",
12
+ "dev": "ts-node src/index.ts",
13
+ "test": "node tests/basic.test.js",
14
+ "lint": "echo \"No linting configured\" && exit 0",
15
+ "prepublishOnly": "npm run build",
16
+ "postpublish": "echo 'Git MCP v2.6.1 published successfully!'"
17
+ },
18
+ "keywords": [
19
+ "mcp",
20
+ "gitea",
21
+ "git",
22
+ "model-context-protocol",
23
+ "self-hosted",
24
+ "api",
25
+ "sync",
26
+ "version-control",
27
+ "backup",
28
+ "code-review",
29
+ "ci-cd"
30
+ ],
31
+ "author": "Andre Buzeli",
32
+ "license": "MIT",
33
+ "repository": {
34
+ "type": "git",
35
+ "url": "git+https://github.com/andrebuzeli/gitea-mcp-v2.git"
36
+ },
37
+ "dependencies": {
38
+ "@modelcontextprotocol/sdk": "^0.4.0",
39
+ "axios": "^1.6.0",
40
+ "zod": "^3.22.0"
41
+ },
42
+ "devDependencies": {
43
+ "@types/node": "^20.0.0",
44
+ "typescript": "^5.0.0",
45
+ "ts-node": "^10.9.0"
46
+ },
47
+ "engines": {
48
+ "node": ">=18.0.0"
49
+ },
50
+ "publishConfig": {
51
+ "access": "public"
52
+ },
53
+ "files": [
54
+ "dist/**/*",
55
+ "README.md",
56
+ "LICENSE"
57
+ ]
58
+ }