diff --git a/services/trinity-core/index.js b/services/trinity-core/index.js index da13767..3c9e3ca 100644 --- a/services/trinity-core/index.js +++ b/services/trinity-core/index.js @@ -233,6 +233,14 @@ app.all('/mcp', auth, async (req, res) => { }; const mcpServer = createMcpServer(); await mcpServer.connect(transport); + } else if (sessionId && !activeSessions.has(sessionId)) { + // Stale session (e.g. after service restart) — tell client to re-initialize + log(`StreamableHTTP stale session ${sessionId} — returning 404`); + return res.status(404).json({ + jsonrpc: '2.0', + error: { code: -32001, message: 'Session not found. Please re-initialize.' }, + id: null + }); } else if (!sessionId && req.method === 'GET') { // Legacy SSE client connecting via GET /mcp return legacySSE(req, res);