MCP on transport SSE bug in Cursor

Hi everyone, I recently deployed my own MCP server in production using SSE as the transport type.
The problem is that every time I try to connect to the cursor from this server, I receive a “session id not found” message from my implementation.
Has anyone experienced a similar bug?

Here is my basic server implementation


import express, { Request, Response } from "express";
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { SSEServerTransport } from "@modelcontextprotocol/sdk/server/sse.js";
import { registerAllTools } from "./tools";
import cors from "cors";

export const server = new McpServer({
  name: "mcp-clickup-helper",
  version: "1.0.0"
});

registerAllTools()

const app = express();
app.use(cors());

const transports: {[sessionId: string]: SSEServerTransport} = {};

app.get("/health", (_: Request, res: Response) => {
  res.send({
    status: "ok",
  });
});

app.get("/sse", async (_: Request, res: Response) => {
  const transport = new SSEServerTransport('/messages', res);
  transports[transport.sessionId] = transport;
  res.on("close", () => {
    delete transports[transport.sessionId];
  });
  await server.connect(transport);
});

app.get("/sse/health", async (req: Request, res: Response) => {
  res.send({
    status: "ok",
  });
});

app.post("/messages", async (req: Request, res: Response) => {
  const sessionId = req.query.sessionId as string;
 
  const transport = transports[sessionId];
  if (transport) {
    console.log("sessionId", sessionId);
    await transport.handlePostMessage(req, res);
  } else {
    res.status(400).send('No transport found for sessionId');
  }
});

app.listen(3001, () => {
  console.error("MCP Server running with sse transport");
});


Attached are images of the error log (MCP Cursor Output)