/** * MCP Tool Type Definitions * Standardized schema for MCP tool definitions with metadata */ /** * Tool categories for grouping and default behavior */ export type ToolCategory = 'connections' | 'models' | 'providers' | 'organizations' | 'members' | 'billing' | 'api_keys' | 'collections' | 'mappings' | 'automation' | 'analytics' | 'alerts' | 'support' | 'admin' | 'core' | 'web' | 'gateway' | 'sellers'; /** * Metadata for MCP tools - controls UI display and security */ export interface MCPToolMetadata { category: ToolCategory; defaultEnabled: boolean; adminOnly: boolean; destructive: boolean; requiresConfirmation: boolean; apiEndpoint: string; apiMethod: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; rateLimit?: number; tags?: string[]; } /** * Parameter definition for tool inputs */ export interface ParameterDefinition { type: 'string' | 'number' | 'boolean' | 'object' | 'array'; description: string; enum?: (string | number)[]; default?: any; examples?: any[]; minimum?: number; maximum?: number; pattern?: string; items?: ParameterDefinition; properties?: Record; required?: string[]; } /** * Complete MCP Tool Definition with metadata */ export interface MCPToolDefinition { type: 'function'; function: { name: string; description: string; parameters: { type: 'object'; properties: Record; required?: string[]; }; }; metadata?: MCPToolMetadata; } /** * Tool execution result */ export interface MCPToolResult { success: boolean; output?: string; error?: string; data?: any; } /** * Category default settings */ export declare const CATEGORY_DEFAULTS: Record>; /** * Category UI display info */ export declare const CATEGORY_INFO: Record; //# sourceMappingURL=mcp-types.d.ts.map