Convenience methods for Client
This commit is contained in:
parent
8be664b0a9
commit
3d32ce69df
1 changed files with 89 additions and 0 deletions
|
|
@ -11,6 +11,24 @@ import {
|
|||
Request,
|
||||
Result,
|
||||
ServerCapabilities,
|
||||
CompleteRequest,
|
||||
GetPromptRequest,
|
||||
ListPromptsRequest,
|
||||
ListResourcesRequest,
|
||||
ReadResourceRequest,
|
||||
SubscribeRequest,
|
||||
UnsubscribeRequest,
|
||||
CallToolRequest,
|
||||
ListToolsRequest,
|
||||
CompleteResultSchema,
|
||||
GetPromptResultSchema,
|
||||
ListPromptsResultSchema,
|
||||
ListResourcesResultSchema,
|
||||
ReadResourceResultSchema,
|
||||
CallToolResultSchema,
|
||||
ListToolsResultSchema,
|
||||
EmptyResultSchema,
|
||||
LoggingLevel,
|
||||
} from "../types.js";
|
||||
|
||||
/**
|
||||
|
|
@ -103,4 +121,75 @@ export class Client<
|
|||
getServerVersion(): Implementation | undefined {
|
||||
return this._serverVersion;
|
||||
}
|
||||
|
||||
async ping() {
|
||||
return this.request({ method: "ping" }, EmptyResultSchema);
|
||||
}
|
||||
|
||||
async complete(params: CompleteRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "completion/complete", params },
|
||||
CompleteResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async setLoggingLevel(level: LoggingLevel) {
|
||||
return this.request(
|
||||
{ method: "logging/setLevel", params: { level } },
|
||||
EmptyResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async getPrompt(params: GetPromptRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "prompts/get", params },
|
||||
GetPromptResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async listPrompts(params?: ListPromptsRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "prompts/list", params },
|
||||
ListPromptsResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async listResources(params?: ListResourcesRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "resources/list", params },
|
||||
ListResourcesResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async readResource(params: ReadResourceRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "resources/read", params },
|
||||
ReadResourceResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async subscribeResource(params: SubscribeRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "resources/subscribe", params },
|
||||
EmptyResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async unsubscribeResource(params: UnsubscribeRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "resources/unsubscribe", params },
|
||||
EmptyResultSchema,
|
||||
);
|
||||
}
|
||||
|
||||
async callTool(params: CallToolRequest["params"]) {
|
||||
return this.request({ method: "tools/call", params }, CallToolResultSchema);
|
||||
}
|
||||
|
||||
async listTools(params?: ListToolsRequest["params"]) {
|
||||
return this.request(
|
||||
{ method: "tools/list", params },
|
||||
ListToolsResultSchema,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue