firewalla-mcp-server
Version:
Model Context Protocol (MCP) server for Firewalla MSP API - Provides real-time network monitoring, security analysis, and firewall management through 28 specialized tools compatible with any MCP client
66 lines • 2.6 kB
TypeScript
/**
* Response standardization utilities
*
* Provides consistent response formatting across all MCP tools while maintaining
* backward compatibility through configuration-based format selection.
*/
import type { StandardSearchResponse, StandardPaginatedResponse, StandardStatisticalResponse, SearchMetadata, PaginationMetadata, StatisticalMetadata, ResponseCategory } from '../types.js';
/**
* Response standardizer class providing unified formatting utilities
*/
export declare class ResponseStandardizer {
/**
* Convert data and metadata to standardized search response format
*
* @param data - Array of search results
* @param metadata - Search operation metadata
* @returns Standardized search response
*/
static toSearchResponse<T>(data: T[], metadata: SearchMetadata): StandardSearchResponse<T>;
/**
* Convert data and metadata to standardized paginated response format
*
* @param data - Array of paginated results
* @param metadata - Pagination operation metadata
* @returns Standardized paginated response
*/
static toPaginatedResponse<T>(data: T[], metadata: PaginationMetadata): StandardPaginatedResponse<T>;
/**
* Convert data and metadata to standardized statistical response format
*
* @param data - Array of statistical results
* @param metadata - Statistical analysis metadata
* @returns Standardized statistical response
*/
static toStatisticalResponse<T>(data: T[], metadata: StatisticalMetadata): StandardStatisticalResponse<T>;
/**
* Determine query complexity based on query string analysis
*
* @param query - Query string to analyze
* @returns Complexity level
* @private
*/
private static determineQueryComplexity;
}
/**
* Utility functions for response format detection and conversion
*/
export declare class ResponseFormatUtils {
/**
* Detect the category of response based on content and tool name
*
* @param toolName - Name of the tool
* @param responseData - Response data to analyze
* @returns Detected response category
*/
static detectResponseCategory(toolName: string, responseData: any): ResponseCategory;
/**
* Check if a response follows the standard format
*
* @param response - Response to check
* @param category - Expected response category
* @returns True if response follows standard format
*/
static isStandardFormat(response: any, category: ResponseCategory): boolean;
}
//# sourceMappingURL=response-standardizer.d.ts.map