UNPKG

nmp-plus-mcp

Version:

NMP Plus MCP Server - 36 команд через HTTP API (Stdout Fix)

46 lines (38 loc) 1.5 kB
#!/usr/bin/env node const { spawn } = require('child_process'); const path = require('path'); // Путь к Python серверу const pythonServerPath = path.join(__dirname, 'nmp_mcp_server_complete.py'); // Используем системный python3 вместо локального const pythonPath = 'python3'; // ВАЖНО: всё дополнительное логирование выводим в stderr, // чтобы не нарушать JSON-протокол MCP, который идёт по stdout console.error('🧠 Запуск NMP MCP Server...'); console.error(`Python: ${pythonPath}`); console.error(`Server: ${pythonServerPath}`); // Запускаем Python сервер const pythonProcess = spawn(pythonPath, [pythonServerPath], { stdio: ['inherit', 'inherit', 'inherit'], env: { ...process.env, PYTHONPATH: path.join(__dirname, 'venv_py311', 'lib', 'python3.11', 'site-packages') } }); // Обработка сигналов process.on('SIGINT', () => { console.error('\n🛑 Остановка NMP сервера...'); pythonProcess.kill('SIGINT'); process.exit(0); }); process.on('SIGTERM', () => { pythonProcess.kill('SIGTERM'); process.exit(0); }); pythonProcess.on('close', (code) => { console.error(`🧠 NMP сервер завершен с кодом ${code}`); process.exit(code); }); pythonProcess.on('error', (err) => { console.error('❌ Ошибка запуска NMP сервера:', err); process.exit(1); });