UNPKG

@answerai/answeragent-mcp

Version:

A lightweight Model Context Protocol (MCP) server for Answer AI chatflow and document store management

45 lines (44 loc) 1.58 kB
import { z } from "zod"; // Define schema for parsed flow data structure export const ParsedNodeSchema = z.object({ id: z.string(), type: z.string(), label: z.string(), description: z.string().optional(), category: z.string().optional(), credential: z.string().optional(), prompts: z.object({ systemMessagePrompt: z.string().optional(), humanMessagePrompt: z.string().optional(), agentInstructions: z.string().optional(), }).optional(), }); export const ParsedFlowDataSchema = z.object({ nodes: z.array(ParsedNodeSchema), credentialIds: z.array(z.string()), }); export const ChatflowSchema = z.object({ id: z.string().uuid().optional(), name: z.string(), description: z.string().optional(), visibility: z.string().optional(), flowData: z.string().optional(), deployed: z.boolean().optional(), isPublic: z.boolean().optional(), apikeyid: z.string().optional(), chatbotConfig: z.string().optional(), apiConfig: z.string().optional(), analytic: z.string().optional(), speechToText: z.string().optional(), category: z.string().optional(), type: z.string().optional(), userId: z.string().optional(), organizationId: z.string().optional(), createdDate: z.string().datetime().optional(), updatedDate: z.string().datetime().optional(), deleteDate: z.string().datetime().optional(), badge: z.string().optional(), isOwner: z.boolean().optional(), canEdit: z.boolean().optional(), parsedFlowData: ParsedFlowDataSchema.optional(), });