Files
mosaic/packages/queue/src/mcp-tool-schemas.ts
2026-03-06 22:44:05 +00:00

45 lines
1.2 KiB
TypeScript

import { z } from 'zod';
import { TASK_STATUSES } from './task.js';
export const queueListToolInputSchema = z.object({
project: z.string().min(1).optional(),
mission: z.string().min(1).optional(),
status: z.enum(TASK_STATUSES).optional(),
});
export const queueGetToolInputSchema = z.object({
taskId: z.string().min(1),
});
export const queueClaimToolInputSchema = z.object({
taskId: z.string().min(1),
agentId: z.string().min(1),
ttlSeconds: z.number().int().positive(),
});
export const queueHeartbeatToolInputSchema = z.object({
taskId: z.string().min(1),
agentId: z.string().min(1).optional(),
ttlSeconds: z.number().int().positive().optional(),
});
export const queueReleaseToolInputSchema = z.object({
taskId: z.string().min(1),
agentId: z.string().min(1).optional(),
});
export const queueCompleteToolInputSchema = z.object({
taskId: z.string().min(1),
agentId: z.string().min(1).optional(),
summary: z.string().min(1).optional(),
});
export const queueFailToolInputSchema = z.object({
taskId: z.string().min(1),
agentId: z.string().min(1).optional(),
reason: z.string().min(1),
});
export const queueStatusToolInputSchema = z.object({});