@mcp-consultant-tools/azure-devops-admin 28.0.0-beta.7 → 28.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 (77) hide show
  1. package/build/cli/commands/agent-pool-commands.d.ts +7 -0
  2. package/build/cli/commands/agent-pool-commands.d.ts.map +1 -0
  3. package/build/cli/commands/agent-pool-commands.js +117 -0
  4. package/build/cli/commands/agent-pool-commands.js.map +1 -0
  5. package/build/cli/commands/artifact-feed-commands.d.ts +7 -0
  6. package/build/cli/commands/artifact-feed-commands.d.ts.map +1 -0
  7. package/build/cli/commands/artifact-feed-commands.js +62 -0
  8. package/build/cli/commands/artifact-feed-commands.js.map +1 -0
  9. package/build/cli/commands/classification-commands.d.ts +7 -0
  10. package/build/cli/commands/classification-commands.d.ts.map +1 -0
  11. package/build/cli/commands/classification-commands.js +192 -0
  12. package/build/cli/commands/classification-commands.js.map +1 -0
  13. package/build/cli/commands/environment-commands.d.ts +7 -0
  14. package/build/cli/commands/environment-commands.d.ts.map +1 -0
  15. package/build/cli/commands/environment-commands.js +172 -0
  16. package/build/cli/commands/environment-commands.js.map +1 -0
  17. package/build/cli/commands/index.d.ts +15 -0
  18. package/build/cli/commands/index.d.ts.map +1 -0
  19. package/build/cli/commands/index.js +30 -0
  20. package/build/cli/commands/index.js.map +1 -0
  21. package/build/cli/commands/pipeline-commands.d.ts +7 -0
  22. package/build/cli/commands/pipeline-commands.d.ts.map +1 -0
  23. package/build/cli/commands/pipeline-commands.js +269 -0
  24. package/build/cli/commands/pipeline-commands.js.map +1 -0
  25. package/build/cli/commands/project-commands.d.ts +7 -0
  26. package/build/cli/commands/project-commands.d.ts.map +1 -0
  27. package/build/cli/commands/project-commands.js +100 -0
  28. package/build/cli/commands/project-commands.js.map +1 -0
  29. package/build/cli/commands/service-connection-commands.d.ts +7 -0
  30. package/build/cli/commands/service-connection-commands.d.ts.map +1 -0
  31. package/build/cli/commands/service-connection-commands.js +131 -0
  32. package/build/cli/commands/service-connection-commands.js.map +1 -0
  33. package/build/cli/commands/variable-group-commands.d.ts +7 -0
  34. package/build/cli/commands/variable-group-commands.d.ts.map +1 -0
  35. package/build/cli/commands/variable-group-commands.js +120 -0
  36. package/build/cli/commands/variable-group-commands.js.map +1 -0
  37. package/build/cli/output.d.ts +11 -0
  38. package/build/cli/output.d.ts.map +1 -0
  39. package/build/cli/output.js +10 -0
  40. package/build/cli/output.js.map +1 -0
  41. package/build/cli.d.ts +9 -0
  42. package/build/cli.d.ts.map +1 -0
  43. package/build/cli.js +27 -0
  44. package/build/cli.js.map +1 -0
  45. package/build/context-factory.d.ts +4 -0
  46. package/build/context-factory.d.ts.map +1 -0
  47. package/build/context-factory.js +84 -0
  48. package/build/context-factory.js.map +1 -0
  49. package/build/index.d.ts.map +1 -1
  50. package/build/index.js +6 -0
  51. package/build/index.js.map +1 -1
  52. package/build/services/admin-client.d.ts.map +1 -1
  53. package/build/services/admin-client.js +4 -0
  54. package/build/services/admin-client.js.map +1 -1
  55. package/build/services/index.d.ts +1 -0
  56. package/build/services/index.d.ts.map +1 -1
  57. package/build/services/index.js +1 -0
  58. package/build/services/index.js.map +1 -1
  59. package/build/services/project-service.d.ts +21 -0
  60. package/build/services/project-service.d.ts.map +1 -0
  61. package/build/services/project-service.js +130 -0
  62. package/build/services/project-service.js.map +1 -0
  63. package/build/tool-examples.d.ts +20 -0
  64. package/build/tool-examples.d.ts.map +1 -1
  65. package/build/tool-examples.js +24 -0
  66. package/build/tool-examples.js.map +1 -1
  67. package/build/tools/index.d.ts +1 -0
  68. package/build/tools/index.d.ts.map +1 -1
  69. package/build/tools/index.js +3 -0
  70. package/build/tools/index.js.map +1 -1
  71. package/build/tools/project-tools.d.ts +7 -0
  72. package/build/tools/project-tools.d.ts.map +1 -0
  73. package/build/tools/project-tools.js +117 -0
  74. package/build/tools/project-tools.js.map +1 -0
  75. package/build/types.d.ts +6 -0
  76. package/build/types.d.ts.map +1 -1
  77. package/package.json +5 -3
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Project operations for Azure DevOps Admin.
3
+ * Org-scoped: does NOT call validateProject() — projects are the things being managed.
4
+ */
5
+ import type { AdminClient } from './admin-client.js';
6
+ export declare class ProjectService {
7
+ private client;
8
+ constructor(client: AdminClient);
9
+ listProjects(stateFilter?: string, top?: number, skip?: number): Promise<any>;
10
+ getProject(projectId: string): Promise<any>;
11
+ getProjectProperties(projectId: string): Promise<any>;
12
+ createProject(name: string, description?: string, visibility?: string, processTemplate?: string, versionControl?: string): Promise<any>;
13
+ updateProject(projectId: string, updates: {
14
+ name?: string;
15
+ description?: string;
16
+ }): Promise<any>;
17
+ deleteProject(projectId: string): Promise<any>;
18
+ private resolveProcessTemplateId;
19
+ private pollOperation;
20
+ }
21
+ //# sourceMappingURL=project-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-service.d.ts","sourceRoot":"","sources":["../../src/services/project-service.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAUrD,qBAAa,cAAc;IACb,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,WAAW;IAEjC,YAAY,CAChB,WAAW,CAAC,EAAE,MAAM,EACpB,GAAG,CAAC,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,GACZ,OAAO,CAAC,GAAG,CAAC;IAyBT,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAmB3C,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAerD,aAAa,CACjB,IAAI,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,EACnB,eAAe,CAAC,EAAE,MAAM,EACxB,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,GAAG,CAAC;IAoCT,aAAa,CACjB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAE,GAC/C,OAAO,CAAC,GAAG,CAAC;IAsBT,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;YAmBtC,wBAAwB;YAmBxB,aAAa;CA0B5B"}
@@ -0,0 +1,130 @@
1
+ export class ProjectService {
2
+ client;
3
+ constructor(client) {
4
+ this.client = client;
5
+ }
6
+ async listProjects(stateFilter, top, skip) {
7
+ const params = new URLSearchParams();
8
+ params.set('api-version', this.client.apiVersion);
9
+ if (stateFilter)
10
+ params.set('stateFilter', stateFilter);
11
+ if (top)
12
+ params.set('$top', String(top));
13
+ if (skip)
14
+ params.set('$skip', String(skip));
15
+ const response = await this.client.makeRequest(`_apis/projects?${params.toString()}`);
16
+ return {
17
+ totalCount: response.count ?? response.value.length,
18
+ projects: response.value.map((p) => ({
19
+ id: p.id,
20
+ name: p.name,
21
+ description: p.description,
22
+ state: p.state,
23
+ visibility: p.visibility,
24
+ lastUpdateTime: p.lastUpdateTime,
25
+ url: p.url,
26
+ })),
27
+ };
28
+ }
29
+ async getProject(projectId) {
30
+ const response = await this.client.makeRequest(`_apis/projects/${encodeURIComponent(projectId)}?includeCapabilities=true&api-version=${this.client.apiVersion}`);
31
+ return {
32
+ id: response.id,
33
+ name: response.name,
34
+ description: response.description,
35
+ state: response.state,
36
+ visibility: response.visibility,
37
+ lastUpdateTime: response.lastUpdateTime,
38
+ capabilities: {
39
+ versionControl: response.capabilities?.versioncontrol?.sourceControlType,
40
+ processTemplate: response.capabilities?.processTemplate?.templateName,
41
+ },
42
+ };
43
+ }
44
+ async getProjectProperties(projectId) {
45
+ const response = await this.client.makeRequest(`_apis/projects/${encodeURIComponent(projectId)}/properties?api-version=7.1-preview.1`);
46
+ const properties = {};
47
+ if (response.value) {
48
+ for (const prop of response.value) {
49
+ properties[prop.name] = prop.value;
50
+ }
51
+ }
52
+ return { projectId, properties };
53
+ }
54
+ async createProject(name, description, visibility, processTemplate, versionControl) {
55
+ const templateId = await this.resolveProcessTemplateId(processTemplate || 'Agile');
56
+ const body = {
57
+ name,
58
+ description: description || '',
59
+ visibility: visibility || 'private',
60
+ capabilities: {
61
+ versioncontrol: {
62
+ sourceControlType: versionControl || 'Git',
63
+ },
64
+ processTemplate: {
65
+ templateTypeId: templateId,
66
+ },
67
+ },
68
+ };
69
+ const operation = await this.client.makeRequest(`_apis/projects?api-version=${this.client.apiVersion}`, 'POST', body);
70
+ const result = await this.pollOperation(operation.id);
71
+ return {
72
+ operationId: operation.id,
73
+ status: result.status,
74
+ name,
75
+ description: description || '',
76
+ visibility: visibility || 'private',
77
+ processTemplate: processTemplate || 'Agile',
78
+ versionControl: versionControl || 'Git',
79
+ };
80
+ }
81
+ async updateProject(projectId, updates) {
82
+ const response = await this.client.makeRequest(`_apis/projects/${encodeURIComponent(projectId)}?api-version=${this.client.apiVersion}`, 'PATCH', updates, undefined, 'application/json');
83
+ if (response.id && response.status) {
84
+ const result = await this.pollOperation(response.id);
85
+ return { operationId: response.id, status: result.status, projectId, ...updates };
86
+ }
87
+ return {
88
+ id: response.id,
89
+ name: response.name,
90
+ description: response.description,
91
+ projectId,
92
+ };
93
+ }
94
+ async deleteProject(projectId) {
95
+ const project = await this.getProject(projectId);
96
+ const operation = await this.client.makeRequest(`_apis/projects/${project.id}?api-version=${this.client.apiVersion}`, 'DELETE');
97
+ const result = await this.pollOperation(operation.id);
98
+ return {
99
+ operationId: operation.id,
100
+ status: result.status,
101
+ projectId: project.id,
102
+ projectName: project.name,
103
+ deleted: result.status === 'succeeded',
104
+ };
105
+ }
106
+ async resolveProcessTemplateId(templateName) {
107
+ const response = await this.client.makeRequest(`_apis/process/processes?api-version=${this.client.apiVersion}`);
108
+ const match = response.value.find((p) => p.name.toLowerCase() === templateName.toLowerCase());
109
+ if (!match) {
110
+ const available = response.value.map((p) => p.name).join(', ');
111
+ throw new Error(`Process template '${templateName}' not found. Available templates: ${available}`);
112
+ }
113
+ return match.typeId;
114
+ }
115
+ async pollOperation(operationId, timeoutMs = 60000, intervalMs = 2000) {
116
+ const start = Date.now();
117
+ while (Date.now() - start < timeoutMs) {
118
+ const op = await this.client.makeRequest(`_apis/operations/${operationId}?api-version=${this.client.apiVersion}`);
119
+ if (op.status === 'succeeded') {
120
+ return op;
121
+ }
122
+ if (op.status === 'failed' || op.status === 'cancelled') {
123
+ throw new Error(`Operation ${operationId} ${op.status}: ${op.resultMessage || 'no details'}`);
124
+ }
125
+ await new Promise(resolve => setTimeout(resolve, intervalMs));
126
+ }
127
+ throw new Error(`Operation ${operationId} timed out after ${timeoutMs / 1000}s`);
128
+ }
129
+ }
130
+ //# sourceMappingURL=project-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-service.js","sourceRoot":"","sources":["../../src/services/project-service.ts"],"names":[],"mappings":"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"}
@@ -80,4 +80,24 @@ export declare const CHECK_TYPE_EXAMPLES: {
80
80
  label: string;
81
81
  value: string;
82
82
  }[];
83
+ /** Process template types for project creation */
84
+ export declare const PROJECT_PROCESS_EXAMPLES: {
85
+ label: string;
86
+ value: string;
87
+ }[];
88
+ /** Project visibility options */
89
+ export declare const PROJECT_VISIBILITY_EXAMPLES: {
90
+ label: string;
91
+ value: string;
92
+ }[];
93
+ /** Project state filter for listing */
94
+ export declare const PROJECT_STATE_FILTER_EXAMPLES: {
95
+ label: string;
96
+ value: string;
97
+ }[];
98
+ /** Version control type for project creation */
99
+ export declare const PROJECT_VERSION_CONTROL_EXAMPLES: {
100
+ label: string;
101
+ value: string;
102
+ }[];
83
103
  //# sourceMappingURL=tool-examples.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-examples.d.ts","sourceRoot":"","sources":["../src/tool-examples.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB;;;GAMjC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,qBAAqB;;;GAKjC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,uBAAuB;;;GAKnC,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,4BAA4B;;;GAKxC,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,yBAAyB;;;GAKrC,CAAC;AAEF,yCAAyC;AACzC,eAAO,MAAM,qBAAqB;;;GAGjC,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,mBAAmB;;;GAG/B,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,wBAAwB;;;GAIpC,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,wBAAwB;;;GAGpC,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,sBAAsB;;;GAMlC,CAAC;AAEF,uCAAuC;AACvC,eAAO,MAAM,kBAAkB;;;GAG9B,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,qBAAqB;;;GAMjC,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,qBAAqB;;;GAIjC,CAAC;AAEF,8BAA8B;AAC9B,eAAO,MAAM,iBAAiB;;;GAI7B,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,mBAAmB;;;GAM/B,CAAC"}
1
+ {"version":3,"file":"tool-examples.d.ts","sourceRoot":"","sources":["../src/tool-examples.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,4BAA4B,CAAC;AAE9D,8CAA8C;AAC9C,eAAO,MAAM,qBAAqB;;;GAMjC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,qBAAqB;;;GAKjC,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,uBAAuB;;;GAKnC,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,4BAA4B;;;GAKxC,CAAC;AAEF,0CAA0C;AAC1C,eAAO,MAAM,yBAAyB;;;GAKrC,CAAC;AAEF,yCAAyC;AACzC,eAAO,MAAM,qBAAqB;;;GAGjC,CAAC;AAEF,uDAAuD;AACvD,eAAO,MAAM,mBAAmB;;;GAG/B,CAAC;AAEF,wDAAwD;AACxD,eAAO,MAAM,wBAAwB;;;GAIpC,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,wBAAwB;;;GAGpC,CAAC;AAEF,sCAAsC;AACtC,eAAO,MAAM,sBAAsB;;;GAMlC,CAAC;AAEF,uCAAuC;AACvC,eAAO,MAAM,kBAAkB;;;GAG9B,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,qBAAqB;;;GAMjC,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,qBAAqB;;;GAIjC,CAAC;AAEF,8BAA8B;AAC9B,eAAO,MAAM,iBAAiB;;;GAI7B,CAAC;AAEF,wCAAwC;AACxC,eAAO,MAAM,mBAAmB;;;GAM/B,CAAC;AAEF,kDAAkD;AAClD,eAAO,MAAM,wBAAwB;;;GAKpC,CAAC;AAEF,iCAAiC;AACjC,eAAO,MAAM,2BAA2B;;;GAGvC,CAAC;AAEF,uCAAuC;AACvC,eAAO,MAAM,6BAA6B;;;GAKzC,CAAC;AAEF,gDAAgD;AAChD,eAAO,MAAM,gCAAgC;;;GAG5C,CAAC"}
@@ -103,4 +103,28 @@ export const CHECK_TYPE_EXAMPLES = [
103
103
  { label: 'REST API validation', value: 'InvokeRESTAPI' },
104
104
  { label: 'Exclusive resource lock', value: 'ExclusiveLock' },
105
105
  ];
106
+ /** Process template types for project creation */
107
+ export const PROJECT_PROCESS_EXAMPLES = [
108
+ { label: 'Agile process (default)', value: 'Agile' },
109
+ { label: 'Scrum process', value: 'Scrum' },
110
+ { label: 'Basic process', value: 'Basic' },
111
+ { label: 'CMMI process', value: 'CMMI' },
112
+ ];
113
+ /** Project visibility options */
114
+ export const PROJECT_VISIBILITY_EXAMPLES = [
115
+ { label: 'Organization members only (default)', value: 'private' },
116
+ { label: 'Public (visible to everyone)', value: 'public' },
117
+ ];
118
+ /** Project state filter for listing */
119
+ export const PROJECT_STATE_FILTER_EXAMPLES = [
120
+ { label: 'All states', value: 'all' },
121
+ { label: 'Active projects (default)', value: 'wellFormed' },
122
+ { label: 'Being created', value: 'createPending' },
123
+ { label: 'Being deleted', value: 'deleting' },
124
+ ];
125
+ /** Version control type for project creation */
126
+ export const PROJECT_VERSION_CONTROL_EXAMPLES = [
127
+ { label: 'Git (default)', value: 'Git' },
128
+ { label: 'Team Foundation Version Control', value: 'Tfvc' },
129
+ ];
106
130
  //# sourceMappingURL=tool-examples.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tool-examples.js","sourceRoot":"","sources":["../src/tool-examples.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool-examples.js","sourceRoot":"","sources":["../src/tool-examples.ts"],"names":[],"mappings":"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"}
@@ -10,4 +10,5 @@ export { registerAgentPoolTools } from './agent-pool-tools.js';
10
10
  export { registerEnvironmentTools } from './environment-tools.js';
11
11
  export { registerClassificationTools } from './classification-tools.js';
12
12
  export { registerArtifactFeedTools } from './artifact-feed-tools.js';
13
+ export { registerProjectTools } from './project-tools.js';
13
14
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AASlD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAuBvE;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAUlD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,GAAG,IAAI,CAwBvE;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -5,6 +5,7 @@ import { registerAgentPoolTools } from './agent-pool-tools.js';
5
5
  import { registerEnvironmentTools } from './environment-tools.js';
6
6
  import { registerClassificationTools } from './classification-tools.js';
7
7
  import { registerArtifactFeedTools } from './artifact-feed-tools.js';
8
+ import { registerProjectTools } from './project-tools.js';
8
9
  export function registerAllTools(server, ctx) {
9
10
  let totalReadonly = 0;
10
11
  let totalUpsert = 0;
@@ -17,6 +18,7 @@ export function registerAllTools(server, ctx) {
17
18
  registerEnvironmentTools(server, ctx),
18
19
  registerClassificationTools(server, ctx),
19
20
  registerArtifactFeedTools(server, ctx),
21
+ registerProjectTools(server, ctx),
20
22
  ];
21
23
  for (const g of groups) {
22
24
  totalReadonly += g.readonly;
@@ -33,4 +35,5 @@ export { registerAgentPoolTools } from './agent-pool-tools.js';
33
35
  export { registerEnvironmentTools } from './environment-tools.js';
34
36
  export { registerClassificationTools } from './classification-tools.js';
35
37
  export { registerArtifactFeedTools } from './artifact-feed-tools.js';
38
+ export { registerProjectTools } from './project-tools.js';
36
39
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAErE,MAAM,UAAU,gBAAgB,CAAC,MAAW,EAAE,GAAmB;IAC/D,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,MAAM,MAAM,GAAG;QACb,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC;QAClC,8BAA8B,CAAC,MAAM,EAAE,GAAG,CAAC;QAC3C,0BAA0B,CAAC,MAAM,EAAE,GAAG,CAAC;QACvC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC;QACnC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC;QACrC,2BAA2B,CAAC,MAAM,EAAE,GAAG,CAAC;QACxC,yBAAyB,CAAC,MAAM,EAAE,GAAG,CAAC;KACvC,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,aAAa,IAAI,CAAC,CAAC,QAAQ,CAAC;QAC5B,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC;QACxB,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,CAAC;IACxD,OAAO,CAAC,KAAK,CAAC,wCAAwC,KAAK,WAAW,aAAa,eAAe,WAAW,aAAa,WAAW,UAAU,CAAC,CAAC;AACnJ,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,UAAU,gBAAgB,CAAC,MAAW,EAAE,GAAmB;IAC/D,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,WAAW,GAAG,CAAC,CAAC;IAEpB,MAAM,MAAM,GAAG;QACb,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC;QAClC,8BAA8B,CAAC,MAAM,EAAE,GAAG,CAAC;QAC3C,0BAA0B,CAAC,MAAM,EAAE,GAAG,CAAC;QACvC,sBAAsB,CAAC,MAAM,EAAE,GAAG,CAAC;QACnC,wBAAwB,CAAC,MAAM,EAAE,GAAG,CAAC;QACrC,2BAA2B,CAAC,MAAM,EAAE,GAAG,CAAC;QACxC,yBAAyB,CAAC,MAAM,EAAE,GAAG,CAAC;QACtC,oBAAoB,CAAC,MAAM,EAAE,GAAG,CAAC;KAClC,CAAC;IAEF,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,aAAa,IAAI,CAAC,CAAC,QAAQ,CAAC;QAC5B,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC;QACxB,WAAW,IAAI,CAAC,CAAC,MAAM,CAAC;IAC1B,CAAC;IAED,MAAM,KAAK,GAAG,aAAa,GAAG,WAAW,GAAG,WAAW,CAAC;IACxD,OAAO,CAAC,KAAK,CAAC,wCAAwC,KAAK,WAAW,aAAa,eAAe,WAAW,aAAa,WAAW,UAAU,CAAC,CAAC;AACnJ,CAAC;AAED,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,2BAA2B,CAAC;AACvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAC/D,OAAO,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AAClE,OAAO,EAAE,2BAA2B,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { ServiceContext } from '../types.js';
2
+ export declare function registerProjectTools(server: any, ctx: ServiceContext): {
3
+ readonly: number;
4
+ upsert: number;
5
+ delete: number;
6
+ };
7
+ //# sourceMappingURL=project-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-tools.d.ts","sourceRoot":"","sources":["../../src/tools/project-tools.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AASlD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,cAAc,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAkJ3H"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Project tools - read-only, upsert (Tier 2), and delete (Tier 3).
3
+ * Org-scoped: these tools do NOT take a project parameter for scoping.
4
+ */
5
+ import { z } from 'zod';
6
+ import { descWithExamples, PROJECT_PROCESS_EXAMPLES, PROJECT_VISIBILITY_EXAMPLES, PROJECT_STATE_FILTER_EXAMPLES, PROJECT_VERSION_CONTROL_EXAMPLES, } from '../tool-examples.js';
7
+ export function registerProjectTools(server, ctx) {
8
+ let readonlyCount = 0;
9
+ let upsertCount = 0;
10
+ let deleteCount = 0;
11
+ // ========================================
12
+ // PROJECT READ-ONLY TOOLS
13
+ // ========================================
14
+ server.tool("list-projects", "List all projects in the Azure DevOps organization. Returns project name, state, visibility, and last update time.", {
15
+ stateFilter: z.string().optional().describe(descWithExamples("Filter by project state (default: wellFormed)", PROJECT_STATE_FILTER_EXAMPLES)),
16
+ top: z.number().optional().describe("Maximum number of projects to return"),
17
+ skip: z.number().optional().describe("Number of projects to skip (for pagination)"),
18
+ }, async ({ stateFilter, top, skip }) => {
19
+ try {
20
+ const result = await ctx.projects.listProjects(stateFilter, top, skip);
21
+ return { content: [{ type: "text", text: `Projects in organization:\n\n${JSON.stringify(result, null, 2)}` }] };
22
+ }
23
+ catch (error) {
24
+ console.error("Error listing projects:", error);
25
+ return { content: [{ type: "text", text: `Failed to list projects: ${error.message}` }], isError: true };
26
+ }
27
+ });
28
+ readonlyCount++;
29
+ server.tool("get-project", "Get detailed information about a project including version control type and process template.", {
30
+ projectId: z.string().describe("Project name or ID (GUID)"),
31
+ }, async ({ projectId }) => {
32
+ try {
33
+ const result = await ctx.projects.getProject(projectId);
34
+ return { content: [{ type: "text", text: `Project '${projectId}':\n\n${JSON.stringify(result, null, 2)}` }] };
35
+ }
36
+ catch (error) {
37
+ console.error("Error getting project:", error);
38
+ return { content: [{ type: "text", text: `Failed to get project: ${error.message}` }], isError: true };
39
+ }
40
+ });
41
+ readonlyCount++;
42
+ server.tool("get-project-properties", "Get extended project properties (process template ID, system capabilities, etc.).", {
43
+ projectId: z.string().describe("Project name or ID (GUID)"),
44
+ }, async ({ projectId }) => {
45
+ try {
46
+ const result = await ctx.projects.getProjectProperties(projectId);
47
+ return { content: [{ type: "text", text: `Properties for '${projectId}':\n\n${JSON.stringify(result, null, 2)}` }] };
48
+ }
49
+ catch (error) {
50
+ console.error("Error getting project properties:", error);
51
+ return { content: [{ type: "text", text: `Failed to get project properties: ${error.message}` }], isError: true };
52
+ }
53
+ });
54
+ readonlyCount++;
55
+ // ========================================
56
+ // PROJECT UPSERT TOOLS (Tier 2)
57
+ // ========================================
58
+ if (ctx.tierFlags.enableProjectUpsert) {
59
+ server.tool("create-project", "Create a new Azure DevOps project. Polls until the operation completes (~5-30 seconds). (requires AZUREDEVOPS_ENABLE_PROJECT_UPSERT=true)", {
60
+ name: z.string().describe("Project name (must be unique in the organization)"),
61
+ description: z.string().optional().describe("Project description"),
62
+ visibility: z.string().optional().describe(descWithExamples("Project visibility (default: private)", PROJECT_VISIBILITY_EXAMPLES)),
63
+ processTemplate: z.string().optional().describe(descWithExamples("Process template name (default: Agile)", PROJECT_PROCESS_EXAMPLES)),
64
+ versionControl: z.string().optional().describe(descWithExamples("Version control type (default: Git)", PROJECT_VERSION_CONTROL_EXAMPLES)),
65
+ }, async ({ name, description, visibility, processTemplate, versionControl }) => {
66
+ try {
67
+ const result = await ctx.projects.createProject(name, description, visibility, processTemplate, versionControl);
68
+ return { content: [{ type: "text", text: `Created project '${name}':\n\n${JSON.stringify(result, null, 2)}` }] };
69
+ }
70
+ catch (error) {
71
+ console.error("Error creating project:", error);
72
+ return { content: [{ type: "text", text: `Failed to create project: ${error.message}` }], isError: true };
73
+ }
74
+ });
75
+ upsertCount++;
76
+ server.tool("update-project", "Update a project's name and/or description. (requires AZUREDEVOPS_ENABLE_PROJECT_UPSERT=true)", {
77
+ projectId: z.string().describe("Project name or ID (GUID)"),
78
+ name: z.string().optional().describe("New project name"),
79
+ description: z.string().optional().describe("New project description"),
80
+ }, async ({ projectId, name, description }) => {
81
+ try {
82
+ const updates = {};
83
+ if (name !== undefined)
84
+ updates.name = name;
85
+ if (description !== undefined)
86
+ updates.description = description;
87
+ const result = await ctx.projects.updateProject(projectId, updates);
88
+ return { content: [{ type: "text", text: `Updated project '${projectId}':\n\n${JSON.stringify(result, null, 2)}` }] };
89
+ }
90
+ catch (error) {
91
+ console.error("Error updating project:", error);
92
+ return { content: [{ type: "text", text: `Failed to update project: ${error.message}` }], isError: true };
93
+ }
94
+ });
95
+ upsertCount++;
96
+ }
97
+ // ========================================
98
+ // PROJECT DELETE TOOLS (Tier 3)
99
+ // ========================================
100
+ if (ctx.tierFlags.enableProjectDelete) {
101
+ server.tool("delete-project", "DESTRUCTIVE: Permanently delete an Azure DevOps project and all its data. This cannot be undone. Polls until the operation completes. (requires AZUREDEVOPS_ENABLE_PROJECT_DELETE=true)", {
102
+ projectId: z.string().describe("Project name or ID (GUID) to delete"),
103
+ }, async ({ projectId }) => {
104
+ try {
105
+ const result = await ctx.projects.deleteProject(projectId);
106
+ return { content: [{ type: "text", text: `Deleted project '${projectId}':\n\n${JSON.stringify(result, null, 2)}` }] };
107
+ }
108
+ catch (error) {
109
+ console.error("Error deleting project:", error);
110
+ return { content: [{ type: "text", text: `Failed to delete project: ${error.message}` }], isError: true };
111
+ }
112
+ });
113
+ deleteCount++;
114
+ }
115
+ return { readonly: readonlyCount, upsert: upsertCount, delete: deleteCount };
116
+ }
117
+ //# sourceMappingURL=project-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-tools.js","sourceRoot":"","sources":["../../src/tools/project-tools.ts"],"names":[],"mappings":"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"}
package/build/types.d.ts CHANGED
@@ -10,6 +10,7 @@ import type { AgentPoolService } from './services/agent-pool-service.js';
10
10
  import type { EnvironmentService } from './services/environment-service.js';
11
11
  import type { ClassificationService } from './services/classification-service.js';
12
12
  import type { ArtifactFeedService } from './services/artifact-feed-service.js';
13
+ import type { ProjectService } from './services/project-service.js';
13
14
  export interface AzureDevOpsAdminConfig {
14
15
  organization: string;
15
16
  pat: string;
@@ -27,6 +28,8 @@ export interface AzureDevOpsAdminConfig {
27
28
  enableEnvironmentDelete?: boolean;
28
29
  enableClassificationNodeUpsert?: boolean;
29
30
  enableClassificationNodeDelete?: boolean;
31
+ enableProjectUpsert?: boolean;
32
+ enableProjectDelete?: boolean;
30
33
  feeds?: string[];
31
34
  }
32
35
  export interface TierFlags {
@@ -42,6 +45,8 @@ export interface TierFlags {
42
45
  enableAgentPoolDisable: boolean;
43
46
  enableEnvironmentDelete: boolean;
44
47
  enableClassificationNodeDelete: boolean;
48
+ enableProjectUpsert: boolean;
49
+ enableProjectDelete: boolean;
45
50
  }
46
51
  export interface ServiceContext {
47
52
  readonly client: AdminClient;
@@ -52,6 +57,7 @@ export interface ServiceContext {
52
57
  readonly environments: EnvironmentService;
53
58
  readonly classification: ClassificationService;
54
59
  readonly artifactFeeds: ArtifactFeedService;
60
+ readonly projects: ProjectService;
55
61
  readonly tierFlags: TierFlags;
56
62
  }
57
63
  export interface AdoApiCollectionResponse<T> {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,0CAA0C,CAAC;AACzF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AACjF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAClF,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IAGpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAG/B,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAGlC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,yBAAyB,CAAC,EAAE,OAAO,CAAC;IAGpC,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,sBAAsB,CAAC,EAAE,OAAO,CAAC;IAGjC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAClC,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAGlC,8BAA8B,CAAC,EAAE,OAAO,CAAC;IACzC,8BAA8B,CAAC,EAAE,OAAO,CAAC;IAGzC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,SAAS;IAExB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;IACnC,qBAAqB,EAAE,OAAO,CAAC;IAC/B,uBAAuB,EAAE,OAAO,CAAC;IACjC,8BAA8B,EAAE,OAAO,CAAC;IAGxC,oBAAoB,EAAE,OAAO,CAAC;IAC9B,uBAAuB,EAAE,OAAO,CAAC;IACjC,yBAAyB,EAAE,OAAO,CAAC;IACnC,sBAAsB,EAAE,OAAO,CAAC;IAChC,uBAAuB,EAAE,OAAO,CAAC;IACjC,8BAA8B,EAAE,OAAO,CAAC;CACzC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,UAAU,EAAE,gBAAgB,CAAC;IACtC,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAC1C,QAAQ,CAAC,cAAc,EAAE,qBAAqB,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,mBAAmB,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC;CAC/B;AAGD,MAAM,WAAW,wBAAwB,CAAC,CAAC;IACzC,KAAK,EAAE,CAAC,EAAE,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mcp-consultant-tools/azure-devops-admin",
3
- "version": "28.0.0-beta.7",
3
+ "version": "28.0.0",
4
4
  "description": "MCP server for Azure DevOps admin operations - pipelines, service connections, agent pools, and environments",
5
5
  "type": "module",
6
6
  "main": "./build/index.js",
@@ -40,9 +40,10 @@
40
40
  "node": ">=16.0.0"
41
41
  },
42
42
  "dependencies": {
43
- "@mcp-consultant-tools/core": "28.0.0-beta.7",
43
+ "@mcp-consultant-tools/core": "28.0.0",
44
44
  "@modelcontextprotocol/sdk": "^1.0.4",
45
45
  "axios": "^1.8.3",
46
+ "commander": "^14.0.3",
46
47
  "zod": "^3.24.1"
47
48
  },
48
49
  "devDependencies": {
@@ -50,6 +51,7 @@
50
51
  "typescript": "^5.8.2"
51
52
  },
52
53
  "bin": {
53
- "mcp-ado-admin": "build/index.js"
54
+ "mcp-ado-admin": "build/index.js",
55
+ "mcp-ado-admin-cli": "build/cli.js"
54
56
  }
55
57
  }