UNPKG

@bratcliffe909/mcp-server-segmind

Version:

Model Context Protocol server for Segmind API - Generate images and videos using AI models

31 lines 1.77 kB
import { CallToolResult, TextContent, ImageContent } from '@modelcontextprotocol/sdk/types.js'; import { ModelConfig } from '../models/registry.js'; export interface ToolContext { requestId: string; userId?: string; sessionId?: string; } export interface GenerationResult { content: Array<TextContent | ImageContent>; model: string; creditsUsed: number; processingTime: number; metadata?: Record<string, any>; } export declare abstract class BaseTool { protected context?: ToolContext | undefined; protected abstract readonly name: string; protected abstract readonly description: string; constructor(context?: ToolContext | undefined); abstract execute(params: any): Promise<CallToolResult>; protected callModel(model: ModelConfig, parameters: any, saveLocation?: string): Promise<GenerationResult>; protected processModelResponse(response: any, model: ModelConfig, prompt?: string, saveLocation?: string): Promise<Array<TextContent | ImageContent>>; protected createErrorResponse(error: unknown): CallToolResult; protected handleLongRunningOperation(model: ModelConfig, parameters: any): Promise<GenerationResult>; private pollForCompletion; protected mergeWithDefaults(params: any, model: ModelConfig): any; protected saveImageToFile(base64Data: string, mimeType: string, model: ModelConfig, _prompt?: string, saveLocationOverride?: string): Promise<string | null>; protected saveAudioToFile(base64Data: string, mimeType: string, model: ModelConfig, saveLocationOverride?: string): Promise<string | null>; protected saveVideoToFile(base64Data: string, mimeType: string, model: ModelConfig, saveLocationOverride?: string): Promise<string | null>; } //# sourceMappingURL=base.d.ts.map