UNPKG

@simonecoelhosfo/optimizely-mcp-server

Version:

Optimizely MCP Server for AI assistants with integrated CLI tools

58 lines 2.31 kB
/** * Update Flags Bulk Tool - Individual Module * @description Performs bulk update operations on multiple flags * @since 2025-08-04 * @author Tool Modularization Team * * Migration Status: COMPLETED * Original Method: OptimizelyMCPTools.updateFlags * Complexity: MEDIUM * Dependencies: logger, errorMapper, apiClient */ /** * Creates the Update Flags Bulk tool with injected dependencies * @param deps - Injected dependencies (storage, logger, errorMapper, etc.) * @returns Tool definition with handler */ export function createUpdateFlagsBulkTool(deps) { return { name: 'update_flags_bulk', requiresCache: true, category: 'operations', description: 'Performs bulk update operations on multiple flags', handler: async (args) => { const { project_id: projectId, flags_data: flagsData } = args; try { deps.logger.debug({ projectId, flagCount: flagsData.length }, 'OptimizelyMCPTools.updateFlags: Starting bulk flag update'); const result = await deps.apiClient.updateFlags(projectId, flagsData); deps.logger.debug({ projectId, flagCount: flagsData.length, successful: result.successful || 0, failed: result.failed || 0 }, 'OptimizelyMCPTools.updateFlags: Bulk flag update completed'); return { project_id: projectId, total_flags: flagsData.length, successful: result.successful || 0, failed: result.failed || 0, results: result.results || [], errors: result.errors || [], timestamp: new Date().toISOString() }; } catch (error) { deps.logger.error({ projectId, flagCount: flagsData.length, error: error.message }, 'OptimizelyMCPTools.updateFlags: Failed to bulk update flags'); throw deps.errorMapper.toMCPError(error, 'Failed to bulk update flags'); } } }; } //# sourceMappingURL=UpdateFlagsBulk.js.map