UNPKG

@jorgeceballos/mcp-server-oci

Version:

Model Context Protocol server for Oracle Cloud Infrastructure

47 lines (35 loc) 1.38 kB
#!/usr/bin/env node // Este script sirve como wrapper para ejecutar el servidor MCP-OCI con el inspector // Interceptará la salida estándar para evitar que se envíen mensajes de texto plano const { spawn } = require('child_process'); const path = require('path'); // Establecer variable de entorno para indicar que estamos en modo inspector process.env.MCP_INSPECTOR = 'true'; // Ruta al binario npx const npxPath = process.argv[0]; // Argumentos para el comando real const args = ['-y', '@jocebal/mcp-server-oci', '--profile', 'DEFAULT']; // Creamos un proceso hijo con la configuración adecuada const child = spawn(npxPath, args, { stdio: ['pipe', 'pipe', 'pipe'], env: process.env }); // Redirigir stdin del proceso padre al proceso hijo process.stdin.pipe(child.stdin); // Filtrar stdout para interceptar mensajes de texto plano child.stdout.on('data', (data) => { const text = data.toString(); // Si el texto comienza con un "{" o "[", probablemente es JSON y lo dejamos pasar if (text.trim().startsWith('{') || text.trim().startsWith('[')) { process.stdout.write(data); } else { // Es texto plano, lo enviamos a stderr en su lugar process.stderr.write(`[FILTERED] ${text}`); } }); // Redirigir stderr directamente child.stderr.pipe(process.stderr); // Manejar eventos de cierre child.on('close', (code) => { process.exit(code); });