UNPKG

mcp-adr-analysis-server

Version:

MCP server for analyzing Architectural Decision Records and project architecture

79 lines 2.6 kB
/** * Content masking utilities using prompt-driven AI analysis * Implements intelligent sensitive content detection and masking */ export interface SensitiveItem { type: string; category: string; content: string; startPosition: number; endPosition: number; confidence: number; reasoning: string; severity: 'low' | 'medium' | 'high' | 'critical'; suggestedMask: string; } export interface SensitiveContentAnalysis { hasSensitiveContent: boolean; detectedItems: SensitiveItem[]; recommendations: string[]; overallRisk: 'low' | 'medium' | 'high' | 'critical'; summary: string; } export interface MaskingResult { maskedContent: string; maskingApplied: Array<{ originalContent: string; maskedWith: string; position: string; reason: string; }>; preservedStructure: boolean; readabilityScore: number; securityScore: number; recommendations: string[]; } export interface CustomPattern { name: string; description: string; regex: string; category: string; severity: 'low' | 'medium' | 'high' | 'critical'; examples: string[]; falsePositives: string[]; maskingStrategy: 'full' | 'partial' | 'placeholder' | 'environment'; } /** * Analyze content for sensitive information using AI prompts */ export declare function analyzeSensitiveContent(content: string, contentType?: 'code' | 'documentation' | 'configuration' | 'logs' | 'general', userDefinedPatterns?: string[]): Promise<{ analysisPrompt: string; instructions: string; }>; /** * Generate content masking prompt for AI processing */ export declare function generateMaskingInstructions(content: string, detectedSensitiveItems: SensitiveItem[], maskingStrategy?: 'full' | 'partial' | 'placeholder' | 'environment'): Promise<{ maskingPrompt: string; instructions: string; }>; /** * Generate custom pattern configuration prompt */ export declare function generateCustomPatternConfiguration(projectContext: string, existingPatterns?: string[]): Promise<{ configurationPrompt: string; instructions: string; }>; /** * Apply basic masking patterns (fallback when AI is not available) */ export declare function applyBasicMasking(content: string, maskingStrategy?: 'full' | 'partial' | 'placeholder'): string; /** * Validate that content has been properly masked */ export declare function validateMasking(originalContent: string, maskedContent: string): { isValid: boolean; issues: string[]; securityScore: number; }; //# sourceMappingURL=content-masking.d.ts.map