UNPKG

sourcesyncai-mcp

Version:

[![smithery badge](https://smithery.ai/badge/@pbteja1998/sourcesyncai-mcp)](https://smithery.ai/server/@pbteja1998/sourcesyncai-mcp)

117 lines (116 loc) 3.07 kB
import { apiClient } from "./api-client.js"; import { CreateNamespaceSchema, ListNamespacesSchema, GetNamespaceSchema, UpdateNamespaceSchema, DeleteNamespaceSchema } from "./schemas.js"; /** * Create a new namespace */ export async function createNamespace(params) { try { // Use the existing apiClient to create a namespace const result = await apiClient.createNamespace({ name: params.name, fileStorageConfig: {}, // Default config vectorStorageConfig: {}, // Default config embeddingModelConfig: {}, // Default config tenantId: params.tenantId }); return { success: true, namespace: result }; } catch (error) { return { success: false, message: error.message || "Failed to create namespace", error }; } } /** * List all namespaces */ export async function listNamespaces() { try { const result = await apiClient.listNamespaces(); return { success: true, namespaces: result }; } catch (error) { return { success: false, message: error.message || "Failed to list namespaces", error }; } } /** * Get a namespace by ID */ export async function getNamespace(params) { try { if (!params.namespaceId) { throw new Error("Namespace ID is required"); } const result = await apiClient.getNamespace(params.namespaceId); return { success: true, namespace: result }; } catch (error) { return { success: false, message: error.message || "Failed to get namespace", error }; } } /** * Update a namespace */ export async function updateNamespace(params) { try { if (!params.namespaceId) { throw new Error("Namespace ID is required"); } const result = await apiClient.updateNamespace(params.namespaceId, { tenantId: params.tenantId }); return { success: true, namespace: result }; } catch (error) { return { success: false, message: error.message || "Failed to update namespace", error }; } } /** * Delete a namespace */ export async function deleteNamespace(params) { try { if (!params.namespaceId) { throw new Error("Namespace ID is required"); } const result = await apiClient.deleteNamespace(params.namespaceId); return { success: true, message: "Namespace deleted successfully" }; } catch (error) { return { success: false, message: error.message || "Failed to delete namespace", error }; } } export { CreateNamespaceSchema, ListNamespacesSchema, GetNamespaceSchema, UpdateNamespaceSchema, DeleteNamespaceSchema };