UNPKG

@the_cfdude/productboard-mcp

Version:

Model Context Protocol server for Productboard REST API with dynamic tool loading

65 lines (64 loc) 2.04 kB
/** * Bulk operations tools with diff-only focus * Provides efficient bulk update capabilities with change tracking */ import { ToolDefinition } from '../types/tool-types.js'; /** * Perform batch updates with diff tracking */ export declare function performBulkUpdate(args: { entityType: 'features' | 'notes' | 'companies' | 'users' | 'objectives'; updates: Array<{ id: string; changes: Record<string, unknown>; expectedVersion?: string; metadata?: Record<string, unknown>; }>; batchSize?: number; concurrency?: number; continueOnError?: boolean; validateBeforeUpdate?: boolean; trackChanges?: boolean; diffFormat?: 'summary' | 'detailed' | 'compact'; includeUnchanged?: boolean; instance?: string; workspaceId?: string; }): Promise<unknown>; /** * Compare entities and generate diff report without making changes */ export declare function compareEntities(args: { entityType: 'features' | 'notes' | 'companies' | 'users' | 'objectives'; comparisons: Array<{ id: string; proposedChanges: Record<string, unknown>; }>; diffFormat?: 'summary' | 'detailed' | 'compact'; highlightSignificant?: boolean; includeUnchanged?: boolean; instance?: string; workspaceId?: string; }): Promise<unknown>; /** * Validate bulk update request without executing */ export declare function validateBulkUpdate(args: { entityType: 'features' | 'notes' | 'companies' | 'users' | 'objectives'; updates: Array<{ id: string; changes: Record<string, unknown>; expectedVersion?: string; }>; checkExistence?: boolean; validateFields?: boolean; instance?: string; workspaceId?: string; }): Promise<unknown>; /** * Tool handler function */ export declare function handleBulkOperationsTool(operation: string, args: Record<string, unknown>): Promise<unknown>; /** * Setup bulk operations tools definitions */ export declare function setupBulkOperationsTools(): ToolDefinition[];