@aashari/mcp-server-atlassian-confluence
Version:
Node.js/TypeScript MCP server for Atlassian Confluence. Provides tools enabling AI systems (LLMs) to list/get spaces & pages (content formatted as Markdown) and search via CQL. Connects AI seamlessly to Confluence knowledge bases using the standard MCP in
41 lines (40 loc) • 2.13 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");
const atlassian_spaces_cli_js_1 = __importDefault(require("./atlassian.spaces.cli.js"));
const atlassian_pages_cli_js_1 = __importDefault(require("./atlassian.pages.cli.js"));
const atlassian_search_cli_js_1 = __importDefault(require("./atlassian.search.cli.js"));
const atlassian_comments_cli_js_1 = __importDefault(require("./atlassian.comments.cli.js"));
// Package description
const DESCRIPTION = 'A Model Context Protocol (MCP) server for Atlassian Confluence integration';
// Create a contextualized logger for this file
const cliLogger = logger_util_js_1.Logger.forContext('cli/index.ts');
async function runCli(args) {
cliLogger.info(`Starting Confluence CLI v${constants_util_js_1.VERSION}`);
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
cliLogger.debug('Registering CLI commands...');
atlassian_spaces_cli_js_1.default.register(program);
atlassian_pages_cli_js_1.default.register(program);
atlassian_search_cli_js_1.default.register(program);
atlassian_comments_cli_js_1.default.register(program);
cliLogger.debug('All CLI commands registered successfully');
// Handle unknown commands
program.on('command:*', (operands) => {
cliLogger.error(`Unknown command: ${operands[0]}`);
console.log('');
program.help();
process.exit(1);
});
cliLogger.info(`Executing command: ${args.join(' ')}`);
// Parse arguments; default to help if no command provided
await program.parseAsync(args.length ? args : ['--help'], { from: 'user' });
cliLogger.info('CLI command execution completed');
}