sfcc-dev-mcp
Version:
MCP server for Salesforce B2C Commerce Cloud development assistance including logs, debugging, and development tools
107 lines • 2.96 kB
TypeScript
/**
* SFCC SFRA Documentation Client
*
* Provides access to SFRA (Storefront Reference Architecture) documentation including
* core classes like Server, Request, Response, QueryString, render module, and comprehensive
* model documentation for account, cart, products, pricing, billing, shipping, and more.
*/
export interface SFRADocument {
title: string;
description: string;
sections: string[];
content: string;
type: 'class' | 'module' | 'model';
category: 'core' | 'product' | 'order' | 'customer' | 'pricing' | 'store' | 'other';
properties?: string[];
methods?: string[];
filename: string;
lastModified?: Date;
}
export interface SFRADocumentSummary {
name: string;
title: string;
description: string;
type: string;
category: string;
filename: string;
}
/**
* Enhanced client for accessing SFRA documentation with dynamic discovery
*/
export declare class SFRAClient {
private cache;
private docsPath;
private documentsCache;
private lastScanTime;
private static readonly SCAN_CACHE_TTL;
private logger;
constructor();
/**
* Dynamically discover all available SFRA documentation files
*/
getAvailableDocuments(): Promise<SFRADocumentSummary[]>;
/**
* Get lightweight metadata for a document without loading full content
*/
private getSFRADocumentMetadata;
/**
* Get a specific SFRA document with full content
*/
getSFRADocument(documentName: string): Promise<SFRADocument | null>;
/**
* Enhanced search across all SFRA documentation with better categorization
*/
searchSFRADocumentation(query: string): Promise<Array<{
document: string;
title: string;
category: string;
type: string;
relevanceScore: number;
matches: Array<{
section: string;
content: string;
lineNumber: number;
}>;
}>>;
/**
* Get documents by category
*/
getDocumentsByCategory(category: string): Promise<SFRADocumentSummary[]>;
/**
* Get all available categories
*/
getAvailableCategories(): Promise<Array<{
category: string;
count: number;
description: string;
}>>;
/**
* Enhanced path validation and construction
*/
private validateAndConstructPath;
/**
* Determine document type from title and content
*/
private determineDocumentType;
/**
* Extract description from document lines
*/
private extractDescription;
/**
* Extract properties from document content
*/
private extractProperties;
/**
* Extract methods from document content
*/
private extractMethods;
/**
* Format document name for display
*/
private formatDocumentName;
/**
* Clear all caches
*/
clearCache(): void;
}
//# sourceMappingURL=sfra-client.d.ts.map