@andrebuzeli/git-mcp 9.2.0 → 10.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.
- package/LICENSE +21 -0
- package/README.md +460 -328
- package/dist/.tsbuildinfo +1 -1
- package/dist/config.d.ts +0 -1
- package/dist/config.js +0 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.js +7 -35
- package/dist/prompts/gitPrompts.d.ts +20 -1
- package/dist/prompts/gitPrompts.d.ts.map +1 -1
- package/dist/prompts/gitPrompts.js +49 -9
- package/dist/prompts/gitPrompts.js.map +1 -1
- package/dist/providers/giteaProvider.d.ts +1 -18
- package/dist/providers/giteaProvider.js +1 -87
- package/dist/providers/githubProvider.d.ts +0 -1
- package/dist/providers/githubProvider.js +0 -1
- package/dist/providers/providerManager.d.ts +0 -15
- package/dist/providers/providerManager.js +0 -65
- package/dist/resources/toolsGuide.d.ts +0 -1
- package/dist/resources/toolsGuide.js +1701 -1702
- package/dist/server.d.ts +0 -1
- package/dist/server.js +0 -1
- package/dist/tools/gitAnalytics.d.ts +0 -29
- package/dist/tools/gitAnalytics.js +4 -39
- package/dist/tools/gitArchive.d.ts +0 -30
- package/dist/tools/gitArchive.d.ts.map +1 -1
- package/dist/tools/gitArchive.js +1 -32
- package/dist/tools/gitArchive.js.map +1 -1
- package/dist/tools/gitBackup.d.ts +2 -35
- package/dist/tools/gitBackup.d.ts.map +1 -1
- package/dist/tools/gitBackup.js +7 -41
- package/dist/tools/gitBackup.js.map +1 -1
- package/dist/tools/gitBranches.d.ts +0 -49
- package/dist/tools/gitBranches.js +28 -92
- package/dist/tools/gitChangelog.d.ts +37 -1
- package/dist/tools/gitChangelog.d.ts.map +1 -1
- package/dist/tools/gitChangelog.js +67 -2
- package/dist/tools/gitChangelog.js.map +1 -1
- package/dist/tools/gitConfig.d.ts +2 -31
- package/dist/tools/gitConfig.js +9 -38
- package/dist/tools/gitFiles.d.ts +0 -37
- package/dist/tools/gitFiles.js +1 -39
- package/dist/tools/gitFix.d.ts +1 -4
- package/dist/tools/gitFix.js +32 -62
- package/dist/tools/gitFix.tool.d.ts +2 -26
- package/dist/tools/gitFix.tool.js +61 -85
- package/dist/tools/gitHistory.d.ts +5 -18
- package/dist/tools/gitHistory.js +208 -193
- package/dist/tools/gitIgnore.d.ts +0 -24
- package/dist/tools/gitIgnore.js +113 -136
- package/dist/tools/gitIssues.d.ts +0 -79
- package/dist/tools/gitIssues.js +16 -123
- package/dist/tools/gitLog.d.ts +30 -1
- package/dist/tools/gitLog.d.ts.map +1 -1
- package/dist/tools/gitLog.js +46 -2
- package/dist/tools/gitLog.js.map +1 -1
- package/dist/tools/gitMonitor.d.ts +0 -29
- package/dist/tools/gitMonitor.js +18 -47
- package/dist/tools/gitPackages.d.ts +146 -34
- package/dist/tools/gitPackages.js +147 -280
- package/dist/tools/gitPulls.d.ts +0 -66
- package/dist/tools/gitPulls.d.ts.map +1 -1
- package/dist/tools/gitPulls.js +7 -93
- package/dist/tools/gitPulls.js.map +1 -1
- package/dist/tools/gitPush.d.ts +0 -1
- package/dist/tools/gitPush.js +0 -1
- package/dist/tools/gitRelease.d.ts +0 -49
- package/dist/tools/gitRelease.js +6 -122
- package/dist/tools/gitRemote.d.ts +1 -31
- package/dist/tools/gitRemote.js +17 -59
- package/dist/tools/gitReset.d.ts +0 -25
- package/dist/tools/gitReset.js +8 -33
- package/dist/tools/gitStash.d.ts +2 -35
- package/dist/tools/gitStash.js +26 -56
- package/dist/tools/gitSync.d.ts +0 -29
- package/dist/tools/gitSync.js +20 -65
- package/dist/tools/gitTags.d.ts +0 -37
- package/dist/tools/gitTags.d.ts.map +1 -1
- package/dist/tools/gitTags.js +26 -53
- package/dist/tools/gitTags.js.map +1 -1
- package/dist/tools/gitUpdate.d.ts +6 -11
- package/dist/tools/gitUpdate.js +304 -61
- package/dist/tools/gitUpload.d.ts +1 -24
- package/dist/tools/gitUpload.js +50 -45
- package/dist/tools/gitWorkflow.d.ts +0 -27
- package/dist/tools/gitWorkflow.js +55 -87
- package/dist/types.d.ts +0 -7
- package/dist/types.js +0 -1
- package/dist/utils/apiHelpers.d.ts +0 -1
- package/dist/utils/apiHelpers.js +0 -1
- package/dist/utils/errors.d.ts +0 -1
- package/dist/utils/errors.js +0 -1
- package/dist/utils/gitAdapter.d.ts +14 -13
- package/dist/utils/gitAdapter.d.ts.map +1 -1
- package/dist/utils/gitAdapter.js +47 -9
- package/dist/utils/gitAdapter.js.map +1 -1
- package/dist/utils/repoHelpers.d.ts +0 -2
- package/dist/utils/repoHelpers.js +3 -16
- package/dist/utils/safetyController.d.ts +0 -1
- package/dist/utils/safetyController.js +0 -1
- package/dist/utils/safetyController.js.map +1 -1
- package/package.json +87 -96
package/dist/tools/gitPulls.js
CHANGED
|
@@ -5,79 +5,14 @@ export class GitPullsTool {
|
|
|
5
5
|
constructor() {
|
|
6
6
|
this.name = 'git-pulls';
|
|
7
7
|
this.description = 'Pull request management for GitHub and Gitea - automatic dual-provider execution';
|
|
8
|
-
this.inputSchema = {
|
|
9
|
-
type: "object",
|
|
10
|
-
properties: {
|
|
11
|
-
projectPath: {
|
|
12
|
-
type: "string",
|
|
13
|
-
description: "Absolute path to the project/repository (auto-extracts repo name)"
|
|
14
|
-
},
|
|
15
|
-
action: {
|
|
16
|
-
type: "string",
|
|
17
|
-
description: "Pull request operation (REQUIRED)",
|
|
18
|
-
enum: ["create", "list", "get", "update", "merge", "close", "comment", "review"]
|
|
19
|
-
},
|
|
20
|
-
repo: {
|
|
21
|
-
type: "string",
|
|
22
|
-
description: "Repository name (auto-detected from projectPath)"
|
|
23
|
-
},
|
|
24
|
-
title: {
|
|
25
|
-
type: "string",
|
|
26
|
-
description: "PR title (required for create)"
|
|
27
|
-
},
|
|
28
|
-
body: {
|
|
29
|
-
type: "string",
|
|
30
|
-
description: "PR description (optional for create/update/comment)"
|
|
31
|
-
},
|
|
32
|
-
head: {
|
|
33
|
-
type: "string",
|
|
34
|
-
description: "Head branch (required for create)"
|
|
35
|
-
},
|
|
36
|
-
base: {
|
|
37
|
-
type: "string",
|
|
38
|
-
description: "Base branch (required for create)"
|
|
39
|
-
},
|
|
40
|
-
pullNumber: {
|
|
41
|
-
type: "number",
|
|
42
|
-
description: "PR number (required for get/update/merge/close/comment/review)"
|
|
43
|
-
},
|
|
44
|
-
state: {
|
|
45
|
-
type: "string",
|
|
46
|
-
description: "PR state filter (optional for list, default: open)",
|
|
47
|
-
enum: ["open", "closed", "all"]
|
|
48
|
-
},
|
|
49
|
-
sort: {
|
|
50
|
-
type: "string",
|
|
51
|
-
description: "Sort field (optional for list)",
|
|
52
|
-
enum: ["created", "updated", "popularity"]
|
|
53
|
-
},
|
|
54
|
-
direction: {
|
|
55
|
-
type: "string",
|
|
56
|
-
description: "Sort direction (optional for list)",
|
|
57
|
-
enum: ["asc", "desc"]
|
|
58
|
-
},
|
|
59
|
-
reviewEvent: {
|
|
60
|
-
type: "string",
|
|
61
|
-
description: "Review event type (required for review)",
|
|
62
|
-
enum: ["APPROVE", "REQUEST_CHANGES", "COMMENT"]
|
|
63
|
-
},
|
|
64
|
-
mergeMethod: {
|
|
65
|
-
type: "string",
|
|
66
|
-
description: "Merge method (optional for merge, default: merge)",
|
|
67
|
-
enum: ["merge", "squash", "rebase"]
|
|
68
|
-
}
|
|
69
|
-
},
|
|
70
|
-
required: ["projectPath", "action"],
|
|
71
|
-
additionalProperties: true
|
|
72
|
-
};
|
|
73
8
|
}
|
|
74
9
|
async handle(params, ctx) {
|
|
75
10
|
params = normalizeToolParams(params);
|
|
76
11
|
const action = params.action;
|
|
77
12
|
if (!action)
|
|
78
13
|
throw new MCPError('VALIDATION_ERROR', 'action is required');
|
|
79
|
-
const githubOwner =
|
|
80
|
-
const giteaOwner =
|
|
14
|
+
const githubOwner = params.owner || process.env.GITHUB_USERNAME;
|
|
15
|
+
const giteaOwner = params.owner || process.env.GITEA_USERNAME;
|
|
81
16
|
const repo = params.repo;
|
|
82
17
|
switch (action) {
|
|
83
18
|
case 'create': {
|
|
@@ -310,17 +245,9 @@ export class GitPullsTool {
|
|
|
310
245
|
results.providers.github = { success: false, error: err.message };
|
|
311
246
|
}
|
|
312
247
|
}
|
|
313
|
-
// Gitea
|
|
248
|
+
// Gitea
|
|
314
249
|
if (ctx.providerManager.giteaBaseUrl) {
|
|
315
|
-
|
|
316
|
-
const axios = require('axios');
|
|
317
|
-
// Gitea doesn't have a review API like GitHub; we'll fallback to a comment
|
|
318
|
-
const commentRes = await axios.post(`${ctx.providerManager.giteaBaseUrl}/api/v1/repos/${giteaOwner}/${repo}/issues/${pull_number}/comments`, { body: params.review_body || 'Review' }, { headers: { Authorization: `token ${ctx.providerManager.giteaToken}` } });
|
|
319
|
-
results.providers.gitea = { success: true, review: { comment: commentRes.data } };
|
|
320
|
-
}
|
|
321
|
-
catch (err) {
|
|
322
|
-
results.providers.gitea = { success: false, error: err.message };
|
|
323
|
-
}
|
|
250
|
+
results.providers.gitea = { success: false, error: 'Review not fully implemented for Gitea' };
|
|
324
251
|
}
|
|
325
252
|
return results;
|
|
326
253
|
}
|
|
@@ -343,27 +270,14 @@ export class GitPullsTool {
|
|
|
343
270
|
results.providers.github = { success: false, error: err.message };
|
|
344
271
|
}
|
|
345
272
|
}
|
|
346
|
-
// Gitea
|
|
273
|
+
// Gitea
|
|
347
274
|
if (ctx.providerManager.giteaBaseUrl) {
|
|
348
|
-
|
|
349
|
-
const axios = require('axios');
|
|
350
|
-
const result = await axios.get(`${ctx.providerManager.giteaBaseUrl}/api/v1/repos/${giteaOwner}/${repo}/pulls`, { headers: { Authorization: `token ${ctx.providerManager.giteaToken}` } });
|
|
351
|
-
const q = query.toLowerCase();
|
|
352
|
-
const filtered = Array.isArray(result.data)
|
|
353
|
-
? result.data.filter((p) => (p.title || '').toLowerCase().includes(q) || (p.body || '').toLowerCase().includes(q))
|
|
354
|
-
: [];
|
|
355
|
-
results.providers.gitea = { success: true, pulls: filtered };
|
|
356
|
-
}
|
|
357
|
-
catch (err) {
|
|
358
|
-
results.providers.gitea = { success: false, error: err.message };
|
|
359
|
-
}
|
|
275
|
+
results.providers.gitea = { success: false, error: 'Search not fully implemented for Gitea' };
|
|
360
276
|
}
|
|
361
277
|
return results;
|
|
362
278
|
}
|
|
363
279
|
default:
|
|
364
|
-
|
|
365
|
-
throw new MCPError('VALIDATION_ERROR', `Unsupported action: ${action}. Valid actions: ${validActions.join(', ')}`);
|
|
280
|
+
throw new MCPError('VALIDATION_ERROR', `Unsupported action: ${action}`);
|
|
366
281
|
}
|
|
367
282
|
}
|
|
368
283
|
}
|
|
369
|
-
//# sourceMappingURL=gitPulls.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gitPulls.js","sourceRoot":"","sources":["../../src/tools/gitPulls.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"gitPulls.js","sourceRoot":"","sources":["../../src/tools/gitPulls.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/gitPush.d.ts
CHANGED
package/dist/tools/gitPush.js
CHANGED
|
@@ -2,54 +2,5 @@ import { Tool, MCPContext } from '../types.js';
|
|
|
2
2
|
export declare class GitReleaseTool implements Tool {
|
|
3
3
|
name: string;
|
|
4
4
|
description: string;
|
|
5
|
-
inputSchema: {
|
|
6
|
-
type: "object";
|
|
7
|
-
properties: {
|
|
8
|
-
projectPath: {
|
|
9
|
-
type: string;
|
|
10
|
-
description: string;
|
|
11
|
-
};
|
|
12
|
-
action: {
|
|
13
|
-
type: string;
|
|
14
|
-
description: string;
|
|
15
|
-
enum: string[];
|
|
16
|
-
};
|
|
17
|
-
repo: {
|
|
18
|
-
type: string;
|
|
19
|
-
description: string;
|
|
20
|
-
};
|
|
21
|
-
tagName: {
|
|
22
|
-
type: string;
|
|
23
|
-
description: string;
|
|
24
|
-
};
|
|
25
|
-
name: {
|
|
26
|
-
type: string;
|
|
27
|
-
description: string;
|
|
28
|
-
};
|
|
29
|
-
body: {
|
|
30
|
-
type: string;
|
|
31
|
-
description: string;
|
|
32
|
-
};
|
|
33
|
-
draft: {
|
|
34
|
-
type: string;
|
|
35
|
-
description: string;
|
|
36
|
-
};
|
|
37
|
-
prerelease: {
|
|
38
|
-
type: string;
|
|
39
|
-
description: string;
|
|
40
|
-
};
|
|
41
|
-
releaseId: {
|
|
42
|
-
type: string;
|
|
43
|
-
description: string;
|
|
44
|
-
};
|
|
45
|
-
confirm: {
|
|
46
|
-
type: string;
|
|
47
|
-
description: string;
|
|
48
|
-
};
|
|
49
|
-
};
|
|
50
|
-
required: string[];
|
|
51
|
-
additionalProperties: boolean;
|
|
52
|
-
};
|
|
53
5
|
handle(params: Record<string, any>, ctx: MCPContext): Promise<any>;
|
|
54
6
|
}
|
|
55
|
-
//# sourceMappingURL=gitRelease.d.ts.map
|
package/dist/tools/gitRelease.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import simpleGit from 'simple-git';
|
|
1
2
|
import { MCPError } from '../utils/errors.js';
|
|
2
3
|
import { normalizeToolParams } from '../utils/repoHelpers.js';
|
|
3
4
|
import axios from 'axios';
|
|
@@ -5,54 +6,6 @@ export class GitReleaseTool {
|
|
|
5
6
|
constructor() {
|
|
6
7
|
this.name = 'git-release';
|
|
7
8
|
this.description = 'Release management operations - automatic dual-provider execution';
|
|
8
|
-
this.inputSchema = {
|
|
9
|
-
type: "object",
|
|
10
|
-
properties: {
|
|
11
|
-
projectPath: {
|
|
12
|
-
type: "string",
|
|
13
|
-
description: "Absolute path to the project/repository (auto-extracts repo name)"
|
|
14
|
-
},
|
|
15
|
-
action: {
|
|
16
|
-
type: "string",
|
|
17
|
-
description: "Release operation to perform (REQUIRED)",
|
|
18
|
-
enum: ["create", "list", "get", "update", "delete", "latest"]
|
|
19
|
-
},
|
|
20
|
-
repo: {
|
|
21
|
-
type: "string",
|
|
22
|
-
description: "Repository name (auto-detected from projectPath)"
|
|
23
|
-
},
|
|
24
|
-
tagName: {
|
|
25
|
-
type: "string",
|
|
26
|
-
description: "Git tag for release (required for create/get)"
|
|
27
|
-
},
|
|
28
|
-
name: {
|
|
29
|
-
type: "string",
|
|
30
|
-
description: "Release name/title (optional for create/update)"
|
|
31
|
-
},
|
|
32
|
-
body: {
|
|
33
|
-
type: "string",
|
|
34
|
-
description: "Release description/notes (optional for create/update)"
|
|
35
|
-
},
|
|
36
|
-
draft: {
|
|
37
|
-
type: "boolean",
|
|
38
|
-
description: "Mark as draft (optional for create/update)"
|
|
39
|
-
},
|
|
40
|
-
prerelease: {
|
|
41
|
-
type: "boolean",
|
|
42
|
-
description: "Mark as prerelease (optional for create/update)"
|
|
43
|
-
},
|
|
44
|
-
releaseId: {
|
|
45
|
-
type: "number",
|
|
46
|
-
description: "Release ID (required for update/delete)"
|
|
47
|
-
},
|
|
48
|
-
confirm: {
|
|
49
|
-
type: "boolean",
|
|
50
|
-
description: "Confirm destructive operations (optional for delete)"
|
|
51
|
-
}
|
|
52
|
-
},
|
|
53
|
-
required: ["projectPath", "action"],
|
|
54
|
-
additionalProperties: true
|
|
55
|
-
};
|
|
56
9
|
}
|
|
57
10
|
async handle(params, ctx) {
|
|
58
11
|
params = normalizeToolParams(params);
|
|
@@ -62,48 +15,16 @@ export class GitReleaseTool {
|
|
|
62
15
|
throw new MCPError('VALIDATION_ERROR', 'action is required');
|
|
63
16
|
if (!projectPath)
|
|
64
17
|
throw new MCPError('VALIDATION_ERROR', 'projectPath is required');
|
|
65
|
-
const githubOwner =
|
|
66
|
-
const giteaOwner =
|
|
18
|
+
const githubOwner = params.owner || process.env.GITHUB_USERNAME;
|
|
19
|
+
const giteaOwner = params.owner || process.env.GITEA_USERNAME;
|
|
67
20
|
const repo = params.repo;
|
|
68
21
|
switch (action) {
|
|
69
22
|
case 'create': {
|
|
70
23
|
const tagName = params.tagName;
|
|
71
24
|
if (!tagName)
|
|
72
25
|
throw new MCPError('VALIDATION_ERROR', 'tagName is required');
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
const git = ctx.gitAdapter;
|
|
76
|
-
// Validation 1: Check if repo has commits
|
|
77
|
-
if (ctx.providerManager.github && githubOwner) {
|
|
78
|
-
try {
|
|
79
|
-
const commits = await ctx.providerManager.github.rest.repos.listCommits({
|
|
80
|
-
owner: githubOwner,
|
|
81
|
-
repo: repo,
|
|
82
|
-
per_page: 1
|
|
83
|
-
});
|
|
84
|
-
if (commits.data.length === 0) {
|
|
85
|
-
throw new MCPError('VALIDATION_ERROR', `Cannot create release: Repository '${githubOwner}/${repo}' is empty. ` +
|
|
86
|
-
`Push commits before creating releases.`);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
catch (err) {
|
|
90
|
-
if (err.status === 409) {
|
|
91
|
-
throw new MCPError('VALIDATION_ERROR', `Cannot create release: Repository '${githubOwner}/${repo}' is empty. ` +
|
|
92
|
-
`Push commits before creating releases.`);
|
|
93
|
-
}
|
|
94
|
-
}
|
|
95
|
-
}
|
|
96
|
-
// Create tag locally
|
|
97
|
-
await git.createTag(projectPath, tagName, params.description || tagName);
|
|
98
|
-
// Push tag to remotes before creating release
|
|
99
|
-
try {
|
|
100
|
-
await git.push(projectPath, 'origin', `refs/tags/${tagName}`, true);
|
|
101
|
-
// Wait for propagation
|
|
102
|
-
await new Promise(resolve => setTimeout(resolve, 2000));
|
|
103
|
-
}
|
|
104
|
-
catch (err) {
|
|
105
|
-
console.warn(`Failed to push tag: ${err.message}. Continuing...`);
|
|
106
|
-
}
|
|
26
|
+
const git = simpleGit({ baseDir: projectPath });
|
|
27
|
+
await git.addAnnotatedTag(tagName, params.description || tagName);
|
|
107
28
|
const results = { success: true, localTag: tagName, providers: {} };
|
|
108
29
|
if (ctx.providerManager.github) {
|
|
109
30
|
try {
|
|
@@ -388,45 +309,8 @@ export class GitReleaseTool {
|
|
|
388
309
|
}
|
|
389
310
|
return results;
|
|
390
311
|
}
|
|
391
|
-
case 'latest': {
|
|
392
|
-
if (!repo)
|
|
393
|
-
throw new MCPError('VALIDATION_ERROR', 'repo is required');
|
|
394
|
-
const results = { success: true, providers: {} };
|
|
395
|
-
// GitHub
|
|
396
|
-
if (ctx.providerManager.github) {
|
|
397
|
-
try {
|
|
398
|
-
const result = await ctx.providerManager.github.rest.repos.getLatestRelease({
|
|
399
|
-
owner: githubOwner,
|
|
400
|
-
repo: repo,
|
|
401
|
-
});
|
|
402
|
-
results.providers.github = { success: true, release: result.data };
|
|
403
|
-
}
|
|
404
|
-
catch (err) {
|
|
405
|
-
results.providers.github = { success: false, error: err.message };
|
|
406
|
-
}
|
|
407
|
-
}
|
|
408
|
-
// Gitea
|
|
409
|
-
if (ctx.providerManager.giteaBaseUrl) {
|
|
410
|
-
try {
|
|
411
|
-
const releases = await axios.get(`${ctx.providerManager.giteaBaseUrl}/api/v1/repos/${giteaOwner}/${repo}/releases`, { headers: { Authorization: `token ${ctx.providerManager.giteaToken}` } });
|
|
412
|
-
if (releases.data.length === 0) {
|
|
413
|
-
results.providers.gitea = { success: false, error: 'No releases found' };
|
|
414
|
-
}
|
|
415
|
-
else {
|
|
416
|
-
// Gitea doesn't have a /latest endpoint, so we get the first one (most recent)
|
|
417
|
-
results.providers.gitea = { success: true, release: releases.data[0] };
|
|
418
|
-
}
|
|
419
|
-
}
|
|
420
|
-
catch (err) {
|
|
421
|
-
results.providers.gitea = { success: false, error: err.message };
|
|
422
|
-
}
|
|
423
|
-
}
|
|
424
|
-
return results;
|
|
425
|
-
}
|
|
426
312
|
default:
|
|
427
|
-
|
|
428
|
-
throw new MCPError('VALIDATION_ERROR', `Unsupported action: ${action}. Valid actions: ${validActions.join(', ')}`);
|
|
313
|
+
throw new MCPError('VALIDATION_ERROR', `Unsupported action: ${action}`);
|
|
429
314
|
}
|
|
430
315
|
}
|
|
431
316
|
}
|
|
432
|
-
//# sourceMappingURL=gitRelease.js.map
|
|
@@ -2,30 +2,6 @@ import { Tool, MCPContext } from '../types.js';
|
|
|
2
2
|
export declare class GitRemoteTool implements Tool {
|
|
3
3
|
name: string;
|
|
4
4
|
description: string;
|
|
5
|
-
inputSchema: {
|
|
6
|
-
type: "object";
|
|
7
|
-
properties: {
|
|
8
|
-
projectPath: {
|
|
9
|
-
type: string;
|
|
10
|
-
description: string;
|
|
11
|
-
};
|
|
12
|
-
action: {
|
|
13
|
-
type: string;
|
|
14
|
-
description: string;
|
|
15
|
-
enum: string[];
|
|
16
|
-
};
|
|
17
|
-
remoteName: {
|
|
18
|
-
type: string;
|
|
19
|
-
description: string;
|
|
20
|
-
};
|
|
21
|
-
url: {
|
|
22
|
-
type: string;
|
|
23
|
-
description: string;
|
|
24
|
-
};
|
|
25
|
-
};
|
|
26
|
-
required: string[];
|
|
27
|
-
additionalProperties: boolean;
|
|
28
|
-
};
|
|
29
5
|
handle(params: Record<string, any>, ctx: MCPContext): Promise<{
|
|
30
6
|
success: boolean;
|
|
31
7
|
remote: any;
|
|
@@ -35,7 +11,6 @@ export declare class GitRemoteTool implements Tool {
|
|
|
35
11
|
to?: undefined;
|
|
36
12
|
remotes?: undefined;
|
|
37
13
|
pruned?: undefined;
|
|
38
|
-
message?: undefined;
|
|
39
14
|
} | {
|
|
40
15
|
success: boolean;
|
|
41
16
|
removed: any;
|
|
@@ -45,7 +20,6 @@ export declare class GitRemoteTool implements Tool {
|
|
|
45
20
|
to?: undefined;
|
|
46
21
|
remotes?: undefined;
|
|
47
22
|
pruned?: undefined;
|
|
48
|
-
message?: undefined;
|
|
49
23
|
} | {
|
|
50
24
|
success: boolean;
|
|
51
25
|
renamed: any;
|
|
@@ -55,21 +29,18 @@ export declare class GitRemoteTool implements Tool {
|
|
|
55
29
|
removed?: undefined;
|
|
56
30
|
remotes?: undefined;
|
|
57
31
|
pruned?: undefined;
|
|
58
|
-
message?: undefined;
|
|
59
32
|
} | {
|
|
60
33
|
success: boolean;
|
|
61
|
-
remotes: import("
|
|
34
|
+
remotes: import("simple-git").RemoteWithoutRefs[];
|
|
62
35
|
remote?: undefined;
|
|
63
36
|
url?: undefined;
|
|
64
37
|
removed?: undefined;
|
|
65
38
|
renamed?: undefined;
|
|
66
39
|
to?: undefined;
|
|
67
40
|
pruned?: undefined;
|
|
68
|
-
message?: undefined;
|
|
69
41
|
} | {
|
|
70
42
|
success: boolean;
|
|
71
43
|
pruned: any;
|
|
72
|
-
message: string;
|
|
73
44
|
remote?: undefined;
|
|
74
45
|
url?: undefined;
|
|
75
46
|
removed?: undefined;
|
|
@@ -78,4 +49,3 @@ export declare class GitRemoteTool implements Tool {
|
|
|
78
49
|
remotes?: undefined;
|
|
79
50
|
}>;
|
|
80
51
|
}
|
|
81
|
-
//# sourceMappingURL=gitRemote.d.ts.map
|
package/dist/tools/gitRemote.js
CHANGED
|
@@ -1,33 +1,10 @@
|
|
|
1
|
+
import simpleGit from 'simple-git';
|
|
1
2
|
import { MCPError } from '../utils/errors.js';
|
|
2
3
|
import { getRepoInfo, buildGitHubUrl, buildGiteaUrl } from '../utils/repoHelpers.js';
|
|
3
4
|
export class GitRemoteTool {
|
|
4
5
|
constructor() {
|
|
5
6
|
this.name = 'git-remote';
|
|
6
7
|
this.description = 'Remote repository management - automatic username detection from env vars';
|
|
7
|
-
this.inputSchema = {
|
|
8
|
-
type: "object",
|
|
9
|
-
properties: {
|
|
10
|
-
projectPath: {
|
|
11
|
-
type: "string",
|
|
12
|
-
description: "Absolute path to the project/repository (REQUIRED)"
|
|
13
|
-
},
|
|
14
|
-
action: {
|
|
15
|
-
type: "string",
|
|
16
|
-
description: "Remote operation to perform (REQUIRED)",
|
|
17
|
-
enum: ["list", "add", "remove", "set-url", "get-url"]
|
|
18
|
-
},
|
|
19
|
-
remoteName: {
|
|
20
|
-
type: "string",
|
|
21
|
-
description: "Remote name (required for add/remove/set-url/get-url)"
|
|
22
|
-
},
|
|
23
|
-
url: {
|
|
24
|
-
type: "string",
|
|
25
|
-
description: "Remote URL (required for add/set-url)"
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
required: ["projectPath", "action"],
|
|
29
|
-
additionalProperties: true
|
|
30
|
-
};
|
|
31
8
|
}
|
|
32
9
|
async handle(params, ctx) {
|
|
33
10
|
const action = params.action;
|
|
@@ -35,10 +12,10 @@ export class GitRemoteTool {
|
|
|
35
12
|
if (!action || !projectPath) {
|
|
36
13
|
throw new MCPError('VALIDATION_ERROR', 'action and projectPath are required');
|
|
37
14
|
}
|
|
38
|
-
const git =
|
|
15
|
+
const git = simpleGit({ baseDir: projectPath });
|
|
39
16
|
switch (action) {
|
|
40
17
|
case 'add': {
|
|
41
|
-
const name = params.
|
|
18
|
+
const name = params.name || 'origin';
|
|
42
19
|
let url = params.url;
|
|
43
20
|
// Auto-construct URL if not provided
|
|
44
21
|
if (!url) {
|
|
@@ -57,37 +34,31 @@ export class GitRemoteTool {
|
|
|
57
34
|
throw new MCPError('VALIDATION_ERROR', 'url is required or set GITHUB_USERNAME/GITEA_USERNAME in environment');
|
|
58
35
|
}
|
|
59
36
|
}
|
|
60
|
-
await git.addRemote(
|
|
37
|
+
await git.addRemote(name, url);
|
|
61
38
|
return { success: true, remote: name, url };
|
|
62
39
|
}
|
|
63
40
|
case 'remove': {
|
|
64
|
-
const name = params.
|
|
41
|
+
const name = params.name;
|
|
65
42
|
if (!name)
|
|
66
|
-
throw new MCPError('VALIDATION_ERROR', '
|
|
67
|
-
await git.removeRemote(
|
|
43
|
+
throw new MCPError('VALIDATION_ERROR', 'name is required');
|
|
44
|
+
await git.removeRemote(name);
|
|
68
45
|
return { success: true, removed: name };
|
|
69
46
|
}
|
|
70
47
|
case 'rename': {
|
|
71
|
-
const name = params.
|
|
48
|
+
const name = params.name;
|
|
72
49
|
const newName = params.newName;
|
|
73
50
|
if (!name || !newName)
|
|
74
|
-
throw new MCPError('VALIDATION_ERROR', '
|
|
75
|
-
|
|
76
|
-
const remotes = await git.listRemotes(projectPath);
|
|
77
|
-
const remote = remotes.find(r => r.name === name);
|
|
78
|
-
if (!remote)
|
|
79
|
-
throw new MCPError('NOT_FOUND', `Remote '${name}' not found`);
|
|
80
|
-
await git.removeRemote(projectPath, name);
|
|
81
|
-
await git.addRemote(projectPath, newName, remote.url);
|
|
51
|
+
throw new MCPError('VALIDATION_ERROR', 'name and newName are required');
|
|
52
|
+
await git.remote(['rename', name, newName]);
|
|
82
53
|
return { success: true, renamed: name, to: newName };
|
|
83
54
|
}
|
|
84
55
|
case 'show':
|
|
85
56
|
case 'list': {
|
|
86
|
-
const remotes = await git.
|
|
57
|
+
const remotes = await git.getRemotes(params.verbose);
|
|
87
58
|
return { success: true, remotes };
|
|
88
59
|
}
|
|
89
60
|
case 'set-url': {
|
|
90
|
-
const name = params.
|
|
61
|
+
const name = params.name || 'origin';
|
|
91
62
|
let url = params.url;
|
|
92
63
|
// Auto-construct URL if not provided
|
|
93
64
|
if (!url) {
|
|
@@ -106,29 +77,16 @@ export class GitRemoteTool {
|
|
|
106
77
|
throw new MCPError('VALIDATION_ERROR', 'url is required or set GITHUB_USERNAME/GITEA_USERNAME in environment');
|
|
107
78
|
}
|
|
108
79
|
}
|
|
109
|
-
|
|
110
|
-
await git.removeRemote(projectPath, name);
|
|
111
|
-
await git.addRemote(projectPath, name, url);
|
|
80
|
+
await git.remote(['set-url', name, url]);
|
|
112
81
|
return { success: true, remote: name, url };
|
|
113
82
|
}
|
|
114
|
-
case 'get-url': {
|
|
115
|
-
const name = params.remoteName || 'origin';
|
|
116
|
-
const remotes = await git.listRemotes(projectPath);
|
|
117
|
-
const remote = remotes.find(r => r.name === name);
|
|
118
|
-
if (!remote)
|
|
119
|
-
throw new MCPError('NOT_FOUND', `Remote '${name}' not found`);
|
|
120
|
-
return { success: true, remote: name, url: remote.url };
|
|
121
|
-
}
|
|
122
83
|
case 'prune': {
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
return { success: true, pruned: name, message: 'Prune operation completed (simplified)' };
|
|
84
|
+
const name = params.name || 'origin';
|
|
85
|
+
await git.remote(['prune', name]);
|
|
86
|
+
return { success: true, pruned: name };
|
|
127
87
|
}
|
|
128
88
|
default:
|
|
129
|
-
|
|
130
|
-
throw new MCPError('VALIDATION_ERROR', `Unsupported action: ${action}. Valid actions: ${validActions.join(', ')}`);
|
|
89
|
+
throw new MCPError('VALIDATION_ERROR', `Unsupported action: ${action}`);
|
|
131
90
|
}
|
|
132
91
|
}
|
|
133
92
|
}
|
|
134
|
-
//# sourceMappingURL=gitRemote.js.map
|