Merge branch 'main' into ihrpr/http-streamable-server

This commit is contained in:
ihrpr 2025-04-07 14:29:09 +01:00
commit 251bb9d97d
No known key found for this signature in database

View file

@ -56,17 +56,12 @@ export class McpServer {
*/
public readonly server: Server;
protected _registeredResources: { [uri: string]: RegisteredResource } = {};
protected _registeredResourceTemplates: {
private _registeredResources: { [uri: string]: RegisteredResource } = {};
private _registeredResourceTemplates: {
[name: string]: RegisteredResourceTemplate;
} = {};
protected _registeredTools: { [name: string]: RegisteredTool } = {};
protected _registeredPrompts: { [name: string]: RegisteredPrompt } = {};
protected _toolHandlersInitialized = false;
protected _completionHandlerInitialized = false;
protected _resourceHandlersInitialized = false;
protected _promptHandlersInitialized = false;
private _registeredTools: { [name: string]: RegisteredTool } = {};
private _registeredPrompts: { [name: string]: RegisteredPrompt } = {};
constructor(serverInfo: Implementation, options?: ServerOptions) {
this.server = new Server(serverInfo, options);
@ -88,11 +83,13 @@ export class McpServer {
await this.server.close();
}
private _toolHandlersInitialized = false;
private setToolRequestHandlers() {
if (this._toolHandlersInitialized) {
return;
}
this.server.assertCanSetRequestHandler(
ListToolsRequestSchema.shape.method.value,
);
@ -182,6 +179,8 @@ export class McpServer {
this._toolHandlersInitialized = true;
}
private _completionHandlerInitialized = false;
private setCompletionRequestHandler() {
if (this._completionHandlerInitialized) {
return;
@ -270,6 +269,8 @@ export class McpServer {
return createCompletionResult(suggestions);
}
private _resourceHandlersInitialized = false;
private setResourceRequestHandlers() {
if (this._resourceHandlersInitialized) {
return;
@ -367,10 +368,12 @@ export class McpServer {
);
this.setCompletionRequestHandler();
this._resourceHandlersInitialized = true;
}
private _promptHandlersInitialized = false;
private setPromptRequestHandlers() {
if (this._promptHandlersInitialized) {
return;
@ -437,7 +440,7 @@ export class McpServer {
);
this.setCompletionRequestHandler();
this._promptHandlersInitialized = true;
}
@ -769,7 +772,7 @@ type RegisteredPrompt = {
callback: PromptCallback<undefined | PromptArgsRawShape>;
};
export function promptArgumentsFromSchema(
function promptArgumentsFromSchema(
schema: ZodObject<PromptArgsRawShape>,
): PromptArgument[] {
return Object.entries(schema.shape).map(