@aashari/mcp-server-atlassian-bitbucket
Version:
Node.js/TypeScript MCP server for Atlassian Bitbucket. Enables AI systems (LLMs) to interact with workspaces, repositories, and pull requests via tools (list, get, comment, search). Connects AI directly to version control workflows through the standard MC
47 lines (46 loc) • 2.48 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.runCli = runCli;
const commander_1 = require("commander");
const logger_util_js_1 = require("../utils/logger.util.js");
const constants_util_js_1 = require("../utils/constants.util.js");
// Import Bitbucket-specific CLI modules
const atlassian_workspaces_cli_js_1 = __importDefault(require("./atlassian.workspaces.cli.js"));
const atlassian_repositories_cli_js_1 = __importDefault(require("./atlassian.repositories.cli.js"));
const atlassian_pullrequests_cli_js_1 = __importDefault(require("./atlassian.pullrequests.cli.js"));
const atlassian_search_cli_js_1 = __importDefault(require("./atlassian.search.cli.js"));
const atlassian_diff_cli_js_1 = __importDefault(require("./atlassian.diff.cli.js"));
// Package description
const DESCRIPTION = 'A Model Context Protocol (MCP) server for Atlassian Bitbucket integration';
// Create a contextualized logger for this file
const cliLogger = logger_util_js_1.Logger.forContext('cli/index.ts');
// Log CLI initialization
cliLogger.debug('Bitbucket CLI module initialized');
async function runCli(args) {
const methodLogger = logger_util_js_1.Logger.forContext('cli/index.ts', 'runCli');
const program = new commander_1.Command();
program.name(constants_util_js_1.CLI_NAME).description(DESCRIPTION).version(constants_util_js_1.VERSION);
// Register CLI commands
atlassian_workspaces_cli_js_1.default.register(program);
cliLogger.debug('Workspace commands registered');
atlassian_repositories_cli_js_1.default.register(program);
cliLogger.debug('Repository commands registered');
atlassian_pullrequests_cli_js_1.default.register(program);
cliLogger.debug('Pull Request commands registered');
atlassian_search_cli_js_1.default.register(program);
cliLogger.debug('Search commands registered');
atlassian_diff_cli_js_1.default.register(program);
cliLogger.debug('Diff commands registered');
// Handle unknown commands
program.on('command:*', (operands) => {
methodLogger.error(`Unknown command: ${operands[0]}`);
console.log('');
program.help();
process.exit(1);
});
// Parse arguments; default to help if no command provided
await program.parseAsync(args.length ? args : ['--help'], { from: 'user' });
}