UNPKG

lokalise-mcp

Version:

The Lokalise MCP Server brings Lokalise's localization power to Claude and AI assistants—manage projects, keys, and translations by chat.

193 lines (192 loc) • 7.55 kB
/** * Configuration Schema * Strongly-typed configuration validation using Zod * * This schema defines all environment variables and configuration options * used by the Lokalise MCP server, sourced from: * - manifest.json (DXT package configuration) * - .env and .env.example files * - smithery.yaml (Smithery configuration) * - Runtime environment variables */ import { z } from "zod"; /** * Transport mode for the MCP server */ export declare const TransportModeSchema: z.ZodDefault<z.ZodEnum<["stdio", "http"]>>; /** * Node environment */ export declare const NodeEnvSchema: z.ZodOptional<z.ZodEnum<["development", "test", "production"]>>; /** * HTTP Query Configuration Schema * Configuration that can be passed via HTTP query parameters (Smithery) */ export declare const HttpQueryConfigSchema: z.ZodObject<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodString>; debug_mode: z.ZodOptional<z.ZodBoolean>; }, "passthrough", z.ZodTypeAny, z.objectOutputType<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodString>; debug_mode: z.ZodOptional<z.ZodBoolean>; }, z.ZodTypeAny, "passthrough">, z.objectInputType<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodString>; debug_mode: z.ZodOptional<z.ZodBoolean>; }, z.ZodTypeAny, "passthrough">>; /** * Smithery Configuration Schema * Configuration passed via base64-encoded config parameter from Smithery */ export declare const SmitheryConfigSchema: z.ZodObject<{ LOKALISE_API_KEY: z.ZodString; LOKALISE_API_HOSTNAME: z.ZodDefault<z.ZodString>; debug_mode: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { LOKALISE_API_KEY: string; LOKALISE_API_HOSTNAME: string; debug_mode: boolean; }, { LOKALISE_API_KEY: string; LOKALISE_API_HOSTNAME?: string | undefined; debug_mode?: boolean | undefined; }>; /** * MCP Initialization Configuration Schema * Configuration passed during MCP client initialization */ export declare const McpInitConfigSchema: z.ZodObject<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodString>; DEBUG: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>; debug_mode: z.ZodOptional<z.ZodBoolean>; }, "passthrough", z.ZodTypeAny, z.objectOutputType<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodString>; DEBUG: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>; debug_mode: z.ZodOptional<z.ZodBoolean>; }, z.ZodTypeAny, "passthrough">, z.objectInputType<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodString>; DEBUG: z.ZodOptional<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>; debug_mode: z.ZodOptional<z.ZodBoolean>; }, z.ZodTypeAny, "passthrough">>; /** * Main Runtime Configuration Schema * Complete configuration for the Lokalise MCP server */ export declare const RuntimeConfigSchema: z.ZodObject<{ LOKALISE_API_KEY: z.ZodString; LOKALISE_API_HOSTNAME: z.ZodDefault<z.ZodString>; TRANSPORT_MODE: z.ZodDefault<z.ZodEnum<["stdio", "http"]>>; PORT: z.ZodDefault<z.ZodNumber>; DEBUG: z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>; debug_mode: z.ZodDefault<z.ZodBoolean>; NODE_ENV: z.ZodOptional<z.ZodEnum<["development", "test", "production"]>>; MCP_SERVER_MODE: z.ZodDefault<z.ZodBoolean>; }, "strip", z.ZodTypeAny, { DEBUG: string | boolean; LOKALISE_API_KEY: string; LOKALISE_API_HOSTNAME: string; debug_mode: boolean; TRANSPORT_MODE: "stdio" | "http"; PORT: number; MCP_SERVER_MODE: boolean; NODE_ENV?: "test" | "development" | "production" | undefined; }, { LOKALISE_API_KEY: string; DEBUG?: string | boolean | undefined; NODE_ENV?: "test" | "development" | "production" | undefined; LOKALISE_API_HOSTNAME?: string | undefined; debug_mode?: boolean | undefined; TRANSPORT_MODE?: "stdio" | "http" | undefined; PORT?: number | undefined; MCP_SERVER_MODE?: boolean | undefined; }>; /** * Partial configuration for updates */ export declare const PartialRuntimeConfigSchema: z.ZodObject<{ LOKALISE_API_KEY: z.ZodOptional<z.ZodString>; LOKALISE_API_HOSTNAME: z.ZodOptional<z.ZodDefault<z.ZodString>>; TRANSPORT_MODE: z.ZodOptional<z.ZodDefault<z.ZodEnum<["stdio", "http"]>>>; PORT: z.ZodOptional<z.ZodDefault<z.ZodNumber>>; DEBUG: z.ZodOptional<z.ZodDefault<z.ZodUnion<[z.ZodBoolean, z.ZodString]>>>; debug_mode: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; NODE_ENV: z.ZodOptional<z.ZodOptional<z.ZodEnum<["development", "test", "production"]>>>; MCP_SERVER_MODE: z.ZodOptional<z.ZodDefault<z.ZodBoolean>>; }, "strip", z.ZodTypeAny, { DEBUG?: string | boolean | undefined; NODE_ENV?: "test" | "development" | "production" | undefined; LOKALISE_API_KEY?: string | undefined; LOKALISE_API_HOSTNAME?: string | undefined; debug_mode?: boolean | undefined; TRANSPORT_MODE?: "stdio" | "http" | undefined; PORT?: number | undefined; MCP_SERVER_MODE?: boolean | undefined; }, { DEBUG?: string | boolean | undefined; NODE_ENV?: "test" | "development" | "production" | undefined; LOKALISE_API_KEY?: string | undefined; LOKALISE_API_HOSTNAME?: string | undefined; debug_mode?: boolean | undefined; TRANSPORT_MODE?: "stdio" | "http" | undefined; PORT?: number | undefined; MCP_SERVER_MODE?: boolean | undefined; }>; /** * TypeScript types derived from schemas */ export type TransportMode = z.infer<typeof TransportModeSchema>; export type NodeEnv = z.infer<typeof NodeEnvSchema>; export type HttpQueryConfig = z.infer<typeof HttpQueryConfigSchema>; export type SmitheryConfig = z.infer<typeof SmitheryConfigSchema>; export type McpInitConfig = z.infer<typeof McpInitConfigSchema>; export type RuntimeConfig = z.infer<typeof RuntimeConfigSchema>; export type PartialRuntimeConfig = z.infer<typeof PartialRuntimeConfigSchema>; /** * Configuration validation functions */ /** * Validate and parse runtime configuration */ export declare function validateRuntimeConfig(config: unknown): RuntimeConfig; /** * Safely parse runtime configuration (returns result object) */ export declare function safeValidateRuntimeConfig(config: unknown): z.SafeParseReturnType<{ LOKALISE_API_KEY: string; DEBUG?: string | boolean | undefined; NODE_ENV?: "test" | "development" | "production" | undefined; LOKALISE_API_HOSTNAME?: string | undefined; debug_mode?: boolean | undefined; TRANSPORT_MODE?: "stdio" | "http" | undefined; PORT?: number | undefined; MCP_SERVER_MODE?: boolean | undefined; }, { DEBUG: string | boolean; LOKALISE_API_KEY: string; LOKALISE_API_HOSTNAME: string; debug_mode: boolean; TRANSPORT_MODE: "stdio" | "http"; PORT: number; MCP_SERVER_MODE: boolean; NODE_ENV?: "test" | "development" | "production" | undefined; }>; /** * Validate HTTP query configuration */ export declare function validateHttpQueryConfig(config: unknown): HttpQueryConfig; /** * Validate Smithery configuration */ export declare function validateSmitheryConfig(config: unknown): SmitheryConfig; /** * Validate MCP initialization configuration */ export declare function validateMcpInitConfig(config: unknown): McpInitConfig; /** * Default configuration values */ export declare const DEFAULT_CONFIG: Partial<RuntimeConfig>;