boscli_health_schema
Check BOS database schema integrity to identify issues and ensure data consistency.
Instructions
Check BOS database schema integrity
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Implementation Reference
- src/tools/health.ts:30-34 (handler)Handler for boscli_health_schema tool - makes GET request to /boscli/health/schema endpoint via BosApiClient
name: 'boscli_health_schema', description: 'Check BOS database schema integrity', schema: {}, handler: async (_, client) => client.get('/boscli/health/schema'), }, - src/tools/health.ts:32-32 (schema)Empty schema object - no input parameters required for this tool
schema: {}, - src/tools/health.ts:4-35 (registration)healthTools array export containing boscli_health_schema and other health check tools
export const healthTools: McpTool[] = [ { name: 'boscli_health_check', description: 'Full BOS system health check - modules, database, cache, routes', schema: {}, handler: async (_, client) => client.get('/boscli/health'), }, { name: 'boscli_health_modules', description: 'Check health of all BOS modules', schema: {}, handler: async (_, client) => client.get('/boscli/health/modules'), }, { name: 'boscli_health_database', description: 'Check BOS database connectivity', schema: {}, handler: async (_, client) => client.get('/boscli/health/database'), }, { name: 'boscli_health_cache', description: 'Check BOS cache systems', schema: {}, handler: async (_, client) => client.get('/boscli/health/cache'), }, { name: 'boscli_health_schema', description: 'Check BOS database schema integrity', schema: {}, handler: async (_, client) => client.get('/boscli/health/schema'), }, ]; - src/index.ts:27-46 (registration)All tools combined into allTools array and registered via server.tool() loop (lines 55-61)
const allTools: McpTool[] = [ ...healthTools, ...moduleTools, ...routeTools, ...cacheTools, ...systemTools, ...productTools, ...orderTools, ...cartTools, ...customerTools, ...inventoryTools, ...voucherTools, ...loyaltyTools, ...storeTools, ...checkoutTools, ...promotionTools, ...engagementTools, ...erpTools, ...smartTools, ]; - src/tools/index.ts:21-62 (helper)toZodSchema helper converts tool schema definitions to Zod schemas for MCP SDK registration
export function toZodSchema(schema: Record<string, any>): z.ZodObject<any> { const shape: Record<string, z.ZodTypeAny> = {}; for (const [key, def] of Object.entries(schema)) { let field: z.ZodTypeAny; switch (def.type) { case 'number': field = z.number(); break; case 'boolean': field = z.boolean(); break; case 'array': field = z.array(z.any()); break; case 'object': field = z.record(z.any()); break; case 'string': default: if (def.enum) { field = z.enum(def.enum); } else { field = z.string(); } break; } if (def.description) { field = field.describe(def.description); } if (def.optional) { field = field.optional(); } shape[key] = field; } return z.object(shape); }