mcp-casual-interview
Version:
MCP server for casual interview preparation workflow management
31 lines • 1.34 kB
JavaScript
import { z } from 'zod';
// Workflow state enum for request parameter
const WorkflowState = z.enum([
'information_initially_registered', // 初期登録
'career_summary_created', // サマリ
'match_position_determined', // ポジション判定
'match_degree_prediagnosed', // マッチ度診断
'attract_plan_determined' // fix
]);
// Input schema - requires completed step
export const progressUpdateSchema = z.object({
completedStep: WorkflowState.describe('終了したワークフローステップ'),
notionUrl: z.string().url().optional().describe('候補者の情報と事前準備結果をまとめる対象のNotionページのURL')
});
// Workflow state enum for response (includes additional states)
const ResponseWorkflowState = z.enum([
'not_started',
'initial_info_registered',
'career_summary_created',
'match_position_determined',
'match_degree_diagnosed',
'attract_plan_determined',
'completed'
]);
// Output schema for structured response
export const progressUpdateOutputSchema = z.object({
currentState: ResponseWorkflowState.describe('更新後の現在のワークフロー状態'),
nextAction: z.string().describe('次に行うべきアクションの指示')
});
export const toolParams = progressUpdateSchema.shape;
//# sourceMappingURL=schema.js.map