UNPKG

@utaba/ucm-mcp-server

Version:

Universal Context Manager MCP Server - AI-native artifact management

75 lines 3.21 kB
import { ArtifactData, AuthorData } from '../types/UcmApiTypes.js'; export declare class UcmApiClient { private baseUrl; private authToken?; private authorId?; private client; constructor(baseUrl: string, authToken?: string | undefined, timeout?: number, authorId?: string | undefined); private setupInterceptors; private ensureClient; getAuthors(): Promise<AuthorData[]>; getAuthor(authorId: string): Promise<AuthorData | null>; private buildApiPath; getArtifact(author?: string, repository?: string, category?: string, subcategory?: string, filename?: string, version?: string): Promise<ArtifactData>; getLatestArtifact(author?: string, repository?: string, category?: string, subcategory?: string, filename?: string): Promise<ArtifactData>; listArtifacts(author?: string, repository?: string, category?: string, subcategory?: string, offset?: number, limit?: number): Promise<{ data: any[]; pagination: { offset: number; limit: number; total: number; }; _links?: any; }>; searchArtifacts(filters?: { repository?: string; category?: string; technology?: string; subcategory?: string; offset?: number; limit?: number; }): Promise<ArtifactData[]>; publishArtifact(author: string, repository: string, category: string, subcategory: string, data: any): Promise<ArtifactData>; updateArtifact(author: string, repository: string, category: string, subcategory: string, filename: string, version: string, data: any): Promise<ArtifactData>; deleteArtifact(author: string, repository: string, category: string, subcategory: string, filename: string, version?: string): Promise<any>; getArtifactVersions(author: string, repository: string, category: string, subcategory: string, filename: string): Promise<any>; getCategories(): Promise<string[]>; healthCheck(): Promise<{ status: string; timestamp: string; }>; getQuickstart(): Promise<string>; getAuthorIndex(author: string, repository?: string): Promise<string>; /** * Cleanup method to properly dispose of HTTP client resources * This helps prevent memory leaks from accumulated AbortSignal listeners */ cleanup(): void; /** * Check if the client is still available for use */ isAvailable(): boolean; createRepository(author: string, data: { repositoryName: string; displayName?: string; description?: string; isPublic?: boolean; }): Promise<any>; getRepository(author: string, repository: string): Promise<any>; updateRepository(author: string, repository: string, data: { displayName?: string; description?: string; isPublic?: boolean; }): Promise<any>; deleteRepository(author: string, repository: string): Promise<any>; listRepositories(author: string, offset?: number, limit?: number): Promise<{ data: any[]; pagination: { offset: number; limit: number; total: number; }; _links?: any; }>; } //# sourceMappingURL=UcmApiClient.d.ts.map