UNPKG

@pedrocid/music-mcp

Version:

MCP server for controlling Apple Music on macOS (v1.0.5)

42 lines (41 loc) 1.52 kB
#!/usr/bin/env node "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const index_js_1 = require("@modelcontextprotocol/sdk/server/index.js"); const stdio_js_1 = require("@modelcontextprotocol/sdk/server/stdio.js"); const logger_js_1 = require("./logger.js"); const version_js_1 = require("./version.js"); const server_js_1 = require("./server.js"); // Ensure clean exit process.on('SIGINT', () => { logger_js_1.logger.info('Shutting down Music MCP server'); logger_js_1.logger.flush(); process.exit(0); }); process.on('SIGTERM', () => { logger_js_1.logger.info('Shutting down Music MCP server'); logger_js_1.logger.flush(); process.exit(0); }); async function main() { const server = new index_js_1.Server({ name: 'music-mcp', vendor: 'pedrocid', version: (0, version_js_1.getVersion)(), description: `MCP server for controlling Apple Music on macOS (v${(0, version_js_1.getVersion)()})` }, { capabilities: { tools: {} } }); // Register all tools await (0, server_js_1.registerTools)(server); const transport = new stdio_js_1.StdioServerTransport(); await server.connect(transport); logger_js_1.logger.info(`Music MCP server v${(0, version_js_1.getVersion)()} started`); } main().catch((error) => { logger_js_1.logger.error({ error }, 'Failed to start Music MCP server'); console.error('Failed to start Music MCP server:', error.message); process.exit(1); });