Bash MCP (Master Control Program)

by yannbam
Verified
import { initBashMCP } from '../src'; async function runExample() { try { console.log('Initializing Bash MCP...'); const mcp = await initBashMCP(); console.log('\n--- Stateless Command Execution ---'); const lsResult = await mcp.executeCommand('ls -la', { cwd: '/tmp' }); console.log('Command output:'); console.log(lsResult.output); console.log('\n--- Creating Interactive Session ---'); const sessionResult = mcp.createSession('/tmp'); if (!sessionResult.success || !sessionResult.sessionId) { console.error('Failed to create session:', sessionResult.error); return; } const sessionId = sessionResult.sessionId; console.log(`Session created with ID: ${sessionId}`); console.log('\n--- Executing Command in Session ---'); const sessionCommand = await mcp.executeCommand('pwd', { sessionId }); console.log('Command output:'); console.log(sessionCommand.output); console.log('\n--- Sending Input to Session ---'); const echoResult = await mcp.sendInput({ sessionId, input: 'echo "Hello from interactive session!"', }); console.log('Command output:'); console.log(echoResult.output); console.log('\n--- Listing Active Sessions ---'); const sessions = mcp.listSessions(); console.log('Active sessions:'); console.log(sessions); console.log('\n--- Closing Session ---'); const closeResult = mcp.closeSession(sessionId); console.log('Session closed:', closeResult.success); console.log('\n--- Shutting Down MCP ---'); mcp.shutdown(); console.log('MCP shut down successfully'); } catch (error) { console.error('Error running example:', error); } } runExample().catch(console.error);