@mcp-consultant-tools/azure-devops 27.0.0-beta.1 → 27.0.0-beta.11

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 (40) hide show
  1. package/build/AzureDevOpsService.d.ts +64 -0
  2. package/build/AzureDevOpsService.d.ts.map +1 -1
  3. package/build/AzureDevOpsService.js +424 -2
  4. package/build/AzureDevOpsService.js.map +1 -1
  5. package/build/index.d.ts.map +1 -1
  6. package/build/index.js +991 -13
  7. package/build/index.js.map +1 -1
  8. package/build/sync/file-utils.d.ts +86 -0
  9. package/build/sync/file-utils.d.ts.map +1 -0
  10. package/build/sync/file-utils.js +224 -0
  11. package/build/sync/file-utils.js.map +1 -0
  12. package/build/sync/git-utils.d.ts +31 -0
  13. package/build/sync/git-utils.d.ts.map +1 -0
  14. package/build/sync/git-utils.js +116 -0
  15. package/build/sync/git-utils.js.map +1 -0
  16. package/build/sync/html-converter.d.ts +32 -0
  17. package/build/sync/html-converter.d.ts.map +1 -0
  18. package/build/sync/html-converter.js +91 -0
  19. package/build/sync/html-converter.js.map +1 -0
  20. package/build/sync/html-detection.d.ts +93 -0
  21. package/build/sync/html-detection.d.ts.map +1 -0
  22. package/build/sync/html-detection.js +169 -0
  23. package/build/sync/html-detection.js.map +1 -0
  24. package/build/sync/index.d.ts +12 -0
  25. package/build/sync/index.d.ts.map +1 -0
  26. package/build/sync/index.js +12 -0
  27. package/build/sync/index.js.map +1 -0
  28. package/build/sync/markdown-serializer.d.ts +136 -0
  29. package/build/sync/markdown-serializer.d.ts.map +1 -0
  30. package/build/sync/markdown-serializer.js +646 -0
  31. package/build/sync/markdown-serializer.js.map +1 -0
  32. package/build/sync/task-serializer.d.ts +93 -0
  33. package/build/sync/task-serializer.d.ts.map +1 -0
  34. package/build/sync/task-serializer.js +395 -0
  35. package/build/sync/task-serializer.js.map +1 -0
  36. package/build/tool-examples.d.ts +56 -0
  37. package/build/tool-examples.d.ts.map +1 -0
  38. package/build/tool-examples.js +142 -0
  39. package/build/tool-examples.js.map +1 -0
  40. package/package.json +3 -1
@@ -0,0 +1,142 @@
1
+ /**
2
+ * Tool Use Examples for Azure DevOps MCP Tools
3
+ *
4
+ * Provides inline examples embedded in Zod `.describe()` strings to improve
5
+ * LLM accuracy when calling these tools. Based on Anthropic research showing
6
+ * 72% → 90% accuracy improvement with examples.
7
+ */
8
+ /**
9
+ * Helper function to append examples to a description string.
10
+ * Formats examples as a bulleted list for easy parsing by LLMs.
11
+ */
12
+ export function descWithExamples(description, examples) {
13
+ if (examples.length === 0)
14
+ return description;
15
+ const exampleLines = examples
16
+ .map(ex => ` - ${ex.label}: \`${ex.value}\``)
17
+ .join('\n');
18
+ return `${description}\n\nExamples:\n${exampleLines}`;
19
+ }
20
+ // ========================================
21
+ // WIQL Query Examples
22
+ // ========================================
23
+ export const WIQL_EXAMPLES = [
24
+ {
25
+ label: "Active bugs",
26
+ value: "SELECT [System.Id], [System.Title] FROM WorkItems WHERE [System.WorkItemType] = 'Bug' AND [System.State] = 'Active'"
27
+ },
28
+ {
29
+ label: "My assigned items",
30
+ value: "SELECT [System.Id] FROM WorkItems WHERE [System.AssignedTo] = @Me ORDER BY [System.ChangedDate] DESC"
31
+ },
32
+ {
33
+ label: "Children of parent",
34
+ value: "SELECT [System.Id] FROM WorkItems WHERE [System.Parent] = 12345"
35
+ },
36
+ ];
37
+ // ========================================
38
+ // JSON Patch Operation Examples
39
+ // ========================================
40
+ export const PATCH_OP_EXAMPLES = [
41
+ {
42
+ label: "Update state",
43
+ value: '{ "op": "replace", "path": "/fields/System.State", "value": "Active" }'
44
+ },
45
+ {
46
+ label: "Set description",
47
+ value: '{ "op": "add", "path": "/fields/System.Description", "value": "Content here" }'
48
+ },
49
+ {
50
+ label: "Clear assignee",
51
+ value: '{ "op": "remove", "path": "/fields/System.AssignedTo" }'
52
+ },
53
+ ];
54
+ // ========================================
55
+ // Work Item Field Examples
56
+ // ========================================
57
+ export const WORK_ITEM_FIELD_EXAMPLES = [
58
+ {
59
+ label: "Bug with details",
60
+ value: '{"System.Title": "Login fails on mobile", "System.Description": "Steps to reproduce...", "Microsoft.VSTS.TCM.ReproSteps": "1. Open app..."}'
61
+ },
62
+ {
63
+ label: "User Story",
64
+ value: '{"System.Title": "As a user, I want to...", "Microsoft.VSTS.Common.AcceptanceCriteria": "Given... When... Then..."}'
65
+ },
66
+ {
67
+ label: "Task",
68
+ value: '{"System.Title": "Implement API endpoint", "System.Description": "Details...", "Microsoft.VSTS.Scheduling.OriginalEstimate": 4}'
69
+ },
70
+ ];
71
+ // ========================================
72
+ // Sync Mode Examples
73
+ // ========================================
74
+ export const SYNC_TO_FILE_EXAMPLES = [
75
+ {
76
+ label: "Pull single work item",
77
+ value: 'workItemIds: [1044]'
78
+ },
79
+ {
80
+ label: "Pull multiple work items",
81
+ value: 'workItemIds: [1044, 1045, 1046]'
82
+ },
83
+ {
84
+ label: "Pull all User Stories under Feature",
85
+ value: 'parentId: 12345'
86
+ },
87
+ {
88
+ label: "Pull all Bugs under Feature",
89
+ value: 'parentId: 12345, childType: "Bug"'
90
+ },
91
+ ];
92
+ export const SYNC_FROM_FILE_EXAMPLES = [
93
+ {
94
+ label: "Push specific work items",
95
+ value: 'workItemIds: [1044, 1045]'
96
+ },
97
+ {
98
+ label: "Auto-create new work items",
99
+ value: 'project: "MyProject" (auto-detects new_*.md files)'
100
+ },
101
+ ];
102
+ export const SYNC_TASKS_TO_FILE_EXAMPLES = [
103
+ {
104
+ label: "Pull tasks for single User Story",
105
+ value: 'parentIds: [70824]'
106
+ },
107
+ {
108
+ label: "Pull tasks for multiple User Stories",
109
+ value: 'parentIds: [70824, 70825, 70826]'
110
+ },
111
+ ];
112
+ export const SYNC_TASKS_FROM_FILE_EXAMPLES = [
113
+ {
114
+ label: "Push tasks for single parent",
115
+ value: 'parentIds: [70824]'
116
+ },
117
+ {
118
+ label: "Push tasks for multiple parents",
119
+ value: 'parentIds: [70824, 70825]'
120
+ },
121
+ ];
122
+ // ========================================
123
+ // Pull Request Write Examples
124
+ // ========================================
125
+ export const PR_BRANCH_REF_EXAMPLES = [
126
+ { label: "Feature branch", value: "refs/heads/feature/my-feature" },
127
+ { label: "Main branch", value: "refs/heads/main" },
128
+ { label: "Release branch", value: "refs/heads/release/2.0" },
129
+ ];
130
+ export const PR_MERGE_STRATEGY_EXAMPLES = [
131
+ { label: "Squash (default)", value: "squash" },
132
+ { label: "No fast-forward merge commit", value: "noFastForward" },
133
+ { label: "Rebase", value: "rebase" },
134
+ { label: "Rebase merge", value: "rebaseMerge" },
135
+ ];
136
+ export const PR_VOTE_EXAMPLES = [
137
+ { label: "Approve", value: "approve" },
138
+ { label: "Approve with suggestions", value: "approveWithSuggestions" },
139
+ { label: "Wait for author", value: "waitForAuthor" },
140
+ { label: "Reject", value: "reject" },
141
+ ];
142
+ //# sourceMappingURL=tool-examples.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-examples.js","sourceRoot":"","sources":["../src/tool-examples.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",
3
- "version": "27.0.0-beta.1",
3
+ "version": "27.0.0-beta.11",
4
4
  "description": "MCP server for Azure DevOps integration - wikis, work items, pull requests, and variable group read access",
5
5
  "type": "module",
6
6
  "main": "./build/index.js",
@@ -45,10 +45,12 @@
45
45
  "@modelcontextprotocol/sdk": "^1.0.4",
46
46
  "axios": "^1.8.3",
47
47
  "marked": "^17.0.1",
48
+ "turndown": "^7.2.2",
48
49
  "zod": "^3.24.1"
49
50
  },
50
51
  "devDependencies": {
51
52
  "@types/node": "^22.10.5",
53
+ "@types/turndown": "^5.0.6",
52
54
  "typescript": "^5.8.2"
53
55
  },
54
56
  "bin": {