@@ -6,6 +6,7 @@ import getRawBody from "raw-body";
66import { redisClient } from "../redis.js" ;
77import { createMcpServer } from "../services/mcp.js" ;
88import { logMcpMessage } from "./common.js" ;
9+ import { logger } from "../utils/logger.js" ;
910
1011const MAXIMUM_MESSAGE_SIZE = "4mb" ;
1112
@@ -25,7 +26,9 @@ function redisChannelForSession(sessionId: string): string {
2526export async function handleSSEConnection ( req : Request , res : Response ) {
2627 const { server : mcpServer , cleanup : mcpCleanup } = createMcpServer ( ) ;
2728 const transport = new SSEServerTransport ( "/message" , res ) ;
28- console . info ( `[session ${ transport . sessionId } ] Received MCP SSE connection` ) ;
29+ logger . info ( 'Received MCP SSE connection' , {
30+ sessionId : transport . sessionId
31+ } ) ;
2932
3033 const redisCleanup = await redisClient . createSubscription (
3134 redisChannelForSession ( transport . sessionId ) ,
@@ -36,42 +39,41 @@ export async function handleSSEConnection(req: Request, res: Response) {
3639 const message = JSON . parse ( json ) ;
3740 logMcpMessage ( message , transport . sessionId ) ;
3841 transport . handleMessage ( message ) . catch ( ( error ) => {
39- console . error (
40- `[session ${ transport . sessionId } ] Error handling message:` ,
41- error ,
42- ) ;
42+ logger . error ( 'Error handling message' , error as Error , {
43+ sessionId : transport . sessionId
44+ } ) ;
4345 } ) ;
4446 } ,
4547 ( error ) => {
46- console . error (
47- `[session ${ transport . sessionId } ] Disconnecting due to error in Redis subscriber:` ,
48- error ,
49- ) ;
48+ logger . error ( 'Disconnecting due to error in Redis subscriber' , error as Error , {
49+ sessionId : transport . sessionId
50+ } ) ;
5051 transport
5152 . close ( )
5253 . catch ( ( error ) =>
53- console . error (
54- `[session ${ transport . sessionId } ] Error closing transport:` ,
55- error ,
56- ) ,
54+ logger . error ( 'Error closing transport' , error as Error , {
55+ sessionId : transport . sessionId
56+ } ) ,
5757 ) ;
5858 } ,
5959 ) ;
6060
6161 const cleanup = ( ) => {
6262 void mcpCleanup ( ) ;
6363 redisCleanup ( ) . catch ( ( error ) =>
64- console . error (
65- `[session ${ transport . sessionId } ] Error disconnecting Redis subscriber:` ,
66- error ,
67- ) ,
64+ logger . error ( 'Error disconnecting Redis subscriber' , error as Error , {
65+ sessionId : transport . sessionId
66+ } ) ,
6867 ) ;
6968 }
7069
7170 // Clean up Redis subscription when the connection closes
7271 mcpServer . onclose = cleanup
7372
74- console . info ( `[session ${ transport . sessionId } ] Listening on Redis channel` ) ;
73+ logger . info ( 'Listening on Redis channel' , {
74+ sessionId : transport . sessionId ,
75+ channel : redisChannel
76+ } ) ;
7577 await mcpServer . connect ( transport ) ;
7678}
7779
@@ -94,7 +96,10 @@ export async function handleMessage(req: Request, res: Response) {
9496 } ) ;
9597 } catch ( error ) {
9698 res . status ( 400 ) . json ( error ) ;
97- console . error ( "Bad POST request:" , error ) ;
99+ logger . error ( 'Bad POST request' , error as Error , {
100+ sessionId,
101+ contentType : req . headers [ 'content-type' ]
102+ } ) ;
98103 return ;
99104 }
100105 await redisClient . publish ( redisChannelForSession ( sessionId ) , body ) ;
0 commit comments