lance-mcp
Version:
MCP server for interacting with LanceDB database
26 lines (25 loc) • 811 B
TypeScript
export interface ToolResponse {
content: {
type: "text";
text: string;
}[];
isError: boolean;
_meta?: Record<string, unknown>;
}
export type ToolParams = {
[key: string]: unknown;
};
export declare abstract class BaseTool<T extends ToolParams = ToolParams> {
abstract name: string;
abstract description: string;
abstract inputSchema: {
type: "object";
properties: Record<string, unknown>;
required?: string[];
};
abstract execute(params: T): Promise<ToolResponse>;
protected validateDatabase(database: unknown): string;
protected validateCollection(collection: unknown): string;
protected validateObject(value: unknown, name: string): Record<string, unknown>;
protected handleError(error: unknown): ToolResponse;
}