@@ -16,7 +16,7 @@ import { registerDataModelTools } from "./tools/dataModel.js";
1616import { registerGatewayTools } from "./tools/gateway.js" ;
1717import { registerInviteCodeTools } from "./tools/invite-code.js" ;
1818import { registerSecurityRuleTools } from "./tools/security-rule.js" ;
19- import { CloudBaseOptions } from "./types.js" ;
19+ import { CloudBaseOptions , Logger } from "./types.js" ;
2020import { enableCloudMode } from "./utils/cloud-mode.js" ;
2121import { info } from './utils/logger.js' ;
2222import { wrapServerWithTelemetry } from "./utils/tool-wrapper.js" ;
@@ -101,6 +101,7 @@ function parseEnabledPlugins(): string[] {
101101export interface ExtendedMcpServer extends McpServer {
102102 cloudBaseOptions ?: CloudBaseOptions ;
103103 ide ?: string ;
104+ logger ?: Logger ;
104105}
105106
106107/**
@@ -130,6 +131,7 @@ export async function createCloudBaseMcpServer(options?: {
130131 cloudBaseOptions ?: CloudBaseOptions ;
131132 cloudMode ?: boolean ;
132133 ide ?: string ;
134+ logger ?: Logger ;
133135} ) : Promise < ExtendedMcpServer > {
134136 const {
135137 name = "cloudbase-mcp" ,
@@ -138,6 +140,7 @@ export async function createCloudBaseMcpServer(options?: {
138140 cloudBaseOptions,
139141 cloudMode = false ,
140142 ide,
143+ logger,
141144 } = options ?? { } ;
142145
143146 // Enable cloud mode if specified
@@ -177,6 +180,11 @@ export async function createCloudBaseMcpServer(options?: {
177180 server . ide = ide ;
178181 }
179182
183+ // Store logger in server instance for tools to access
184+ if ( logger ) {
185+ server . logger = logger ;
186+ }
187+
180188 // Enable telemetry if requested
181189 if ( enableTelemetry ) {
182190 wrapServerWithTelemetry ( server ) ;
0 commit comments