@azure-devops/mcp 2.5.0 → 2.6.0-nightly.20260418
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.
- package/README.md +0 -12
- package/dist/auth.js +13 -0
- package/dist/index.js +23 -5
- package/dist/logger.js +0 -0
- package/dist/org-tenants.js +0 -0
- package/dist/prompts.js +0 -0
- package/dist/shared/content-safety.js +24 -0
- package/dist/shared/domains.js +7 -2
- package/dist/tools/advanced-security.js +2 -2
- package/dist/tools/core.js +5 -5
- package/dist/tools/mcp-apps.js +22 -0
- package/dist/tools/pipelines.js +33 -26
- package/dist/tools/repositories.js +536 -85
- package/dist/tools/search.js +10 -7
- package/dist/tools/test-plans.js +109 -25
- package/dist/tools/wiki.js +7 -6
- package/dist/tools/work-items.js +330 -90
- package/dist/tools/work.js +2 -2
- package/dist/tools.js +3 -1
- package/dist/useragent.js +0 -0
- package/dist/utils.js +15 -0
- package/dist/version.js +1 -1
- package/package.json +3 -3
package/dist/tools/work.js
CHANGED
|
@@ -99,8 +99,8 @@ function configureWorkTools(server, _, connectionProvider) {
|
|
|
99
99
|
});
|
|
100
100
|
server.tool(WORK_TOOLS.list_iterations, "List all iterations in a specified Azure DevOps project. If a project is not specified, you will be prompted to select one.", {
|
|
101
101
|
project: z.string().optional().describe("The name or ID of the Azure DevOps project. Reuse from prior context if already known. If not provided, a project selection prompt will be shown."),
|
|
102
|
-
depth: z.number().default(2).describe("Depth of children to fetch."),
|
|
103
|
-
excludedIds: z.array(z.number()).optional().describe("An optional array of iteration IDs, and thier children, that should not be returned."),
|
|
102
|
+
depth: z.coerce.number().default(2).describe("Depth of children to fetch."),
|
|
103
|
+
excludedIds: z.array(z.coerce.number().min(1)).optional().describe("An optional array of iteration IDs, and thier children, that should not be returned."),
|
|
104
104
|
}, async ({ project, depth, excludedIds: ids }) => {
|
|
105
105
|
try {
|
|
106
106
|
const connection = await connectionProvider();
|
package/dist/tools.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// Licensed under the MIT License.
|
|
3
3
|
import { Domain } from "./shared/domains.js";
|
|
4
4
|
import { configureAdvSecTools } from "./tools/advanced-security.js";
|
|
5
|
+
import { configureMcpAppsTools } from "./tools/mcp-apps.js";
|
|
5
6
|
import { configurePipelineTools } from "./tools/pipelines.js";
|
|
6
7
|
import { configureCoreTools } from "./tools/core.js";
|
|
7
8
|
import { configureRepoTools } from "./tools/repositories.js";
|
|
@@ -17,12 +18,13 @@ function configureAllTools(server, tokenProvider, connectionProvider, userAgentP
|
|
|
17
18
|
}
|
|
18
19
|
};
|
|
19
20
|
configureIfDomainEnabled(Domain.CORE, () => configureCoreTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
21
|
+
configureIfDomainEnabled(Domain.MCP_APPS, () => configureMcpAppsTools(server));
|
|
20
22
|
configureIfDomainEnabled(Domain.WORK, () => configureWorkTools(server, tokenProvider, connectionProvider));
|
|
21
23
|
configureIfDomainEnabled(Domain.PIPELINES, () => configurePipelineTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
22
24
|
configureIfDomainEnabled(Domain.REPOSITORIES, () => configureRepoTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
23
25
|
configureIfDomainEnabled(Domain.WORK_ITEMS, () => configureWorkItemTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
24
26
|
configureIfDomainEnabled(Domain.WIKI, () => configureWikiTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
25
|
-
configureIfDomainEnabled(Domain.TEST_PLANS, () => configureTestPlanTools(server, tokenProvider, connectionProvider));
|
|
27
|
+
configureIfDomainEnabled(Domain.TEST_PLANS, () => configureTestPlanTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
26
28
|
configureIfDomainEnabled(Domain.SEARCH, () => configureSearchTools(server, tokenProvider, connectionProvider, userAgentProvider));
|
|
27
29
|
configureIfDomainEnabled(Domain.ADVANCED_SECURITY, () => configureAdvSecTools(server, tokenProvider, connectionProvider));
|
|
28
30
|
}
|
package/dist/useragent.js
CHANGED
|
File without changes
|
package/dist/utils.js
CHANGED
|
@@ -67,3 +67,18 @@ export function encodeFormattedValue(value, format) {
|
|
|
67
67
|
const result = value.replace(/</g, "<").replace(/>/g, ">");
|
|
68
68
|
return result;
|
|
69
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* Convert a Node.js ReadableStream to a string.
|
|
72
|
+
* Shared utility for consistent stream handling across tools.
|
|
73
|
+
*/
|
|
74
|
+
export function streamToString(stream) {
|
|
75
|
+
return new Promise((resolve, reject) => {
|
|
76
|
+
let data = "";
|
|
77
|
+
stream.setEncoding("utf8");
|
|
78
|
+
stream.on("data", (chunk) => {
|
|
79
|
+
data += chunk;
|
|
80
|
+
});
|
|
81
|
+
stream.on("error", reject);
|
|
82
|
+
stream.on("end", () => resolve(data));
|
|
83
|
+
});
|
|
84
|
+
}
|
package/dist/version.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export const packageVersion = "2.
|
|
1
|
+
export const packageVersion = "2.6.0-nightly.20260418";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure-devops/mcp",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.6.0-nightly.20260418",
|
|
4
4
|
"mcpName": "microsoft.com/azure-devops",
|
|
5
5
|
"description": "MCP server for interacting with Azure DevOps",
|
|
6
6
|
"license": "MIT",
|
|
@@ -40,7 +40,7 @@
|
|
|
40
40
|
"dependencies": {
|
|
41
41
|
"@azure/identity": "^4.10.0",
|
|
42
42
|
"@azure/msal-node": "^5.0.6",
|
|
43
|
-
"@modelcontextprotocol/sdk": "1.
|
|
43
|
+
"@modelcontextprotocol/sdk": "1.29.0",
|
|
44
44
|
"azure-devops-extension-api": "^4.264.0",
|
|
45
45
|
"azure-devops-extension-sdk": "^4.0.2",
|
|
46
46
|
"azure-devops-node-api": "^15.1.2",
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
"jest": "^30.0.2",
|
|
60
60
|
"jest-extended": "^7.0.0",
|
|
61
61
|
"lint-staged": "^16.2.7",
|
|
62
|
-
"prettier": "3.8.
|
|
62
|
+
"prettier": "3.8.3",
|
|
63
63
|
"shx": "^0.4.0",
|
|
64
64
|
"ts-jest": "^29.4.6",
|
|
65
65
|
"tsconfig-paths": "^4.2.0",
|