Skip to main content
Glama
health_check.sh1.65 kB
#!/bin/bash # CCGLM MCP Health Check Script # Monitors server health and restarts if needed CCGLM_DIR="/home/manu/IA/ccglm-mcp" LOG_FILE="$CCGLM_DIR/logs/health-check.log" # Function to log with timestamp log() { echo "[$(date '+%Y-%m-%d %H:%M:%S')] $1" >> "$LOG_FILE" } # Check if server process is running check_server() { local pid_count=$(pgrep -f "ccglm_mcp_server.py" | wc -l) echo "$pid_count" } # Test API connectivity test_api() { source "$CCGLM_DIR/.env" local response=$(curl -s -X POST "https://api.z.ai/api/anthropic/v1/messages" \ -H "Content-Type: application/json" \ -H "Authorization: Bearer $GLM_AUTH_TOKEN" \ -H "anthropic-version: 2023-06-01" \ -d '{"model": "glm-4.6", "max_tokens": 5, "messages": [{"role": "user", "content": "test"}]}' \ --connect-timeout 5 --max-time 10) if echo "$response" | grep -q '"content"'; then echo "OK" else echo "FAILED" fi } # Main health check log "Starting health check..." # Check process count pid_count=$(check_server) log "Process count: $pid_count" if [ "$pid_count" -eq 0 ]; then log "❌ No CCGLM processes found, restarting..." cd "$CCGLM_DIR" ./recovery_script.sh elif [ "$pid_count" -gt 1 ]; then log "⚠️ Multiple processes found ($pid_count), restarting..." cd "$CCGLM_DIR" ./recovery_script.sh else log "✅ Single process running" fi # Test API connectivity api_status=$(test_api) log "API status: $api_status" if [ "$api_status" != "OK" ]; then log "❌ API connectivity issue" else log "✅ API connectivity OK" fi log "Health check completed"

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/nosolosoft/ccglm-mcp'

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