INNER CODE UNIT · TypeScript
main
LeDat98/NexusRAG · mcp-server/src/index.ts:161
async function main() {
const transportType = process.env.TRANSPORT === "http" ? "http" : "stdio";
if (transportType === "http") {
const app = createMcpExpressApp();
const port = process.env.PORT || 8000;
// Store active transports
const transports: Record<string, StreamableHTTPServerTransport> = {};
// Single endpoint /mcp handles GET, POST, DELETE requests
app.all("/mcp", async (req, res) => {
try {
const sessionId = req.headers["mcp-session-id"] as string;
let transport: StreamableHTTPServerTransport | undefined;
if (sessionId && transports[sessionId]) {
transport = transports[sessionId];