@kya-os/mcp-i
Version:
The TypeScript MCP framework with identity features built-in
34 lines (33 loc) • 1.54 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.httpTransportConfigSchema = exports.corsConfigSchema = void 0;
const zod_1 = require("zod");
const constants_1 = require("../../constants");
// ------------------------------------------------------------
// Cors config schema
// ------------------------------------------------------------
exports.corsConfigSchema = zod_1.z.object({
origin: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string()), zod_1.z.boolean()]).optional(),
methods: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
allowedHeaders: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
exposedHeaders: zod_1.z.union([zod_1.z.string(), zod_1.z.array(zod_1.z.string())]).optional(),
credentials: zod_1.z.boolean().optional(),
maxAge: zod_1.z.number().optional(),
});
// ------------------------------------------------------------
// HTTP Transport config schema
// ------------------------------------------------------------
exports.httpTransportConfigSchema = zod_1.z.union([
zod_1.z.boolean(),
zod_1.z
.object({
port: zod_1.z.number().optional(),
host: zod_1.z.string().optional(),
bodySizeLimit: zod_1.z.number().optional(),
debug: zod_1.z.boolean().optional(),
endpoint: zod_1.z.string().optional(),
cors: exports.corsConfigSchema.optional(),
})
.default(constants_1.DEFAULT_HTTP_CONFIG)
.optional(),
]);