import { describe, expect, it } from 'vitest'; import { QUEUE_MCP_TOOL_DEFINITIONS, buildQueueMcpServer, } from '../src/mcp-server.js'; describe('queue MCP server', () => { it('declares all required phase-1 tools', () => { const toolNames = QUEUE_MCP_TOOL_DEFINITIONS.map((tool) => tool.name).sort(); expect(toolNames).toEqual([ 'queue_claim', 'queue_complete', 'queue_fail', 'queue_get', 'queue_heartbeat', 'queue_list', 'queue_release', 'queue_status', ]); }); it('builds an MCP server instance', () => { const server = buildQueueMcpServer({ openSession: () => Promise.resolve({ repository: { list: () => Promise.resolve([]), get: () => Promise.resolve(null), claim: () => Promise.reject(new Error('not implemented')), heartbeat: () => Promise.reject(new Error('not implemented')), release: () => Promise.reject(new Error('not implemented')), complete: () => Promise.reject(new Error('not implemented')), fail: () => Promise.reject(new Error('not implemented')), }, checkHealth: () => Promise.resolve({ checkedAt: 1, latencyMs: 0, ok: true, response: 'PONG', }), close: () => Promise.resolve(), }), }); expect(server).toBeDefined(); }); });