@toolbox-sdk/core
Version:
JavaScript Base SDK for interacting with the Toolbox service
34 lines (33 loc) • 1.63 kB
TypeScript
import { AxiosInstance } from 'axios';
import { ITransport } from '../transport.types.js';
import { ParameterSchema, ZodManifest, Protocol } from '../protocol.js';
export declare abstract class McpHttpTransportBase implements ITransport {
protected _mcpBaseUrl: string;
protected _protocolVersion: string;
protected _serverVersion: string | null;
supportedProtocols?: string[];
protected _manageSession: boolean;
protected _session: AxiosInstance;
protected _clientName?: string;
protected _clientVersion?: string;
private _initPromise;
constructor(baseUrl: string, session?: AxiosInstance, protocol?: Protocol, clientName?: string, clientVersion?: string);
protected ensureInitialized(headers?: Record<string, string>): Promise<void>;
get protocolVersion(): string;
get baseUrl(): string;
protected appendToolsetPath(toolsetName?: string): string;
protected convertToolSchema(toolData: unknown): {
description: string;
parameters: ParameterSchema[];
authRequired?: string[];
};
private _convertTypeSchema;
protected processToolResultContent(content: {
type?: string;
text?: string;
}[]): string;
protected abstract initializeSession(headers?: Record<string, string>): Promise<void>;
abstract toolGet(toolName: string, headers?: Record<string, string>): Promise<ZodManifest>;
abstract toolsList(toolsetName?: string, headers?: Record<string, string>): Promise<ZodManifest>;
abstract toolInvoke(toolName: string, arguments_: Record<string, unknown>, headers: Record<string, string>): Promise<string>;
}