Skip to main content
Glama
validate-mcp-config.js3.88 kB
#!/usr/bin/env node /** * Validation script for MCP configuration * Helps users verify their setup is working correctly */ import { CognitiveMCPServer } from "../dist/server/CognitiveMCPServer.js"; async function validateMCPConfig() { console.log("🧠 ThoughtMCP Configuration Validator"); console.log("=====================================\n"); try { // Test server initialization console.log("1. Testing server initialization..."); const server = new CognitiveMCPServer(); await server.initialize(true); // Test mode console.log(" ✅ Server initialized successfully\n"); // Test environment variable reading console.log("2. Checking environment configuration..."); const envVars = { COGNITIVE_DEFAULT_MODE: process.env.COGNITIVE_DEFAULT_MODE || "balanced (default)", COGNITIVE_ENABLE_EMOTION: process.env.COGNITIVE_ENABLE_EMOTION || "true (default)", COGNITIVE_ENABLE_METACOGNITION: process.env.COGNITIVE_ENABLE_METACOGNITION || "true (default)", COGNITIVE_WORKING_MEMORY_CAPACITY: process.env.COGNITIVE_WORKING_MEMORY_CAPACITY || "7 (default)", COGNITIVE_EPISODIC_MEMORY_SIZE: process.env.COGNITIVE_EPISODIC_MEMORY_SIZE || "1000 (default)", COGNITIVE_SEMANTIC_MEMORY_SIZE: process.env.COGNITIVE_SEMANTIC_MEMORY_SIZE || "5000 (default)", COGNITIVE_TEMPERATURE: process.env.COGNITIVE_TEMPERATURE || "0.7 (default)", COGNITIVE_TIMEOUT_MS: process.env.COGNITIVE_TIMEOUT_MS || "30000 (default)", COGNITIVE_BRAIN_DIR: process.env.COGNITIVE_BRAIN_DIR || "~/.brain (default)", LOG_LEVEL: process.env.LOG_LEVEL || "INFO (default)", }; Object.entries(envVars).forEach(([key, value]) => { console.log(` ${key}: ${value}`); }); console.log(" ✅ Environment configuration loaded\n"); // Test basic functionality console.log("3. Testing basic cognitive functionality..."); // Test a simple think operation const thinkResult = await server.handleThink({ input: "Test cognitive processing", mode: "balanced", }); if (thinkResult && thinkResult.content) { console.log(" ✅ Think operation successful"); } else { console.log(" ⚠️ Think operation returned unexpected result"); } // Test memory operations const rememberResult = await server.handleRemember({ content: "Test memory storage", type: "semantic", importance: 0.5, }); if (rememberResult && rememberResult.success) { console.log(" ✅ Memory storage successful"); } else { console.log(" ⚠️ Memory storage returned unexpected result"); } const recallResult = await server.handleRecall({ cue: "test", type: "both", max_results: 5, }); if (recallResult && Array.isArray(recallResult.memories)) { console.log(" ✅ Memory recall successful"); } else { console.log(" ⚠️ Memory recall returned unexpected result"); } console.log("\n🎉 Configuration validation completed successfully!"); console.log("\nYour ThoughtMCP server is ready to use with:"); console.log(" npx thoughtmcp@latest"); console.log("\nOr in your MCP configuration:"); console.log(' "command": "npx", "args": ["thoughtmcp@latest"]'); // Properly shutdown the server await server.shutdown(); process.exit(0); } catch (error) { console.error("\n❌ Configuration validation failed:"); console.error(` Error: ${error.message}`); console.error("\nPlease check your configuration and try again."); console.error("For help, visit: https://github.com/keyurgolani/ThoughtMcp"); process.exit(1); } } // Only run if called directly if (import.meta.url === `file://${process.argv[1]}`) { validateMCPConfig(); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/keyurgolani/ThoughtMcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server