@simonecoelhosfo/optimizely-mcp-server
Version:
Optimizely MCP Server for AI assistants with integrated CLI tools
87 lines • 2.94 kB
TypeScript
/**
* OpenAPI Reference Handler - Core business logic for OpenAPI schema queries
* @description Handles all OpenAPI schema-related queries including schemas, operations,
* field details, dependencies, examples, and validation rules.
*/
import { SchemaResponse, OperationResponse, FieldResponse, DependencyResponse, ExamplesResponse, ValidationResponse, RelationshipsResponse } from './OpenAPITypes.js';
export declare class OpenAPIReferenceHandler {
private webSpec;
private featureSpec;
private webParser;
private featureParser;
constructor();
/**
* Initialize OpenAPI parsers for both platforms
*/
private initializeParsers;
/**
* Get the appropriate parser based on project ID or default to web
*/
private getParserForProject;
/**
* Handle schema information queries
*/
handleSchemaQuery(entityType: string, projectId?: string): Promise<SchemaResponse>;
/**
* Handle operation information queries
*/
handleOperationQuery(entityType: string, operation: string): Promise<OperationResponse>;
/**
* Handle field detail queries
*/
handleFieldQuery(entityType: string, fieldName: string): Promise<FieldResponse>;
/**
* Handle dependency queries
*/
handleDependencyQuery(entityType: string, operation: string): Promise<DependencyResponse>;
/**
* Handle example queries
*/
handleExamplesQuery(entityType: string, operation?: string): Promise<ExamplesResponse>;
/**
* Handle validation queries
*/
handleValidationQuery(entityType: string): Promise<ValidationResponse>;
/**
* Handle relationships queries
*/
handleRelationshipsQuery(entityType: string): Promise<RelationshipsResponse>;
private convertReadonlyEnums;
private getEndpointForOperation;
private getBaseUrlForPlatform;
private generateExampleUrl;
private generateCurlExample;
private extractRequiredParameters;
private extractOptionalParameters;
private generateExamplePayload;
private generateBasicExample;
private generateAdvancedExample;
private generatePlatformExample;
private generateExampleForType;
private getBusinessRules;
private getPlatformValidationRules;
private getCommonValidationErrors;
private calculateEntityLevel;
private getEntityPosition;
/**
* Extract field-specific examples from template
*/
private extractFieldExamples;
/**
* Extract use case examples from template
*/
private extractUseCaseExamples;
/**
* Extract validation hints from template
*/
private extractValidationHints;
/**
* Extract traffic allocation rules from template
*/
private extractTrafficAllocationRules;
/**
* Extract type-specific validation from template
*/
private extractTypeValidation;
}
//# sourceMappingURL=OpenAPIReferenceHandler.d.ts.map