@veracity/codeguardian-mcp 0.1.1 → 0.1.3
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 +26 -4
- package/dist/index.js +1 -1
- package/dist/tools/ado.d.ts.map +1 -1
- package/dist/tools/ado.js +158 -3
- package/dist/tools/ado.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,13 +8,35 @@ This MCP server provides the following tools:
|
|
|
8
8
|
|
|
9
9
|
### Azure DevOps Tools
|
|
10
10
|
|
|
11
|
-
1. **
|
|
11
|
+
1. **repo_get_repo_by_name_or_id** - Get repository information by project and repository name or ID
|
|
12
12
|
- Parameters:
|
|
13
13
|
- `organization` (required): Azure DevOps organization name (e.g., "myorg")
|
|
14
|
-
- `project` (required):
|
|
15
|
-
- `
|
|
14
|
+
- `project` (required): Project name or ID where the repository is located
|
|
15
|
+
- `repositoryNameOrId` (required): Repository name or ID
|
|
16
|
+
- Returns: Repository information including ID, name, URL, and project details
|
|
17
|
+
|
|
18
|
+
2. **repo_get_pullrequest_changes_by_id** - Retrieve all file changes and diffs from a pull request
|
|
19
|
+
- Parameters:
|
|
20
|
+
- `organization` (required): Azure DevOps organization name (e.g., "myorg")
|
|
21
|
+
- `project` (required): Azure DevOps project name or ID
|
|
22
|
+
- `repositoryId` (required): Repository ID where the pull request is located
|
|
23
|
+
- `pullRequestId` (required): Pull request ID number
|
|
24
|
+
- Returns: Detailed pull request information including file changes, diffs, and source content for all files modified in the PR
|
|
25
|
+
|
|
26
|
+
3. **repo_create_pull_request_thread** - Create a new comment thread on a pull request
|
|
27
|
+
- Parameters:
|
|
28
|
+
- `organization` (required): Azure DevOps organization name (e.g., "myorg")
|
|
29
|
+
- `project` (required): Project ID or project name
|
|
30
|
+
- `repositoryId` (required): Repository ID where the pull request is located
|
|
16
31
|
- `pullRequestId` (required): Pull request ID number
|
|
17
|
-
|
|
32
|
+
- `content` (required): Comment content to add
|
|
33
|
+
- `filePath` (optional): File path where the comment should be added
|
|
34
|
+
- `status` (optional): Comment thread status - "Unknown", "Active", "Fixed", "WontFix", "Closed", "ByDesign", or "Pending" (defaults to "Active")
|
|
35
|
+
- `rightFileStartLine` (optional): Starting line number for the comment (starts at 1)
|
|
36
|
+
- `rightFileStartOffset` (optional): Character offset on the starting line (starts at 1)
|
|
37
|
+
- `rightFileEndLine` (optional): Ending line number for the comment (requires rightFileStartLine)
|
|
38
|
+
- `rightFileEndOffset` (optional): Character offset on the ending line
|
|
39
|
+
- Returns: Created thread information including thread ID, comments, and status
|
|
18
40
|
|
|
19
41
|
## Prerequisites
|
|
20
42
|
|
package/dist/index.js
CHANGED
|
@@ -3,7 +3,7 @@ import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
|
3
3
|
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
4
4
|
import { createAuthenticator } from "./auth.js";
|
|
5
5
|
import { configureAllTools } from "./tools.js";
|
|
6
|
-
const packageVersion = "0.1.
|
|
6
|
+
const packageVersion = "0.1.2";
|
|
7
7
|
try {
|
|
8
8
|
const server = new McpServer({
|
|
9
9
|
name: "CodeGuardian MCP Server",
|
package/dist/tools/ado.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ado.d.ts","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ado.d.ts","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"AA0XA,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,QAqPlF"}
|
package/dist/tools/ado.js
CHANGED
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import * as azdev from 'azure-devops-node-api';
|
|
2
2
|
import * as diff from 'diff';
|
|
3
3
|
import { z } from "zod";
|
|
4
|
-
import { GitObjectType } from 'azure-devops-node-api/interfaces/GitInterfaces.js';
|
|
5
4
|
// Helper function to create Azure DevOps connection
|
|
6
5
|
async function getAzureDevOpsConnection(organization, tokenProvider) {
|
|
7
6
|
const accessToken = await tokenProvider();
|
|
@@ -139,7 +138,7 @@ async function processCommitChanges(gitApi, repositoryId, project, commit, allCh
|
|
|
139
138
|
}
|
|
140
139
|
function processFileChange(change, allChangedFiles) {
|
|
141
140
|
const isValidFile = change.item?.path &&
|
|
142
|
-
change.item?.gitObjectType ===
|
|
141
|
+
change.item?.gitObjectType === "blob" &&
|
|
143
142
|
change.changeType !== 128 &&
|
|
144
143
|
isValidFilePath(change.item.path);
|
|
145
144
|
if (!isValidFile) {
|
|
@@ -196,7 +195,7 @@ async function getPullRequestFileChanges(gitApi, project, repositoryId, targetBr
|
|
|
196
195
|
};
|
|
197
196
|
}
|
|
198
197
|
console.log(`Found ${allChangedFiles.size} unique files changed across all commits`);
|
|
199
|
-
const filePaths = Array.from(allChangedFiles).slice(0,
|
|
198
|
+
const filePaths = Array.from(allChangedFiles).slice(0, 1000);
|
|
200
199
|
const filesWithContent = await Promise.all(filePaths.map(filePath => processFileForDiff(gitApi, project, repositoryId, filePath, targetBranchCommit, sourceBranchCommit)));
|
|
201
200
|
return {
|
|
202
201
|
filesChanged: filePaths.length,
|
|
@@ -209,8 +208,164 @@ async function getPullRequestFileChanges(gitApi, project, repositoryId, targetBr
|
|
|
209
208
|
throw new Error(`Failed to get pull request file changes: ${error instanceof Error ? error.message : String(error)}`);
|
|
210
209
|
}
|
|
211
210
|
}
|
|
211
|
+
// Helper function to validate thread position parameters
|
|
212
|
+
function validateThreadPosition(rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset) {
|
|
213
|
+
if (rightFileStartLine !== undefined && rightFileStartLine < 1) {
|
|
214
|
+
throw new Error("rightFileStartLine must be greater than or equal to 1.");
|
|
215
|
+
}
|
|
216
|
+
if (rightFileStartOffset !== undefined && rightFileStartOffset < 1) {
|
|
217
|
+
throw new Error("rightFileStartOffset must be greater than or equal to 1.");
|
|
218
|
+
}
|
|
219
|
+
if (rightFileEndLine !== undefined) {
|
|
220
|
+
if (rightFileStartLine === undefined) {
|
|
221
|
+
throw new Error("rightFileEndLine must only be specified if rightFileStartLine is also specified.");
|
|
222
|
+
}
|
|
223
|
+
if (rightFileEndLine < 1) {
|
|
224
|
+
throw new Error("rightFileEndLine must be greater than or equal to 1.");
|
|
225
|
+
}
|
|
226
|
+
}
|
|
227
|
+
if (rightFileEndOffset !== undefined && rightFileEndOffset < 1) {
|
|
228
|
+
throw new Error("rightFileEndOffset must be greater than or equal to 1.");
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
// Helper function to build thread context
|
|
232
|
+
function buildThreadContext(filePath, rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset) {
|
|
233
|
+
const normalizedFilePath = filePath && !filePath.startsWith("/") ? `/${filePath}` : filePath;
|
|
234
|
+
const threadContext = { filePath: normalizedFilePath };
|
|
235
|
+
if (rightFileStartLine !== undefined) {
|
|
236
|
+
threadContext.rightFileStart = { line: rightFileStartLine };
|
|
237
|
+
if (rightFileStartOffset !== undefined) {
|
|
238
|
+
threadContext.rightFileStart.offset = rightFileStartOffset;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
if (rightFileEndLine !== undefined) {
|
|
242
|
+
threadContext.rightFileEnd = { line: rightFileEndLine };
|
|
243
|
+
if (rightFileEndOffset !== undefined) {
|
|
244
|
+
threadContext.rightFileEnd.offset = rightFileEndOffset;
|
|
245
|
+
}
|
|
246
|
+
}
|
|
247
|
+
return threadContext;
|
|
248
|
+
}
|
|
249
|
+
// Helper function to trim pull request thread
|
|
250
|
+
function trimPullRequestThread(thread) {
|
|
251
|
+
return {
|
|
252
|
+
id: thread.id,
|
|
253
|
+
publishedDate: thread.publishedDate,
|
|
254
|
+
lastUpdatedDate: thread.lastUpdatedDate,
|
|
255
|
+
status: thread.status,
|
|
256
|
+
comments: thread.comments?.filter((comment) => !comment.isDeleted)?.map((comment) => ({
|
|
257
|
+
id: comment.id,
|
|
258
|
+
content: comment.content,
|
|
259
|
+
publishedDate: comment.publishedDate,
|
|
260
|
+
lastUpdatedDate: comment.lastUpdatedDate,
|
|
261
|
+
author: {
|
|
262
|
+
displayName: comment.author?.displayName,
|
|
263
|
+
uniqueName: comment.author?.uniqueName,
|
|
264
|
+
},
|
|
265
|
+
})),
|
|
266
|
+
};
|
|
267
|
+
}
|
|
268
|
+
// Helper function to get status value
|
|
269
|
+
function getThreadStatusValue(status) {
|
|
270
|
+
const statusMap = {
|
|
271
|
+
"Unknown": 0,
|
|
272
|
+
"Active": 1,
|
|
273
|
+
"Fixed": 2,
|
|
274
|
+
"WontFix": 3,
|
|
275
|
+
"Closed": 4,
|
|
276
|
+
"ByDesign": 5,
|
|
277
|
+
"Pending": 6
|
|
278
|
+
};
|
|
279
|
+
return statusMap[status] || 1; // Default to Active
|
|
280
|
+
}
|
|
212
281
|
// MCP server tool configuration
|
|
213
282
|
export function configureAdoTools(server, tokenProvider) {
|
|
283
|
+
server.tool("repo_get_repo_by_name_or_id", "Get the repository by project and repository name or ID.", {
|
|
284
|
+
organization: z.string().describe("Azure DevOps organization name (e.g., 'myorg')"),
|
|
285
|
+
project: z.string().describe("Project name or ID where the repository is located."),
|
|
286
|
+
repositoryNameOrId: z.string().describe("Repository name or ID."),
|
|
287
|
+
}, async (args) => {
|
|
288
|
+
try {
|
|
289
|
+
const { organization, project, repositoryNameOrId } = args;
|
|
290
|
+
// Validate required parameters
|
|
291
|
+
if (!organization || !project || !repositoryNameOrId) {
|
|
292
|
+
throw new Error('Missing required parameters. Please provide organization, project, and repositoryNameOrId.');
|
|
293
|
+
}
|
|
294
|
+
// Get Azure DevOps connection
|
|
295
|
+
const connection = await getAzureDevOpsConnection(organization, tokenProvider);
|
|
296
|
+
const gitApi = await connection.getGitApi();
|
|
297
|
+
const repositories = await gitApi.getRepositories(project);
|
|
298
|
+
const repository = repositories?.find((repo) => repo.name === repositoryNameOrId || repo.id === repositoryNameOrId);
|
|
299
|
+
if (!repository) {
|
|
300
|
+
throw new Error(`Repository ${repositoryNameOrId} not found in project ${project}`);
|
|
301
|
+
}
|
|
302
|
+
return {
|
|
303
|
+
content: [{ type: "text", text: JSON.stringify(repository, null, 2) }],
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
catch (error) {
|
|
307
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
308
|
+
return {
|
|
309
|
+
content: [{
|
|
310
|
+
type: "text",
|
|
311
|
+
text: `Error getting repository: ${errorMessage}`
|
|
312
|
+
}],
|
|
313
|
+
isError: true,
|
|
314
|
+
};
|
|
315
|
+
}
|
|
316
|
+
});
|
|
317
|
+
server.tool("repo_create_pull_request_thread", "Creates a new comment thread on a pull request.", {
|
|
318
|
+
organization: z.string().describe("Azure DevOps organization name (e.g., 'myorg')"),
|
|
319
|
+
project: z.string().describe("Project ID or project name"),
|
|
320
|
+
repositoryId: z.string().describe("The ID of the repository where the pull request is located."),
|
|
321
|
+
pullRequestId: z.number().describe("The ID of the pull request where the comment thread exists."),
|
|
322
|
+
content: z.string().describe("The content of the comment to be added."),
|
|
323
|
+
filePath: z.string().optional().describe("The path of the file where the comment thread will be created. (optional)"),
|
|
324
|
+
status: z.enum(["Unknown", "Active", "Fixed", "WontFix", "Closed", "ByDesign", "Pending"])
|
|
325
|
+
.optional()
|
|
326
|
+
.default("Active")
|
|
327
|
+
.describe("The status of the comment thread. Defaults to 'Active'."),
|
|
328
|
+
rightFileStartLine: z.number().optional().describe("Position of first character of the thread's span in right file. The line number of a thread's position. Starts at 1. (optional)"),
|
|
329
|
+
rightFileStartOffset: z.number().optional().describe("Position of first character of the thread's span in right file. The character offset of a thread's position inside of a line. Starts at 1. Must only be set if rightFileStartLine is also specified. (optional)"),
|
|
330
|
+
rightFileEndLine: z.number().optional().describe("Position of last character of the thread's span in right file. The line number of a thread's position. Starts at 1. Must only be set if rightFileStartLine is also specified. (optional)"),
|
|
331
|
+
rightFileEndOffset: z.number().optional().describe("Position of last character of the thread's span in right file. The character offset of a thread's position inside of a line. Must only be set if rightFileEndLine is also specified. (optional)"),
|
|
332
|
+
}, async (args) => {
|
|
333
|
+
try {
|
|
334
|
+
const { organization, project, repositoryId, pullRequestId, content, filePath, status = "Active", rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset } = args;
|
|
335
|
+
// Validate required parameters
|
|
336
|
+
if (!organization || !project || !repositoryId || !pullRequestId || !content) {
|
|
337
|
+
throw new Error('Missing required parameters. Please provide organization, project, repositoryId, pullRequestId, and content.');
|
|
338
|
+
}
|
|
339
|
+
// Validate thread position parameters
|
|
340
|
+
validateThreadPosition(rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset);
|
|
341
|
+
// Get Azure DevOps connection
|
|
342
|
+
const connection = await getAzureDevOpsConnection(organization, tokenProvider);
|
|
343
|
+
const gitApi = await connection.getGitApi();
|
|
344
|
+
// Build thread context
|
|
345
|
+
const threadContext = buildThreadContext(filePath, rightFileStartLine, rightFileStartOffset, rightFileEndLine, rightFileEndOffset);
|
|
346
|
+
// Create thread
|
|
347
|
+
const thread = await gitApi.createThread({
|
|
348
|
+
comments: [{ content: content }],
|
|
349
|
+
threadContext: threadContext,
|
|
350
|
+
status: getThreadStatusValue(status)
|
|
351
|
+
}, repositoryId, pullRequestId, project);
|
|
352
|
+
// Return trimmed thread
|
|
353
|
+
const trimmedThread = trimPullRequestThread(thread);
|
|
354
|
+
return {
|
|
355
|
+
content: [{ type: "text", text: JSON.stringify(trimmedThread, null, 2) }],
|
|
356
|
+
};
|
|
357
|
+
}
|
|
358
|
+
catch (error) {
|
|
359
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
360
|
+
return {
|
|
361
|
+
content: [{
|
|
362
|
+
type: "text",
|
|
363
|
+
text: `Error creating pull request thread: ${errorMessage}`
|
|
364
|
+
}],
|
|
365
|
+
isError: true,
|
|
366
|
+
};
|
|
367
|
+
}
|
|
368
|
+
});
|
|
214
369
|
server.tool("repo_get_pullrequest_changes_by_id", "Retrieve all file changes and diffs from a pull request by iterating through all commits in the PR", {
|
|
215
370
|
organization: z.string().describe("Azure DevOps organization name (e.g., 'myorg')"),
|
|
216
371
|
project: z.string().describe("The name or ID of the Azure DevOps project."),
|
package/dist/tools/ado.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ado.js","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ado.js","sourceRoot":"","sources":["../../src/tools/ado.ts"],"names":[],"mappings":"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"}
|