export interface McpTool> { name: string; description: string; parameters: McpToolParameter[]; execute: (params: T) => Promise; } export interface McpToolParameter { name: string; description: string; type: 'string' | 'number' | 'boolean' | 'object' | 'array'; required?: boolean; default?: any; } export interface McpToolResponse { success: boolean; data?: any; error?: string; } export interface McpServer { registerTool>(tool: McpTool): void; start(): Promise; stop(): Promise; isRunning(): boolean; getPort(): number; getHost(): string; } export interface ProjectIdParam { projectId: string; } export interface TaskIdParam { taskId: string; } export interface CreateTaskParam { type: string; itemId: string; itemType: string; } export interface ItemParam { itemId: string; itemType: string; }