@stubbedev/atlassian-mcp 0.2.5 → 0.2.6
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/dist/bitbucket.js +0 -35
- package/dist/index.js +1 -16
- package/package.json +1 -1
package/dist/bitbucket.js
CHANGED
|
@@ -1028,41 +1028,6 @@ export class BitbucketClient {
|
|
|
1028
1028
|
return text(`Task #${args.taskId} ${newState}.`);
|
|
1029
1029
|
return text(`Task #${updated.id} is now ${updated.state}: "${updated.text}"`);
|
|
1030
1030
|
}
|
|
1031
|
-
async getBuildLog(args) {
|
|
1032
|
-
const { url, maxLines = 150 } = args;
|
|
1033
|
-
const baseUrl = url.replace(/\/+$/, '');
|
|
1034
|
-
// Confirm the URL is Jenkins before doing anything else
|
|
1035
|
-
let probe;
|
|
1036
|
-
try {
|
|
1037
|
-
probe = await fetch(baseUrl, { method: 'HEAD' });
|
|
1038
|
-
}
|
|
1039
|
-
catch (e) {
|
|
1040
|
-
return text(`Network error reaching ${baseUrl}: ${e}`);
|
|
1041
|
-
}
|
|
1042
|
-
const jenkinsVersion = probe.headers.get('X-Jenkins');
|
|
1043
|
-
const fetchUrl = jenkinsVersion ? `${baseUrl}/consoleText` : baseUrl;
|
|
1044
|
-
const label = jenkinsVersion ? `Jenkins ${jenkinsVersion}` : 'CI';
|
|
1045
|
-
let res;
|
|
1046
|
-
try {
|
|
1047
|
-
res = await fetch(fetchUrl);
|
|
1048
|
-
}
|
|
1049
|
-
catch (e) {
|
|
1050
|
-
return text(`Network error fetching build log from ${fetchUrl}: ${e}`);
|
|
1051
|
-
}
|
|
1052
|
-
if (res.status === 401 || res.status === 403) {
|
|
1053
|
-
return text(`${label} returned HTTP ${res.status} for ${fetchUrl}.\n` +
|
|
1054
|
-
`The build log requires authentication. View it directly in your browser.`);
|
|
1055
|
-
}
|
|
1056
|
-
if (!res.ok) {
|
|
1057
|
-
return text(`Failed to fetch build log (HTTP ${res.status}) from ${fetchUrl}.`);
|
|
1058
|
-
}
|
|
1059
|
-
const raw = await res.text();
|
|
1060
|
-
const lines = raw.split('\n');
|
|
1061
|
-
const truncated = lines.length > maxLines;
|
|
1062
|
-
const shown = truncated ? lines.slice(-maxLines) : lines;
|
|
1063
|
-
const prefix = truncated ? `(showing last ${maxLines} of ${lines.length} lines)\n\n` : '';
|
|
1064
|
-
return text(`Build log from ${label} — ${fetchUrl}:\n${prefix}${shown.join('\n')}`);
|
|
1065
|
-
}
|
|
1066
1031
|
async getBuildStatuses(args) {
|
|
1067
1032
|
const data = await this.requestBuildStatus('GET', `/commits/${args.commitSha}`);
|
|
1068
1033
|
if (!data?.values?.length)
|
package/dist/index.js
CHANGED
|
@@ -406,18 +406,7 @@ server.setRequestHandler(ListToolsRequestSchema, async () => ({
|
|
|
406
406
|
required: ['prId'],
|
|
407
407
|
},
|
|
408
408
|
},
|
|
409
|
-
|
|
410
|
-
name: 'bitbucket_get_build_log',
|
|
411
|
-
description: 'Fetch CI build console output. Jenkins is detected via the X-Jenkins response header. Use after seeing a failed build URL in bitbucket_get_pr output — pass the URL exactly as shown. Returns the last N lines of the log (default 150).',
|
|
412
|
-
inputSchema: {
|
|
413
|
-
type: 'object',
|
|
414
|
-
properties: {
|
|
415
|
-
url: { type: 'string', description: 'Build URL from CI status, e.g. https://jenkins.example.com/job/my-job/123/' },
|
|
416
|
-
maxLines: { type: 'number', description: 'Max lines to return from the end of the log (default 150)', default: 150 },
|
|
417
|
-
},
|
|
418
|
-
required: ['url'],
|
|
419
|
-
},
|
|
420
|
-
}] : []),
|
|
409
|
+
] : []),
|
|
421
410
|
// ── Combined workflow ─────────────────────────────────────────────────
|
|
422
411
|
...(jira && bitbucket ? [{
|
|
423
412
|
name: 'complete_work',
|
|
@@ -658,10 +647,6 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
658
647
|
return await bitbucket.getPrTasks(a);
|
|
659
648
|
return await bitbucket.mutatePrTask({ ...a, action: action });
|
|
660
649
|
}
|
|
661
|
-
case 'bitbucket_get_build_log':
|
|
662
|
-
if (!bitbucket)
|
|
663
|
-
throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`);
|
|
664
|
-
return await bitbucket.getBuildLog(args);
|
|
665
650
|
case 'complete_work': {
|
|
666
651
|
if (!jira || !bitbucket)
|
|
667
652
|
throw new McpError(ErrorCode.MethodNotFound, `Unknown tool: ${name}`);
|