@@ -9,50 +9,54 @@ import { packageInfo } from "./common/packageInfo.js";
99import { Telemetry } from "./telemetry/telemetry.js" ;
1010import { createEJsonTransport } from "./helpers/EJsonTransport.js" ;
1111
12- try {
13- const session = new Session ( {
14- apiBaseUrl : config . apiBaseUrl ,
15- apiClientId : config . apiClientId ,
16- apiClientSecret : config . apiClientSecret ,
17- } ) ;
18- const mcpServer = new McpServer ( {
19- name : packageInfo . mcpServerName ,
20- version : packageInfo . version ,
21- } ) ;
22-
23- const telemetry = Telemetry . create ( session , config ) ;
24-
25- const server = new Server ( {
26- mcpServer,
27- session,
28- telemetry,
29- userConfig : config ,
30- } ) ;
31-
32- const transport = createEJsonTransport ( ) ;
33-
34- const shutdown = ( ) => {
35- logger . info ( LogId . serverCloseRequested , "server" , `Server close requested` ) ;
36-
37- server
38- . close ( )
39- . then ( ( ) => {
40- logger . info ( LogId . serverClosed , "server" , `Server closed successfully` ) ;
41- process . exit ( 0 ) ;
42- } )
43- . catch ( ( err : unknown ) => {
44- const error = err instanceof Error ? err : new Error ( String ( err ) ) ;
45- logger . error ( LogId . serverCloseFailure , "server" , `Error closing server: ${ error . message } ` ) ;
46- process . exit ( 1 ) ;
47- } ) ;
48- } ;
49-
50- process . once ( "SIGINT" , shutdown ) ;
51- process . once ( "SIGTERM" , shutdown ) ;
52- process . once ( "SIGQUIT" , shutdown ) ;
53-
54- await server . connect ( transport ) ;
55- } catch ( error : unknown ) {
56- logger . emergency ( LogId . serverStartFailure , "server" , `Fatal error running server: ${ error as string } ` ) ;
57- process . exit ( 1 ) ;
12+ async function main ( ) {
13+ try {
14+ const session = new Session ( {
15+ apiBaseUrl : config . apiBaseUrl ,
16+ apiClientId : config . apiClientId ,
17+ apiClientSecret : config . apiClientSecret ,
18+ } ) ;
19+ const mcpServer = new McpServer ( {
20+ name : packageInfo . mcpServerName ,
21+ version : packageInfo . version ,
22+ } ) ;
23+
24+ const telemetry = Telemetry . create ( session , config ) ;
25+
26+ const server = new Server ( {
27+ mcpServer,
28+ session,
29+ telemetry,
30+ userConfig : config ,
31+ } ) ;
32+
33+ const transport = createEJsonTransport ( ) ;
34+
35+ const shutdown = ( ) => {
36+ logger . info ( LogId . serverCloseRequested , "server" , `Server close requested` ) ;
37+
38+ server
39+ . close ( )
40+ . then ( ( ) => {
41+ logger . info ( LogId . serverClosed , "server" , `Server closed successfully` ) ;
42+ process . exit ( 0 ) ;
43+ } )
44+ . catch ( ( err : unknown ) => {
45+ const error = err instanceof Error ? err : new Error ( String ( err ) ) ;
46+ logger . error ( LogId . serverCloseFailure , "server" , `Error closing server: ${ error . message } ` ) ;
47+ process . exit ( 1 ) ;
48+ } ) ;
49+ } ;
50+
51+ process . once ( "SIGINT" , shutdown ) ;
52+ process . once ( "SIGTERM" , shutdown ) ;
53+ process . once ( "SIGQUIT" , shutdown ) ;
54+
55+ await server . connect ( transport ) ;
56+ } catch ( error : unknown ) {
57+ logger . emergency ( LogId . serverStartFailure , "server" , `Fatal error running server: ${ error as string } ` ) ;
58+ process . exit ( 1 ) ;
59+ }
5860}
61+
62+ void main ( ) ;
0 commit comments