Bash MCP (Master Control Program)
by yannbam
Verified
- bash-mcp
- examples
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);