index.js•791 B
const express = require('express');
const http = require('http');
const WebSocket = require('ws');
const { validateMCPMessage } = require('./mcp-protocol');
const app = express();
const server = http.createServer(app);
const wss = new WebSocket.Server({ server });
wss.on('connection', (ws) => {
ws.on('message', (message) => {
let parsed;
try {
parsed = JSON.parse(message);
} catch (e) {
ws.send(JSON.stringify({ error: 'Invalid JSON.' }));
return;
}
if (validateMCPMessage(parsed)) {
ws.send(JSON.stringify({ status: 'ok', received: parsed }));
} else {
ws.send(JSON.stringify({ error: 'Invalid MCP message.' }));
}
});
});
server.listen(4000, () => {
console.log('MCP Server using WebSocket listening on port 4000');
});