@@ -54,12 +54,17 @@ export class McpServer {
54
54
*/
55
55
public readonly server : Server ;
56
56
57
- private _registeredResources : { [ uri : string ] : RegisteredResource } = { } ;
58
- private _registeredResourceTemplates : {
57
+ protected _registeredResources : { [ uri : string ] : RegisteredResource } = { } ;
58
+ protected _registeredResourceTemplates : {
59
59
[ name : string ] : RegisteredResourceTemplate ;
60
60
} = { } ;
61
- private _registeredTools : { [ name : string ] : RegisteredTool } = { } ;
62
- private _registeredPrompts : { [ name : string ] : RegisteredPrompt } = { } ;
61
+ protected _registeredTools : { [ name : string ] : RegisteredTool } = { } ;
62
+ protected _registeredPrompts : { [ name : string ] : RegisteredPrompt } = { } ;
63
+
64
+ protected _toolHandlersInitialized = false ;
65
+ protected _completionHandlerInitialized = false ;
66
+ protected _resourceHandlersInitialized = false ;
67
+ protected _promptHandlersInitialized = false ;
63
68
64
69
constructor ( serverInfo : Implementation , options ?: ServerOptions ) {
65
70
this . server = new Server ( serverInfo , options ) ;
@@ -81,13 +86,11 @@ export class McpServer {
81
86
await this . server . close ( ) ;
82
87
}
83
88
84
- private _toolHandlersInitialized = false ;
85
-
86
89
private setToolRequestHandlers ( ) {
87
90
if ( this . _toolHandlersInitialized ) {
88
91
return ;
89
92
}
90
-
93
+
91
94
this . server . assertCanSetRequestHandler (
92
95
ListToolsRequestSchema . shape . method . value ,
93
96
) ;
@@ -177,8 +180,6 @@ export class McpServer {
177
180
this . _toolHandlersInitialized = true ;
178
181
}
179
182
180
- private _completionHandlerInitialized = false ;
181
-
182
183
private setCompletionRequestHandler ( ) {
183
184
if ( this . _completionHandlerInitialized ) {
184
185
return ;
@@ -267,8 +268,6 @@ export class McpServer {
267
268
return createCompletionResult ( suggestions ) ;
268
269
}
269
270
270
- private _resourceHandlersInitialized = false ;
271
-
272
271
private setResourceRequestHandlers ( ) {
273
272
if ( this . _resourceHandlersInitialized ) {
274
273
return ;
@@ -366,12 +365,10 @@ export class McpServer {
366
365
) ;
367
366
368
367
this . setCompletionRequestHandler ( ) ;
369
-
368
+
370
369
this . _resourceHandlersInitialized = true ;
371
370
}
372
371
373
- private _promptHandlersInitialized = false ;
374
-
375
372
private setPromptRequestHandlers ( ) {
376
373
if ( this . _promptHandlersInitialized ) {
377
374
return ;
@@ -438,7 +435,7 @@ export class McpServer {
438
435
) ;
439
436
440
437
this . setCompletionRequestHandler ( ) ;
441
-
438
+
442
439
this . _promptHandlersInitialized = true ;
443
440
}
444
441
@@ -770,7 +767,7 @@ type RegisteredPrompt = {
770
767
callback : PromptCallback < undefined | PromptArgsRawShape > ;
771
768
} ;
772
769
773
- function promptArgumentsFromSchema (
770
+ export function promptArgumentsFromSchema (
774
771
schema : ZodObject < PromptArgsRawShape > ,
775
772
) : PromptArgument [ ] {
776
773
return Object . entries ( schema . shape ) . map (
0 commit comments