dbx-mcp-server
Version:
A Model Context Protocol server for Dropbox integration with AI-powered PDF analysis, multi-directory indexing, and parallel processing
55 lines (54 loc) • 1.73 kB
TypeScript
export interface FieldConfig {
type: 'string' | 'number' | 'boolean' | 'array' | 'object';
required?: boolean;
description?: string;
enum?: string[];
items?: FieldConfig;
properties?: Record<string, FieldConfig>;
minimum?: number;
maximum?: number;
}
export interface DocumentTypeConfig {
name: string;
description: string;
enabled: boolean;
fields: Record<string, FieldConfig>;
prompt?: {
classification?: string;
extraction?: string;
guidelines?: string[];
};
}
export interface SchemaConfiguration {
version: string;
globalPrompt: {
basePrompt: string;
classification: string;
guidelines: string[];
};
documentTypes: Record<string, DocumentTypeConfig>;
}
export declare class SchemaManager {
private config;
private configPath;
constructor(configPath?: string);
private loadConfiguration;
private validateConfiguration;
saveConfiguration(): void;
getConfiguration(): SchemaConfiguration;
getDocumentTypes(): string[];
getDocumentTypeConfig(typeName: string): DocumentTypeConfig | null;
generateJSONSchema(): object;
private convertFieldConfigToJSONSchema;
generateAnalysisPrompt(): string;
generateDatabaseSchema(): string[];
private getSQLType;
private getTableName;
addDocumentType(config: DocumentTypeConfig): void;
updateDocumentType(typeName: string, updates: Partial<DocumentTypeConfig>): void;
removeDocumentType(typeName: string): void;
updateGlobalPrompt(updates: Partial<SchemaConfiguration['globalPrompt']>): void;
private getDefaultConfiguration;
}
declare let schemaManager: SchemaManager;
export { schemaManager };