UNPKG

@grec0/mcp-s2s-asterisk

Version:

MCP server para asistente telefónico conversacional con Asterisk S2S

116 lines (115 loc) 3.11 kB
import { z } from "zod"; // Planka schemas export const PlankaUserSchema = z.object({ id: z.string(), email: z.string(), name: z.string().nullable(), username: z.string(), avatarUrl: z.string().nullable(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaProjectSchema = z.object({ id: z.string(), name: z.string(), background: z.string().nullable(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaBoardSchema = z.object({ id: z.string(), projectId: z.string(), name: z.string(), position: z.number(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaListSchema = z.object({ id: z.string(), boardId: z.string(), name: z.string(), position: z.number(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaLabelSchema = z.object({ id: z.string(), boardId: z.string(), name: z.string(), color: z.string(), createdAt: z.string(), updatedAt: z.string().nullable(), }); // Define the stopwatch schema export const PlankaStopwatchSchema = z.object({ startedAt: z.string().nullable(), total: z.number(), }); export const PlankaCardSchema = z.object({ id: z.string(), listId: z.string(), name: z.string(), description: z.string().nullable(), position: z.number(), dueDate: z.string().nullable(), isCompleted: z.boolean().optional(), stopwatch: PlankaStopwatchSchema.nullable().optional(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaTaskSchema = z.object({ id: z.string(), cardId: z.string(), name: z.string(), isCompleted: z.boolean(), position: z.number(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaCommentSchema = z.object({ id: z.string(), cardId: z.string(), userId: z.string(), text: z.string(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaAttachmentSchema = z.object({ id: z.string(), cardId: z.string(), userId: z.string(), name: z.string(), url: z.string(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaCardMembershipSchema = z.object({ id: z.string(), cardId: z.string(), userId: z.string(), createdAt: z.string(), updatedAt: z.string().nullable(), }); export const PlankaBoardMembershipSchema = z.object({ id: z.string(), boardId: z.string(), userId: z.string(), role: z.enum(["editor", "admin"]), createdAt: z.string(), updatedAt: z.string(), }); export const PlankaProjectMembershipSchema = z.object({ id: z.string(), projectId: z.string(), userId: z.string(), role: z.enum(["editor", "admin"]), createdAt: z.string(), updatedAt: z.string(), }); export const PlankaCardLabelSchema = z.object({ id: z.string(), cardId: z.string(), labelId: z.string(), createdAt: z.string(), updatedAt: z.string(), });