const { spawn } = require('child_process');
console.log('Testing STDIO mode backward compatibility...');
// Start the MCP server
const server = spawn('node', ['dist/index-dual.js'], {
stdio: ['pipe', 'pipe', 'pipe']
});
let responseReceived = false;
// Handle server output
server.stdout.on('data', (data) => {
console.log('STDOUT:', data.toString());
responseReceived = true;
});
// Handle server errors
server.stderr.on('data', (data) => {
console.log('STDERR:', data.toString());
});
// Send initialize request
const initRequest = JSON.stringify({
jsonrpc: '2.0',
method: 'initialize',
params: {
protocolVersion: '1.0.0',
capabilities: {}
},
id: 1
}) + '\n';
console.log('Sending initialize request...');
server.stdin.write(initRequest);
// Wait for response and exit
setTimeout(() => {
if (responseReceived) {
console.log('✅ STDIO mode working - received response');
} else {
console.log('❌ No response received');
}
server.kill();
process.exit(responseReceived ? 0 : 1);
}, 3000);