@@ -19,7 +19,7 @@ import dotenv from "dotenv";
1919import { ToolCallRequest , ToolHandler } from "./types.js" ;
2020import { z } from "zod" ;
2121import { getVersion , isEmpty } from "./utils.js" ;
22- import Logger from "./logger.js" ;
22+ import DefaultLogger , { type Logger } from "./logger.js" ;
2323import {
2424 GetStorageObjectsSchema ,
2525 UploadStorageObjectSchema ,
@@ -154,12 +154,14 @@ class YepCodeMcpServer extends Server {
154154 tools = DEFAULT_TOOL_TAGS ,
155155 runCodeCleanup = false ,
156156 skipCodingRules = false ,
157+ externalLogger = undefined ,
157158 } : {
158159 logsToStderr ?: boolean ;
159160 tools ?: string [ ] ;
160161 runCodeCleanup ?: boolean ;
161162 skipCodingRules ?: boolean ;
162- } = { }
163+ externalLogger ?: Logger ;
164+ } = { } ,
163165 ) {
164166 super (
165167 {
@@ -184,12 +186,16 @@ class YepCodeMcpServer extends Server {
184186 this . yepCodeRun = new YepCodeRun ( config ) ;
185187 this . yepCodeEnv = new YepCodeEnv ( config ) ;
186188 this . yepCodeApi = new YepCodeApi ( config ) ;
187- this . logger = new Logger ( this . yepCodeApi . getTeamId ( ) , {
188- logsToStderr,
189- } ) ;
189+ if ( externalLogger ) {
190+ this . logger = externalLogger ;
191+ } else {
192+ this . logger = new DefaultLogger ( this . yepCodeApi . getTeamId ( ) , {
193+ logsToStderr,
194+ } ) ;
195+ }
190196 this . logger . info ( "YepCode initialized successfully" ) ;
191197 } catch ( error ) {
192- this . logger = new Logger ( "YepCodeMcpServer" , {
198+ this . logger = new DefaultLogger ( "YepCodeMcpServer" , {
193199 logsToStderr,
194200 } ) ;
195201 this . logger . error ( "Exception while initializing YepCode" , error as Error ) ;
@@ -437,10 +443,12 @@ class YepCodeMcpServer extends Server {
437443 let executionError : string | undefined ;
438444 let returnValue : unknown ;
439445
440- this . logger . info ( "Running code with YepCode" , {
441- codeLength : code . length ,
442- options,
443- } ) ;
446+ this . logger . info (
447+ `Running code with YepCode ${ JSON . stringify ( {
448+ codeLength : code . length ,
449+ options,
450+ } ) } `,
451+ ) ;
444452
445453 const execution = await this . yepCodeRun . run ( code , {
446454 removeOnDone : this . runCodeCleanup ,
@@ -455,9 +463,11 @@ class YepCodeMcpServer extends Server {
455463 } ,
456464 onFinish : ( value ) => {
457465 returnValue = value ;
458- this . logger . info ( "YepCode execution finished" , {
459- hasReturnValue : value !== undefined ,
460- } ) ;
466+ this . logger . info (
467+ `YepCode execution finished ${ JSON . stringify ( {
468+ hasReturnValue : value !== undefined ,
469+ } ) } `,
470+ ) ;
461471 } ,
462472 } ) ;
463473
0 commit comments