mcp-ts-template
Version:
A production-grade TypeScript template for building robust Model Context Protocol (MCP) servers, featuring built-in observability with OpenTelemetry, advanced error handling, comprehensive utilities, and a modular architecture.
69 lines • 2.41 kB
TypeScript
/**
* @fileoverview Loads, validates, and exports application configuration.
* This module centralizes configuration management, sourcing values from
* environment variables and `package.json`. It uses Zod for schema validation
* to ensure type safety and correctness of configuration parameters.
*
* @module src/config/index
*/
export declare const config: {
pkg: {
name: string;
version: string;
};
mcpServerName: string;
mcpServerVersion: string;
logLevel: string;
logsPath: string | null;
environment: string;
mcpTransportType: "stdio" | "http";
mcpSessionMode: "stateless" | "stateful" | "auto";
mcpHttpPort: number;
mcpHttpHost: string;
mcpHttpEndpointPath: string;
mcpHttpMaxPortRetries: number;
mcpHttpPortRetryDelayMs: number;
mcpStatefulSessionStaleTimeoutMs: number;
mcpAllowedOrigins: string[] | undefined;
mcpAuthSecretKey: string | undefined;
mcpAuthMode: "jwt" | "oauth" | "none";
oauthIssuerUrl: string | undefined;
oauthJwksUri: string | undefined;
oauthAudience: string | undefined;
devMcpClientId: string | undefined;
devMcpScopes: string[] | undefined;
openrouterAppUrl: string;
openrouterAppName: string;
openrouterApiKey: string | undefined;
llmDefaultModel: string;
llmDefaultTemperature: number | undefined;
llmDefaultTopP: number | undefined;
llmDefaultMaxTokens: number | undefined;
llmDefaultTopK: number | undefined;
llmDefaultMinP: number | undefined;
oauthProxy: {
authorizationUrl: string | undefined;
tokenUrl: string | undefined;
revocationUrl: string | undefined;
issuerUrl: string | undefined;
serviceDocumentationUrl: string | undefined;
defaultClientRedirectUris: string[] | undefined;
} | undefined;
supabase: {
url: string;
anonKey: string;
serviceRoleKey: string | undefined;
} | undefined;
openTelemetry: {
enabled: boolean;
serviceName: string;
serviceVersion: string;
tracesEndpoint: string | undefined;
metricsEndpoint: string | undefined;
samplingRatio: number;
logLevel: "NONE" | "ERROR" | "WARN" | "INFO" | "DEBUG" | "VERBOSE" | "ALL";
};
};
export declare const logLevel: string;
export declare const environment: string;
//# sourceMappingURL=index.d.ts.map