import { MCPInterface, MCPTool, MCPToolCallResult } from '../../types' import { BaseExtension, ExtensionTypeEnum } from '../extension' /** * MCP (Model Context Protocol) extension for managing tools and server communication. * @extends BaseExtension */ export abstract class MCPExtension extends BaseExtension implements MCPInterface { /** * MCP extension type. */ type(): ExtensionTypeEnum | undefined { return ExtensionTypeEnum.MCP } abstract getTools(): Promise abstract callTool(toolName: string, args: Record): Promise abstract getConnectedServers(): Promise abstract refreshTools(): Promise abstract isHealthy(): Promise }