@ignitionai/azure-storage-mcp
Version:
Complete Azure Storage MCP server with CRUD operations, batch processing, schema validation, and advanced querying for Azure Tables, Blobs, Service Bus Queues, and Storage Queues
57 lines (56 loc) • 2.02 kB
TypeScript
import { z } from 'zod';
declare const AzureBlobConfigSchema: z.ZodEffects<z.ZodObject<{
connectionString: z.ZodOptional<z.ZodString>;
accountName: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
accountName?: string;
connectionString?: string;
}, {
accountName?: string;
connectionString?: string;
}>, {
accountName?: string;
connectionString?: string;
}, {
accountName?: string;
connectionString?: string;
}>;
declare const BlobOperationResultSchema: z.ZodObject<{
success: z.ZodBoolean;
data: z.ZodOptional<z.ZodAny>;
error: z.ZodOptional<z.ZodString>;
errorType: z.ZodOptional<z.ZodString>;
}, "strip", z.ZodTypeAny, {
error?: string;
data?: any;
errorType?: string;
success?: boolean;
}, {
error?: string;
data?: any;
errorType?: string;
success?: boolean;
}>;
type AzureBlobConfig = z.infer<typeof AzureBlobConfigSchema>;
type BlobOperationResult = z.infer<typeof BlobOperationResultSchema>;
export declare class AzureBlobTools {
private blobServiceClient;
private config;
constructor(config: AzureBlobConfig);
listContainers(): Promise<BlobOperationResult>;
createContainer(containerName: string, options?: {
publicAccess?: 'container' | 'blob';
}): Promise<BlobOperationResult>;
deleteContainer(containerName: string): Promise<BlobOperationResult>;
listBlobs(containerName: string, prefix?: string): Promise<BlobOperationResult>;
uploadBlob(containerName: string, blobName: string, data: string | Buffer, options?: {
contentType?: string;
metadata?: Record<string, string>;
overwrite?: boolean;
}): Promise<BlobOperationResult>;
downloadBlob(containerName: string, blobName: string): Promise<BlobOperationResult>;
deleteBlob(containerName: string, blobName: string): Promise<BlobOperationResult>;
getBlobProperties(containerName: string, blobName: string): Promise<BlobOperationResult>;
private streamToBuffer;
}
export {};