Skip to main content
Glama

MCP Reloader

by mizchi
test-include.sh2.74 kB
#!/bin/bash echo "🚀 Testing include pattern with auto-restart" echo "===========================================" echo "" echo "Starting MCP server with include pattern: config/**/*.json" echo "" # Start the server with include pattern MCP_HOT_RELOAD_INCLUDE='config/**/*.json' node src/wrapper.js & SERVER_PID=$! echo "Server started with PID: $SERVER_PID" echo "Waiting for server to initialize..." sleep 3 echo "" echo "📝 Test 1: Modifying config/example.json" echo "{\"updated\": true, \"timestamp\": \"$(date)\"}" > config/example.json echo "Modified config file - server should detect change and mark as dirty" sleep 3 echo "" echo "📝 Test 2: Adding new config file" echo "{\"new\": \"config\", \"test\": true}" > config/new-config.json echo "Added new config file - server should restart automatically" sleep 5 echo "" echo "📝 Test 3: Modifying tool file (should hot-reload without restart)" cat > src/tools/echo.js << 'EOF' export default { name: "echo", description: "Echo with auto-restart test", inputSchema: { type: "object", properties: { message: { type: "string", description: "Message to echo" } }, required: ["message"] }, handler: async ({ message }) => { return `[Auto-restart test] Echo: ${message}`; } }; EOF echo "Modified tool file - should hot-reload without restart" sleep 3 echo "" echo "🧹 Cleaning up..." kill $SERVER_PID 2>/dev/null rm -f config/new-config.json # Restore original files cat > config/example.json << 'EOF' { "apiKey": "test-api-key", "baseUrl": "https://api.example.com", "timeout": 5000, "features": { "enableCache": true, "maxRetries": 3 } } EOF cat > src/tools/echo.js << 'EOF' export default { name: "echo", description: "Echo back the input message with timestamp and emoji", inputSchema: { type: "object", properties: { message: { type: "string", description: "Message to echo" }, emoji: { type: "boolean", description: "Add emoji to response", default: false } }, required: ["message"] }, handler: async ({ message, emoji = false }) => { const timestamp = new Date().toLocaleTimeString(); const emojiPrefix = emoji ? "🔊 " : ""; return `${emojiPrefix}[${timestamp}] Echo: ${message}`; } }; EOF echo "" echo "✅ Test completed!" echo "" echo "What you should have seen in the server logs:" echo "1. 'Include patterns: config/**/*.json' on startup" echo "2. 'Include file change: config/example.json, marking server as dirty'" echo "3. '[Wrapper] Detected dirty state, scheduling restart...'" echo "4. '[Wrapper] Restarting server...'" echo "5. Tool changes should hot-reload without server restart"

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/mizchi/mcp-reloader'

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