@kya-os/mcp-i
Version:
The TypeScript MCP framework with identity features built-in
90 lines (89 loc) • 2.3 kB
JavaScript
;
/**
* Node.js Runtime Configuration
*
* Platform-specific configuration for MCP-I running on Node.js.
* Extends the base MCP-I configuration with Node-specific runtime concerns.
*
* @module @kya-os/mcp-i/config
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.defaultNodeBuildConfig = exports.defaultNodeRuntimeConfig = void 0;
exports.createNodeRuntimeConfig = createNodeRuntimeConfig;
exports.createNodeBuildConfig = createNodeBuildConfig;
/**
* Default Node.js runtime configuration
*/
exports.defaultNodeRuntimeConfig = {
environment: 'development',
server: {
port: 3000,
host: '0.0.0.0',
cors: true,
timeout: 30000
},
storage: {
type: 'memory'
},
nodeEnv: {
environment: 'development',
debug: false,
envPrefix: 'MCPI_'
}
};
/**
* Default Node.js build configuration
*/
exports.defaultNodeBuildConfig = {
outputDir: 'dist',
sourceMaps: true,
bundleDependencies: false,
toolRegistry: {
include: true,
path: './tool-registry.json',
generateTypes: true
},
optimization: {
minify: false,
treeShaking: true,
target: 'node18'
}
};
/**
* Create a Node.js runtime configuration with defaults
*/
function createNodeRuntimeConfig(config) {
return {
...exports.defaultNodeRuntimeConfig,
...config,
server: {
...exports.defaultNodeRuntimeConfig.server,
...config?.server
},
storage: config?.storage ? {
...exports.defaultNodeRuntimeConfig.storage,
...config.storage
} : exports.defaultNodeRuntimeConfig.storage,
nodeEnv: {
...exports.defaultNodeRuntimeConfig.nodeEnv,
...config?.nodeEnv
}
};
}
/**
* Create a Node.js build configuration with defaults
*/
function createNodeBuildConfig(config) {
return {
...exports.defaultNodeBuildConfig,
...config,
toolRegistry: {
...exports.defaultNodeBuildConfig.toolRegistry,
...config?.toolRegistry
},
optimization: {
...exports.defaultNodeBuildConfig.optimization,
...config?.optimization
}
};
}