UNPKG

@utaba/ucm-mcp-server

Version:

Universal Context Manager MCP Server - AI Productivity Platform

157 lines 5.92 kB
import { ArtifactData, AuthorData } from '../types/UcmApiTypes.js'; export declare class UcmLocalApiClient { private baseUrl; private authToken?; private authorId?; private organizationId?; private client; constructor(baseUrl: string, authToken?: string | undefined, timeout?: number, authorId?: string | undefined, organizationId?: string | undefined); /** * Get organizationId from constructor or throw error * For local MCP server, organizationId should be provided during initialization */ getOrganizationId(): Promise<string>; 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[]>; searchArtifactsByText(searchParams: { searchText?: string; namespace?: string; author?: string; repository?: string; category?: string; subcategory?: string; filename?: string; tags?: string; offset?: number; limit?: number; }): Promise<{ data: any[]; pagination: { offset: number; limit: number; total: number; hasMore: boolean; }; _links?: any; }>; 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>; getAuthorRecents(author: 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; }): Promise<any>; getRepository(author: string, repository: string): Promise<any>; updateRepository(author: string, repository: string, data: { displayName?: string; description?: string; }): 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; }>; submitFeedback(data: { title: string; body: string; reportType: 'issue' | 'feedback'; tags?: string; }): Promise<any>; editArtifactMetadata(author: string, repository: string, category: string, subcategory: string, filename: string, data: { updateDescription?: string; updateNamespace?: string; updateFilename?: string; updateMimeType?: string; updateTechnology?: string; updateTags?: string; }): Promise<any>; /** * Generate markdown for SharePoint connections (safe, non-sensitive data only) */ sharePointGenerateConnectionsMarkdown(organizationId: string, params: { limit?: number; offset?: number; }): Promise<any>; /** * List SharePoint connections for an organization (includes sensitive data - use with caution) */ sharePointListConnections(organizationId: string, params: { limit?: number; offset?: number; }): Promise<any>; /** * Search SharePoint documents using Microsoft Search API */ sharePointSearch(organizationId: string, connectionId: string, params: { query: string; limit?: number; offset?: number; fileType?: string; }): Promise<any>; /** * List folders and files in SharePoint with pagination */ sharePointListFolders(organizationId: string, connectionId: string, params: { folderPath?: string; includeFiles?: boolean; recursive?: boolean; limit?: number; offset?: number; }): Promise<any>; /** * Read SharePoint file content with support for both fileUrl and legacy fileId */ sharePointReadFile(organizationId: string, connectionId: string, params: { fileUrl?: string; fileId?: string; fileName?: string; extractMetadata?: boolean; }): Promise<any>; } //# sourceMappingURL=UcmApiClient.d.ts.map