smart-thinking-mcp
Version:
Un serveur MCP avancé pour le raisonnement multi-dimensionnel, adaptatif et collaboratif
44 lines • 2.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.createSmartThinkingServer = exports.configSchema = void 0;
exports.default = createServer;
const zod_1 = require("zod");
const smart_thinking_server_1 = require("./server/smart-thinking-server");
const ModeSchema = zod_1.z.enum(['full', 'connector']).describe('Mode de disponibilite des outils exposees');
const LogLevelSchema = zod_1.z.enum(['silent', 'error', 'warn', 'info', 'debug']);
exports.configSchema = zod_1.z.object({
mode: ModeSchema.default('full').describe('Mode full: smartthinking+search+fetch, mode connector: search+fetch'),
includePrompts: zod_1.z.boolean().default(true).describe('Expose les prompts MCP du serveur'),
includeResources: zod_1.z.boolean().default(true).describe('Expose les ressources MCP du serveur'),
enableExternalTools: zod_1.z.boolean().default(false).describe('Active les integrations externes optionnelles de ToolIntegrator'),
logLevel: LogLevelSchema.default('info').describe('Niveau de logs runtime pour Smart-Thinking'),
}).default({
mode: 'full',
includePrompts: true,
includeResources: true,
enableExternalTools: false,
logLevel: 'info',
});
function resolveServerOptions(config) {
return {
includeSmartThinkingTool: config.mode !== 'connector',
includePrompts: config.includePrompts,
includeResources: config.includeResources,
};
}
function applyRuntimeConfig(config) {
process.env.SMART_THINKING_ENABLE_EXTERNAL_TOOLS = config.enableExternalTools ? 'true' : 'false';
if (!process.env.SMART_THINKING_LOG_LEVEL) {
process.env.SMART_THINKING_LOG_LEVEL = config.logLevel;
}
}
function createServer({ config } = {}) {
const resolvedConfig = exports.configSchema.parse(config ?? {});
applyRuntimeConfig(resolvedConfig);
const options = resolveServerOptions(resolvedConfig);
const { server } = (0, smart_thinking_server_1.createSmartThinkingServer)(undefined, options);
return server.server;
}
var smart_thinking_server_2 = require("./server/smart-thinking-server");
Object.defineProperty(exports, "createSmartThinkingServer", { enumerable: true, get: function () { return smart_thinking_server_2.createSmartThinkingServer; } });
//# sourceMappingURL=index.js.map