@achieveai/azuredevops-mcp 1.3.17 → 1.3.19

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 (119) hide show
  1. package/README.md +76 -0
  2. package/dist/Interfaces/Common.js +37 -1
  3. package/dist/Interfaces/Common.js.map +1 -1
  4. package/dist/Services/AzureDevOpsService.js +234 -32
  5. package/dist/Services/AzureDevOpsService.js.map +1 -1
  6. package/dist/Services/BoardsSprintsService.js +111 -13
  7. package/dist/Services/BoardsSprintsService.js.map +1 -1
  8. package/dist/Services/BuildService.js +157 -24
  9. package/dist/Services/BuildService.js.map +1 -1
  10. package/dist/Services/GitService.js +26 -3
  11. package/dist/Services/GitService.js.map +1 -1
  12. package/dist/Services/ProjectService.js +47 -6
  13. package/dist/Services/ProjectService.js.map +1 -1
  14. package/dist/Services/WorkItemService.js +183 -170
  15. package/dist/Services/WorkItemService.js.map +1 -1
  16. package/dist/Tools/BoardsSprintsTools.js +2 -8
  17. package/dist/Tools/BoardsSprintsTools.js.map +1 -1
  18. package/dist/Tools/BuildTools.js +5 -8
  19. package/dist/Tools/BuildTools.js.map +1 -1
  20. package/dist/Tools/GitTools.js +177 -62
  21. package/dist/Tools/GitTools.js.map +1 -1
  22. package/dist/Tools/WorkItemTools.js +110 -172
  23. package/dist/Tools/WorkItemTools.js.map +1 -1
  24. package/dist/index.js +31 -26
  25. package/dist/index.js.map +1 -1
  26. package/dist/utils/apiUsageGuidance.js +336 -0
  27. package/dist/utils/apiUsageGuidance.js.map +1 -0
  28. package/dist/utils/formatHelpers.js +15 -0
  29. package/dist/utils/formatHelpers.js.map +1 -1
  30. package/package.json +3 -3
  31. package/dist/Services/BuildService.project.test.js +0 -91
  32. package/dist/Services/BuildService.project.test.js.map +0 -1
  33. package/dist/Services/GitService.project.test.js +0 -407
  34. package/dist/Services/GitService.project.test.js.map +0 -1
  35. package/dist/package.json +0 -59
  36. package/dist/src/Interfaces/AIAssisted.js +0 -3
  37. package/dist/src/Interfaces/AIAssisted.js.map +0 -1
  38. package/dist/src/Interfaces/ArtifactManagement.js +0 -3
  39. package/dist/src/Interfaces/ArtifactManagement.js.map +0 -1
  40. package/dist/src/Interfaces/AzureDevOps.js +0 -3
  41. package/dist/src/Interfaces/AzureDevOps.js.map +0 -1
  42. package/dist/src/Interfaces/BoardsAndSprints.js +0 -3
  43. package/dist/src/Interfaces/BoardsAndSprints.js.map +0 -1
  44. package/dist/src/Interfaces/CodeAndRepositories.js +0 -3
  45. package/dist/src/Interfaces/CodeAndRepositories.js.map +0 -1
  46. package/dist/src/Interfaces/Common.js +0 -134
  47. package/dist/src/Interfaces/Common.js.map +0 -1
  48. package/dist/src/Interfaces/CostResourceManagement.js +0 -3
  49. package/dist/src/Interfaces/CostResourceManagement.js.map +0 -1
  50. package/dist/src/Interfaces/DevSecOps.js +0 -3
  51. package/dist/src/Interfaces/DevSecOps.js.map +0 -1
  52. package/dist/src/Interfaces/ExternalIntegrations.js +0 -3
  53. package/dist/src/Interfaces/ExternalIntegrations.js.map +0 -1
  54. package/dist/src/Interfaces/HybridCrossPlatform.js +0 -3
  55. package/dist/src/Interfaces/HybridCrossPlatform.js.map +0 -1
  56. package/dist/src/Interfaces/Pipelines.js +0 -3
  57. package/dist/src/Interfaces/Pipelines.js.map +0 -1
  58. package/dist/src/Interfaces/ProjectManagement.js +0 -3
  59. package/dist/src/Interfaces/ProjectManagement.js.map +0 -1
  60. package/dist/src/Interfaces/TestingCapabilities.js +0 -3
  61. package/dist/src/Interfaces/TestingCapabilities.js.map +0 -1
  62. package/dist/src/Interfaces/Wiki.js +0 -3
  63. package/dist/src/Interfaces/Wiki.js.map +0 -1
  64. package/dist/src/Interfaces/WorkItems.js +0 -3
  65. package/dist/src/Interfaces/WorkItems.js.map +0 -1
  66. package/dist/src/Services/AIAssistedDevelopmentService.js +0 -195
  67. package/dist/src/Services/AIAssistedDevelopmentService.js.map +0 -1
  68. package/dist/src/Services/ArtifactManagementService.js +0 -346
  69. package/dist/src/Services/ArtifactManagementService.js.map +0 -1
  70. package/dist/src/Services/AzureDevOpsService.js +0 -385
  71. package/dist/src/Services/AzureDevOpsService.js.map +0 -1
  72. package/dist/src/Services/BoardsSprintsService.js +0 -339
  73. package/dist/src/Services/BoardsSprintsService.js.map +0 -1
  74. package/dist/src/Services/BuildService.js +0 -405
  75. package/dist/src/Services/BuildService.js.map +0 -1
  76. package/dist/src/Services/DevSecOpsService.js +0 -307
  77. package/dist/src/Services/DevSecOpsService.js.map +0 -1
  78. package/dist/src/Services/EntraAuthHandler.js +0 -337
  79. package/dist/src/Services/EntraAuthHandler.js.map +0 -1
  80. package/dist/src/Services/GitService.js +0 -1595
  81. package/dist/src/Services/GitService.js.map +0 -1
  82. package/dist/src/Services/ProjectService.js +0 -257
  83. package/dist/src/Services/ProjectService.js.map +0 -1
  84. package/dist/src/Services/TestingCapabilitiesService.js +0 -149
  85. package/dist/src/Services/TestingCapabilitiesService.js.map +0 -1
  86. package/dist/src/Services/WikiService.js +0 -90
  87. package/dist/src/Services/WikiService.js.map +0 -1
  88. package/dist/src/Services/WorkItemService.js +0 -885
  89. package/dist/src/Services/WorkItemService.js.map +0 -1
  90. package/dist/src/Tools/AIAssistedDevelopmentTools.js +0 -137
  91. package/dist/src/Tools/AIAssistedDevelopmentTools.js.map +0 -1
  92. package/dist/src/Tools/ArtifactManagementTools.js +0 -140
  93. package/dist/src/Tools/ArtifactManagementTools.js.map +0 -1
  94. package/dist/src/Tools/BoardsSprintsTools.js +0 -338
  95. package/dist/src/Tools/BoardsSprintsTools.js.map +0 -1
  96. package/dist/src/Tools/BuildTools.js +0 -468
  97. package/dist/src/Tools/BuildTools.js.map +0 -1
  98. package/dist/src/Tools/DevSecOpsTools.js +0 -147
  99. package/dist/src/Tools/DevSecOpsTools.js.map +0 -1
  100. package/dist/src/Tools/GitTools.js +0 -1475
  101. package/dist/src/Tools/GitTools.js.map +0 -1
  102. package/dist/src/Tools/ProjectTools.js +0 -360
  103. package/dist/src/Tools/ProjectTools.js.map +0 -1
  104. package/dist/src/Tools/TestingCapabilitiesTools.js +0 -157
  105. package/dist/src/Tools/TestingCapabilitiesTools.js.map +0 -1
  106. package/dist/src/Tools/WikiTools.js +0 -137
  107. package/dist/src/Tools/WikiTools.js.map +0 -1
  108. package/dist/src/Tools/WorkItemTools.js +0 -862
  109. package/dist/src/Tools/WorkItemTools.js.map +0 -1
  110. package/dist/src/config.js +0 -176
  111. package/dist/src/config.js.map +0 -1
  112. package/dist/src/index.js +0 -1716
  113. package/dist/src/index.js.map +0 -1
  114. package/dist/src/utils/formatHelpers.js +0 -257
  115. package/dist/src/utils/formatHelpers.js.map +0 -1
  116. package/dist/src/utils/getClassMethods.js +0 -8
  117. package/dist/src/utils/getClassMethods.js.map +0 -1
  118. package/dist/src/utils/repositoryResolver.js +0 -40
  119. package/dist/src/utils/repositoryResolver.js.map +0 -1
@@ -48,24 +48,75 @@ class WorkItemTools {
48
48
  }
49
49
  return project.id;
50
50
  }
51
+ buildSummaryTable(workItems, includeChanged = false) {
52
+ const headers = ['ID', 'Title', 'Type', 'State', 'Assigned', 'Author', 'Area', 'Team'];
53
+ const rows = workItems.map((workItem) => {
54
+ const row = [
55
+ `#${workItem.id || 'N/A'}`,
56
+ (0, formatHelpers_1.truncateText)(workItem.title || '-', 36),
57
+ `${(0, formatHelpers_1.getWorkItemTypeEmoji)(workItem.workItemType || '')} ${workItem.workItemType || '-'}`,
58
+ `${(0, formatHelpers_1.getStateEmoji)(workItem.state || '')} ${workItem.state || '-'}`,
59
+ (0, formatHelpers_1.truncateText)(workItem.assignedTo?.displayName || 'Unassigned', 18),
60
+ (0, formatHelpers_1.truncateText)(workItem.createdBy?.displayName || 'Unknown', 18),
61
+ (0, formatHelpers_1.truncateText)(workItem.areaPath || '-', 22),
62
+ (0, formatHelpers_1.truncateText)(workItem.teamProject || '-', 16),
63
+ ];
64
+ if (includeChanged) {
65
+ row.push(workItem.changedDate ? (0, formatHelpers_1.formatRelativeDate)(workItem.changedDate) : '-');
66
+ }
67
+ return row;
68
+ });
69
+ if (includeChanged) {
70
+ headers.push('Changed');
71
+ }
72
+ return (0, formatHelpers_1.markdownTable)(headers, rows);
73
+ }
74
+ renderQueryAuthoringGuide(apiUsage) {
75
+ const queryAuthoring = apiUsage?.queryAuthoring;
76
+ if (!queryAuthoring) {
77
+ return '';
78
+ }
79
+ let md = `\n\n**Performance-first WIQL guidance**\n`;
80
+ if (Array.isArray(queryAuthoring.riskFlags) && queryAuthoring.riskFlags.length > 0) {
81
+ md += `\nCurrent query risk flags:\n- ${queryAuthoring.riskFlags.join('\n- ')}\n`;
82
+ }
83
+ if (Array.isArray(queryAuthoring.bestPractices) && queryAuthoring.bestPractices.length > 0) {
84
+ md += `\nPreferred patterns:\n- ${queryAuthoring.bestPractices.slice(0, 4).join('\n- ')}\n`;
85
+ }
86
+ if (Array.isArray(queryAuthoring.recommendedTemplates) && queryAuthoring.recommendedTemplates.length > 0) {
87
+ md += `\nExamples that avoid CONTAINS:\n`;
88
+ queryAuthoring.recommendedTemplates.slice(0, 3).forEach((template) => {
89
+ md += `\n${template.label}: ${template.rationale}\n\n\`\`\`sql\n${template.query}\n\`\`\`\n`;
90
+ });
91
+ }
92
+ return md;
93
+ }
51
94
  /**
52
95
  * List work items based on a WIQL query
53
96
  */
54
97
  async listWorkItems(params) {
55
98
  try {
56
- const response = await this.workItemService.listWorkItems(params.query, params.top);
99
+ const response = await this.workItemService.listWorkItems(params.query, params.top, params.days, params.fields);
57
100
  const items = response.workItems || [];
58
101
  if (items.length === 0) {
59
- return (0, Common_1.formatMcpResponse)(response, `## Work Items\n\nNo work items found for the given WIQL query.\n\n💡 Check your query syntax or broaden the filter criteria.`);
102
+ let md = `## Work Items\n\nNo work items found for the given WIQL query.`;
103
+ if (response.recentDaysApplied) {
104
+ md += `\n\nScoped to the last **${response.recentDaysApplied} day${response.recentDaysApplied === 1 ? '' : 's'}** by default.`;
105
+ }
106
+ md += `\n\nCheck your query syntax, widen the date window, or broaden the filter criteria.`;
107
+ md += this.renderQueryAuthoringGuide(response.apiUsage);
108
+ return (0, Common_1.formatMcpResponse)(response, md);
60
109
  }
61
110
  let md = `## Work Items\n\n**${items.length} item${items.length !== 1 ? 's' : ''}** from WIQL query\n\n`;
62
- const rows = items.map((wi) => {
63
- const id = wi.id || 'N/A';
64
- const url = wi.url || '-';
65
- return [`#${id}`, url !== '-' ? `[Link](${url})` : '-'];
66
- });
67
- md += (0, formatHelpers_1.markdownTable)(['ID', 'URL'], rows);
68
- md += `\n\n💡 Use \`getWorkItemById\` with any ID to see full details.`;
111
+ if (response.recentDaysApplied) {
112
+ md += `Scoped to the last **${response.recentDaysApplied} day${response.recentDaysApplied === 1 ? '' : 's'}** by default.\n\n`;
113
+ }
114
+ md += this.buildSummaryTable(items);
115
+ if (response.effectiveQuery) {
116
+ md += `\n\n**Effective WIQL**\n\n\`\`\`sql\n${response.effectiveQuery}\n\`\`\``;
117
+ }
118
+ md += `\n\nUse \`getWorkItemsBatch\` with selected IDs and fields when you need details.`;
119
+ md += this.renderQueryAuthoringGuide(response.apiUsage);
69
120
  return (0, Common_1.formatMcpResponse)(response, md, false, true);
70
121
  }
71
122
  catch (error) {
@@ -112,10 +163,10 @@ class WorkItemTools {
112
163
  // Helper function to format sprint information (inline)
113
164
  const formatSprintInfo = (iterationPath) => {
114
165
  if (!iterationPath)
115
- return '📅 No sprint';
166
+ return 'No sprint';
116
167
  const parts = iterationPath.split('\\');
117
168
  const sprint = parts[parts.length - 1];
118
- return sprint.toLowerCase().includes('sprint') ? `🏃‍♂️ ${sprint}` : `📅 ${sprint}`;
169
+ return sprint;
119
170
  };
120
171
  // Generate the main work item display with summary at top
121
172
  const emoji = (0, formatHelpers_1.getWorkItemTypeEmoji)(workItem.workItemType);
@@ -124,7 +175,7 @@ class WorkItemTools {
124
175
  let result = `## Work Item #${workItem.id}\n\n`;
125
176
  // One-line summary with key info
126
177
  result += `**${emoji} ${workItem.workItemType}** | ${stateEmoji} ${workItem.state} | ${priorityEmoji} P${workItem.priority || '?'} | `;
127
- result += `👤 ${workItem.assignedTo?.displayName || 'Unassigned'} | `;
178
+ result += `Assigned: ${workItem.assignedTo?.displayName || 'Unassigned'} | `;
128
179
  result += `${formatSprintInfo(workItem.iterationPath)}\n\n`;
129
180
  result += `# ${workItem.title}\n\n`;
130
181
  // Metadata: one-line format instead of table
@@ -137,7 +188,7 @@ class WorkItemTools {
137
188
  const hasEffortData = workItem.originalEstimate || workItem.completedWork || workItem.remainingWork;
138
189
  const hasChildEffort = workItem.childEffortRollup;
139
190
  if (hasEffortData || hasChildEffort) {
140
- result += `### ⏱️ Effort\n\n`;
191
+ result += `### Effort\n\n`;
141
192
  if (hasEffortData) {
142
193
  const original = workItem.originalEstimate || 0;
143
194
  const completed = workItem.completedWork || 0;
@@ -166,7 +217,7 @@ class WorkItemTools {
166
217
  }
167
218
  // Relationships section (concise list instead of detailed breakdown)
168
219
  if (workItem.relations && workItem.relations.length > 0) {
169
- result += `### 🔗 Related Items\n\n`;
220
+ result += `### Related Items\n\n`;
170
221
  // Separate work item links from artifact links
171
222
  const wiRelations = workItem.relations.filter((r) => r.relationshipType !== 'ArtifactLink');
172
223
  const artifactRelations = workItem.relations.filter((r) => r.relationshipType === 'ArtifactLink');
@@ -180,37 +231,36 @@ class WorkItemTools {
180
231
  grouped[relType].push(relation.relatedWorkItemId);
181
232
  });
182
233
  const relationTypes = {
183
- 'System.LinkTypes.Hierarchy-Forward': '⬇️ Child',
184
- 'System.LinkTypes.Hierarchy-Reverse': '⬆️ Parent',
185
- 'System.LinkTypes.Dependency-Forward': '➡️ Successor',
186
- 'System.LinkTypes.Dependency-Reverse': '⬅️ Predecessor',
187
- 'System.LinkTypes.Related': '🔄 Related'
234
+ 'System.LinkTypes.Hierarchy-Forward': 'Child',
235
+ 'System.LinkTypes.Hierarchy-Reverse': 'Parent',
236
+ 'System.LinkTypes.Dependency-Forward': 'Successor',
237
+ 'System.LinkTypes.Dependency-Reverse': 'Predecessor',
238
+ 'System.LinkTypes.Related': 'Related'
188
239
  };
189
240
  Object.entries(grouped).forEach(([relType, ids]) => {
190
241
  const label = relationTypes[relType]?.split(' ')[1] || 'Related';
191
- const emojiPart = relationTypes[relType]?.split(' ')[0] || '🔗';
192
242
  const idList = ids.map(id => `#${id}`).join(', ');
193
- result += `- ${emojiPart} ${idList} (${label})\n`;
243
+ result += `- ${idList} (${label})\n`;
194
244
  });
195
245
  }
196
246
  // Show artifact links
197
247
  if (artifactRelations.length > 0) {
198
248
  const artifactEmojis = {
199
- 'Pull Request': '🔀',
200
- 'Build': '🏗️',
201
- 'Branch': '🌿',
202
- 'Commit': '📝',
249
+ 'Pull Request': 'PR',
250
+ 'Build': 'Build',
251
+ 'Branch': 'Branch',
252
+ 'Commit': 'Commit',
203
253
  };
204
254
  artifactRelations.forEach((relation) => {
205
255
  const displayName = relation.artifactDisplayName || relation.artifactType || 'Artifact';
206
- const emoji = artifactEmojis[relation.artifactType] || '🔗';
207
- result += `- ${emoji} ${displayName} #${relation.artifactId} (${relation.artifactType})\n`;
256
+ const prefix = artifactEmojis[relation.artifactType] || 'Artifact';
257
+ result += `- ${prefix} ${displayName} #${relation.artifactId} (${relation.artifactType})\n`;
208
258
  });
209
259
  }
210
260
  result += `\n---\n\n`;
211
261
  }
212
262
  // Description section
213
- result += `## 📝 Description\n\n`;
263
+ result += `## Description\n\n`;
214
264
  result += `${formatDescription(workItem.description)}\n\n`;
215
265
  // Prepare structured content
216
266
  const structuredData = {
@@ -255,111 +305,6 @@ class WorkItemTools {
255
305
  };
256
306
  return (0, Common_1.formatMcpResponse)(structuredData, result, false, true);
257
307
  }
258
- /**
259
- * Search work items
260
- */
261
- async searchWorkItems(params) {
262
- try {
263
- const results = await this.workItemService.searchWorkItems(params);
264
- return this.formatSearchResultsResponse(results);
265
- }
266
- catch (error) {
267
- console.error('Error in searchWorkItems tool:', error);
268
- return (0, Common_1.formatErrorResponse)(error);
269
- }
270
- }
271
- /**
272
- * Format search results response with optimized tabular view
273
- */
274
- formatSearchResultsResponse(results) {
275
- if (!results || !results.workItems || results.workItems.length === 0) {
276
- return {
277
- content: [
278
- {
279
- type: "text",
280
- text: `## 🔍 Search Results\n\nNo work items found matching "${results?.searchQuery || 'your search'}".\n\nTry:\n- Using different keywords\n- Searching for partial words\n- Looking for work item types (Bug, Task, Feature, etc.)`
281
- }
282
- ]
283
- };
284
- }
285
- // Calculate summary statistics upfront
286
- const typeSummary = results.workItems.reduce((acc, item) => {
287
- acc[item.workItemType] = (acc[item.workItemType] || 0) + 1;
288
- return acc;
289
- }, {});
290
- const stateSummary = results.workItems.reduce((acc, item) => {
291
- acc[item.state] = (acc[item.state] || 0) + 1;
292
- return acc;
293
- }, {});
294
- const totalEffort = {
295
- original: results.workItems.reduce((sum, i) => sum + (i.originalEstimate || 0), 0),
296
- completed: results.workItems.reduce((sum, i) => sum + (i.completedWork || 0), 0)
297
- };
298
- // Compact type/status lists
299
- const typeList = Object.entries(typeSummary)
300
- .map(([type, count]) => `${count} ${type.toLowerCase()}${count === 1 ? '' : 's'}`)
301
- .join(', ');
302
- const statusList = Object.entries(stateSummary)
303
- .map(([state, count]) => `${count} ${state.toLowerCase()}`)
304
- .join(', ');
305
- // START WITH SUMMARY AT TOP
306
- let result = `## Search Results: "${results.searchQuery}"\n\n`;
307
- result += `**${results.totalResults} items** | ${typeList} | ${statusList}`;
308
- if (totalEffort.completed > 0) {
309
- result += ` | **${(0, formatHelpers_1.formatEffort)(totalEffort.completed)}/${(0, formatHelpers_1.formatEffort)(totalEffort.original)}** completed`;
310
- }
311
- result += `\n\n---\n\n`;
312
- // Simplified 5-column table (was 8 columns)
313
- result += `| ID | Title | Type | Status | Assigned |\n`;
314
- result += `|----|-------|------|--------|----------|\n`;
315
- results.workItems.forEach((workItem) => {
316
- const typeEmoji = (0, formatHelpers_1.getWorkItemTypeEmoji)(workItem.workItemType);
317
- const stateEmoji = (0, formatHelpers_1.getStateEmoji)(workItem.state);
318
- const assignedTo = workItem.assignedTo?.displayName?.split(' ')[0] || 'Unassigned';
319
- result += `| **#${workItem.id}** | ${(0, formatHelpers_1.truncateText)(workItem.title)} | ${typeEmoji} ${workItem.workItemType} | ${stateEmoji} ${workItem.state} | ${assignedTo} |\n`;
320
- });
321
- result += `\n---\n\n`;
322
- // High priority items (one line)
323
- const highPriorityItems = results.workItems.filter((item) => item.priority && item.priority <= 2);
324
- if (highPriorityItems.length > 0) {
325
- const highPriorityIds = highPriorityItems.map((i) => `#${i.id}`).join(', ');
326
- result += `**High Priority:** ${highPriorityIds} (${highPriorityItems.length} items)\n`;
327
- }
328
- // Recently updated (one line, top 3)
329
- const recentItems = results.workItems
330
- .sort((a, b) => new Date(b.changedDate).getTime() - new Date(a.changedDate).getTime())
331
- .slice(0, 3);
332
- const recentList = recentItems.map((i) => `#${i.id} (${(0, formatHelpers_1.formatRelativeDate)(i.changedDate)})`).join(', ');
333
- result += `**Recently Updated:** ${recentList}\n\n`;
334
- result += `---\n`;
335
- result += `💡 **Tip:** Use \`getWorkItemById\` with any ID above to see full details, effort tracking, and relationships.\n`;
336
- // Prepare structured content
337
- const structuredData = {
338
- searchQuery: results.searchQuery,
339
- totalResults: results.totalResults,
340
- returnedResults: results.returnedResults,
341
- workItems: results.workItems.map((item) => ({
342
- id: item.id,
343
- type: item.workItemType,
344
- title: item.title,
345
- state: item.state,
346
- priority: item.priority,
347
- assignedTo: item.assignedTo?.displayName,
348
- effort: {
349
- original: item.originalEstimate,
350
- completed: item.completedWork,
351
- remaining: item.remainingWork
352
- },
353
- changedDate: item.changedDate
354
- })),
355
- summary: {
356
- byType: typeSummary,
357
- byStatus: stateSummary,
358
- effort: totalEffort
359
- }
360
- };
361
- return (0, Common_1.formatMcpResponse)(structuredData, result, false, true);
362
- }
363
308
  /**
364
309
  * Get recently updated work items
365
310
  */
@@ -368,16 +313,14 @@ class WorkItemTools {
368
313
  const results = await this.workItemService.getRecentWorkItems(params);
369
314
  const items = results.workItems || [];
370
315
  if (items.length === 0) {
371
- return (0, Common_1.formatMcpResponse)(results, `## Recently Updated Work Items\n\nNo recently updated work items found.\n\n💡 Try increasing the time range or check project permissions.`);
316
+ return (0, Common_1.formatMcpResponse)(results, `## Recently Updated Work Items\n\nNo recently updated work items found.\n\nTry increasing the time range or check project permissions.`);
372
317
  }
373
318
  let md = `## Recently Updated Work Items\n\n**${items.length} item${items.length !== 1 ? 's' : ''}**\n\n`;
374
- const rows = items.map((wi) => {
375
- const id = wi.id || 'N/A';
376
- const url = wi.url || '-';
377
- return [`#${id}`, url !== '-' ? `[Link](${url})` : '-'];
378
- });
379
- md += (0, formatHelpers_1.markdownTable)(['ID', 'URL'], rows);
380
- md += `\n\n💡 Use \`getWorkItemById\` with any ID to see full details.`;
319
+ if (results.recentDaysApplied) {
320
+ md += `Scoped to the last **${results.recentDaysApplied} day${results.recentDaysApplied === 1 ? '' : 's'}**.\n\n`;
321
+ }
322
+ md += this.buildSummaryTable(items, true);
323
+ md += `\n\nUse \`getWorkItemsBatch\` to fetch only the fields you need for selected IDs.`;
381
324
  return (0, Common_1.formatMcpResponse)(results, md, false, true);
382
325
  }
383
326
  catch (error) {
@@ -393,16 +336,14 @@ class WorkItemTools {
393
336
  const results = await this.workItemService.getMyWorkItems(params);
394
337
  const items = results.workItems || [];
395
338
  if (items.length === 0) {
396
- return (0, Common_1.formatMcpResponse)(results, `## My Work Items\n\nNo work items assigned to you.\n\n💡 Use \`searchWorkItems\` or \`listWorkItems\` to find items across the project.`);
339
+ return (0, Common_1.formatMcpResponse)(results, `## My Work Items\n\nNo work items assigned to you.\n\nUse \`listWorkItems\` with a WIQL query to find items across the project.`);
397
340
  }
398
341
  let md = `## My Work Items\n\n**${items.length} item${items.length !== 1 ? 's' : ''}** assigned to you\n\n`;
399
- const rows = items.map((wi) => {
400
- const id = wi.id || 'N/A';
401
- const url = wi.url || '-';
402
- return [`#${id}`, url !== '-' ? `[Link](${url})` : '-'];
403
- });
404
- md += (0, formatHelpers_1.markdownTable)(['ID', 'URL'], rows);
405
- md += `\n\n💡 Use \`getWorkItemById\` with any ID to see full details.`;
342
+ if (results.recentDaysApplied) {
343
+ md += `Scoped to the last **${results.recentDaysApplied} day${results.recentDaysApplied === 1 ? '' : 's'}** by default.\n\n`;
344
+ }
345
+ md += this.buildSummaryTable(items, true);
346
+ md += `\n\nUse \`getWorkItemsBatch\` to fetch details for selected IDs.`;
406
347
  return (0, Common_1.formatMcpResponse)(results, md, false, true);
407
348
  }
408
349
  catch (error) {
@@ -417,12 +358,12 @@ class WorkItemTools {
417
358
  try {
418
359
  const workItem = await this.workItemService.createWorkItem(params);
419
360
  const typeEmoji = (0, formatHelpers_1.getWorkItemTypeEmoji)(params.workItemType);
420
- let md = `## Work Item Created\n\n`;
361
+ let md = `## Work Item Created\n\n`;
421
362
  md += `**#${workItem.id}** ${typeEmoji} ${params.workItemType}`;
422
363
  if (workItem.fields?.['System.State'])
423
- md += ` | 🆕 ${workItem.fields['System.State']}`;
364
+ md += ` | ${workItem.fields['System.State']}`;
424
365
  if (params.assignedTo)
425
- md += ` | 👤 ${params.assignedTo}`;
366
+ md += ` | ${params.assignedTo}`;
426
367
  md += `\n`;
427
368
  md += `**Title:** ${params.title}\n`;
428
369
  if (params.iterationPath)
@@ -442,7 +383,7 @@ class WorkItemTools {
442
383
  async updateWorkItem(params) {
443
384
  try {
444
385
  const workItem = await this.workItemService.updateWorkItem(params);
445
- let md = `## Work Item Updated\n\n**#${params.id}** updated\n\n`;
386
+ let md = `## Work Item Updated\n\n**#${params.id}** updated\n\n`;
446
387
  const fields = params.fields || {};
447
388
  const changedKeys = Object.keys(fields);
448
389
  if (changedKeys.length > 0) {
@@ -515,7 +456,7 @@ class WorkItemTools {
515
456
  try {
516
457
  const comment = await this.workItemService.addWorkItemComment(params);
517
458
  const formatUsed = params.format || 'markdown';
518
- const md = `## Comment Added\n\n**Work Item:** #${params.id} | **Format:** ${formatUsed}\n\n> ${(0, formatHelpers_1.truncateText)(params.text, 100)}`;
459
+ const md = `## Comment Added\n\n**Work Item:** #${params.id} | **Format:** ${formatUsed}\n\n> ${(0, formatHelpers_1.truncateText)(params.text, 100)}`;
519
460
  return (0, Common_1.formatMcpResponse)(comment, md, false, true);
520
461
  }
521
462
  catch (error) {
@@ -539,7 +480,7 @@ class WorkItemTools {
539
480
  text: params.text,
540
481
  format: params.format,
541
482
  });
542
- const md = `## Comment Updated\n\n**Work Item:** #${params.id} | **Comment:** #${params.commentId} | **Format:** ${formatUsed}\n\n> ${(0, formatHelpers_1.truncateText)(params.text, 100)}`;
483
+ const md = `## Comment Updated\n\n**Work Item:** #${params.id} | **Comment:** #${params.commentId} | **Format:** ${formatUsed}\n\n> ${(0, formatHelpers_1.truncateText)(params.text, 100)}`;
543
484
  return (0, Common_1.formatMcpResponse)(comment, md, false, true);
544
485
  }
545
486
  else {
@@ -548,7 +489,7 @@ class WorkItemTools {
548
489
  text: params.text,
549
490
  format: params.format,
550
491
  });
551
- const md = `## Comment Added\n\n**Work Item:** #${params.id} | **Format:** ${formatUsed}\n\n> ${(0, formatHelpers_1.truncateText)(params.text, 100)}`;
492
+ const md = `## Comment Added\n\n**Work Item:** #${params.id} | **Format:** ${formatUsed}\n\n> ${(0, formatHelpers_1.truncateText)(params.text, 100)}`;
552
493
  return (0, Common_1.formatMcpResponse)(comment, md, false, true);
553
494
  }
554
495
  }
@@ -564,7 +505,7 @@ class WorkItemTools {
564
505
  try {
565
506
  const workItem = await this.workItemService.updateWorkItemState(params);
566
507
  const stateEmoji = (0, formatHelpers_1.getStateEmoji)(params.state);
567
- let md = `## State Updated\n\n**#${params.id}** ${stateEmoji} ${params.state}`;
508
+ let md = `## State Updated\n\n**#${params.id}** -> ${stateEmoji} ${params.state}`;
568
509
  if (params.comment)
569
510
  md += `\n\n> ${(0, formatHelpers_1.truncateText)(params.comment, 100)}`;
570
511
  return (0, Common_1.formatMcpResponse)(workItem, md, false, true);
@@ -580,7 +521,7 @@ class WorkItemTools {
580
521
  async assignWorkItem(params) {
581
522
  try {
582
523
  const workItem = await this.workItemService.assignWorkItem(params);
583
- const md = `## Work Item Assigned\n\n**#${params.id}** 👤 ${params.assignedTo}`;
524
+ const md = `## Work Item Assigned\n\n**#${params.id}** -> ${params.assignedTo}`;
584
525
  return (0, Common_1.formatMcpResponse)(workItem, md, false, true);
585
526
  }
586
527
  catch (error) {
@@ -654,7 +595,7 @@ class WorkItemTools {
654
595
  const targetLabel = parsed.type === 'workitem'
655
596
  ? `**WI#${parsed.id}**`
656
597
  : `**${parsed.type.toUpperCase()}#${parsed.id}**`;
657
- const md = `## Link Created\n\n**WI#${params.sourceId}** ${targetLabel} (${parsed.displayName})`;
598
+ const md = `## Link Created\n\n**WI#${params.sourceId}** <-> ${targetLabel} (${parsed.displayName})`;
658
599
  const structuredData = {
659
600
  sourceId: params.sourceId,
660
601
  targetId: params.targetId,
@@ -678,7 +619,7 @@ class WorkItemTools {
678
619
  const created = results.created || [];
679
620
  const updated = results.updated || [];
680
621
  const count = results.count || (created.length + updated.length);
681
- let md = `## Bulk Operation Complete\n\n**${count} work items processed**`;
622
+ let md = `## Bulk Operation Complete\n\n**${count} work items processed**`;
682
623
  if (created.length > 0)
683
624
  md += ` | ${created.length} created`;
684
625
  if (updated.length > 0)
@@ -699,7 +640,7 @@ class WorkItemTools {
699
640
  return (0, Common_1.formatErrorResponse)(error);
700
641
  }
701
642
  }
702
- // ── New Work Item Enhancement Tools ────────────────────────────
643
+ // New Work Item Enhancement Tools
703
644
  /**
704
645
  * Get multiple work items by IDs in a single call
705
646
  */
@@ -767,17 +708,14 @@ class WorkItemTools {
767
708
  }
768
709
  let md = `## Query Results\n\n`;
769
710
  md += `**${workItems.length} work item${workItems.length !== 1 ? 's' : ''}** returned\n\n`;
770
- const rows = workItems.map((wi) => {
771
- const fields = wi.fields || {};
772
- return [
773
- `#${wi.id}`,
774
- (0, formatHelpers_1.getWorkItemTypeEmoji)(fields['System.WorkItemType'] || '') + ' ' + (fields['System.WorkItemType'] || '-'),
775
- (0, formatHelpers_1.truncateText)(fields['System.Title'] || '-', 50),
776
- (0, formatHelpers_1.getStateEmoji)(fields['System.State'] || '') + ' ' + (fields['System.State'] || '-'),
777
- fields['System.AssignedTo']?.displayName || '-',
778
- ];
779
- });
780
- md += (0, formatHelpers_1.markdownTable)(['ID', 'Type', 'Title', 'State', 'Assigned To'], rows);
711
+ if (result.queryType) {
712
+ md += `**Query Type:** ${result.queryType}\n\n`;
713
+ }
714
+ if (result.columns?.length) {
715
+ md += `**Saved Query Columns:** ${result.columns.join(', ')}\n\n`;
716
+ }
717
+ md += this.buildSummaryTable(workItems);
718
+ md += `\n\nUse \`getWorkItemsBatch\` with the IDs above and an explicit field list to hydrate only what you need.`;
781
719
  return (0, Common_1.formatMcpResponse)(result, md, false, true);
782
720
  }
783
721
  catch (error) {
@@ -1 +1 @@
1
- {"version":3,"file":"WorkItemTools.js","sourceRoot":"","sources":["../../src/Tools/WorkItemTools.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"WorkItemTools.js","sourceRoot":"","sources":["../../src/Tools/WorkItemTools.ts"],"names":[],"mappings":"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"}