UNPKG

survey-mcp-server

Version:

Survey management server handling survey creation, response collection, analysis, and reporting with database access for data management

63 lines (62 loc) 2.19 kB
/** * Secure Tool Handler - Refactored to use service layer with proper validation */ import { ToolArguments, ToolResponse } from '../types/index.js'; import { MiddlewareOptions } from '../middleware/index.js'; export interface ToolContext { toolName: string; sessionId?: string; userId?: string; timestamp: Date; correlationId: string; } export interface ToolExecutionOptions extends MiddlewareOptions { enableAuditLogging?: boolean; enableMetrics?: boolean; maxExecutionTime?: number; } export declare class SecureToolHandler { private databaseService; private searchService; private externalApiService; private executionCount; constructor(); handleCallTool(name: string, arguments_: ToolArguments, options?: ToolExecutionOptions): Promise<ToolResponse>; private executeSecureTool; private universalCertificateSurveySearch; private listExtendedCertificateRecords; private listRecordsExpiringWithinDays; private listRecordsByStatus; private getClassCertificateStatus; private getClassSurveyStatus; private getCocNotesMemoStatus; private getVesselDryDockingStatus; private getNextPeriodicalSurveyDetails; private getCmsItemsStatus; private getExpiredCertificatesFromShippalm; private writeCasefileData; private retrieveCasefileData; private getFleetAnnualSurveyStatus; private getFleetDryDockingStatus; private getFleetIhmCertificateStatus; private getFleetLsaFfaCertificateStatus; private classCcsSurveyStatusDownload; private classNkSurveyStatusDownload; private classKrSurveyStatusDownload; private classDnvSurveyStatusDownload; private classLrSurveyStatusDownload; private classBvSurveyStatusDownload; private classAbsSurveyStatusDownload; private buildFilterString; private convertCertificateDates; private sanitizeDocument; private storeSearchAnalytics; private logToolExecution; private updateExecutionMetrics; private generateCorrelationId; getExecutionMetrics(): { [toolName: string]: number; }; resetMetrics(): void; } export declare const secureToolHandler: SecureToolHandler;