diff --git a/src/middlewares/index.ts b/src/middlewares/index.ts index 76624ca..990f5c6 100644 --- a/src/middlewares/index.ts +++ b/src/middlewares/index.ts @@ -54,9 +54,8 @@ export const initMiddlewares = (app: express.Application): void => { // Only apply JSON parsing for API and auth routes, not for SSE or message endpoints if ( req.path !== `${basePath}/sse` && - req.path !== `${basePath}/messages` && !req.path.startsWith(`${basePath}/sse/`) && - !req.path.startsWith(`${basePath}/mcp/`) + req.path !== `${basePath}/messages` ) { express.json()(req, res, next); } else { diff --git a/src/services/sseService.ts b/src/services/sseService.ts index 37a9cda..67cb595 100644 --- a/src/services/sseService.ts +++ b/src/services/sseService.ts @@ -129,7 +129,7 @@ export const handleMcpPostRequest = async (req: Request, res: Response): Promise if (sessionId && transports[sessionId]) { console.log(`Reusing existing transport for sessionId: ${sessionId}`); transport = transports[sessionId].transport as StreamableHTTPServerTransport; - } else if (!sessionId) { + } else if (!sessionId && isInitializeRequest(req.body)) { transport = new StreamableHTTPServerTransport({ sessionIdGenerator: () => randomUUID(), onsessioninitialized: (sessionId) => {