Skip to main content
Glama
health_check.sh1.98 kB
#!/usr/bin/env bash set -euo pipefail # Ensure we have a valid working directory even if caller's CWD was deleted cd "${HOME:-/}" >/dev/null 2>&1 || cd / || true # Repo-level health check wrapper (prefers installed runtime if present) if command -v readlink >/dev/null 2>&1; then SCRIPT_PATH="$(readlink -f "${BASH_SOURCE[0]}")" else SCRIPT_PATH="${BASH_SOURCE[0]}" fi SCRIPT_DIR="$(cd "$(dirname "$SCRIPT_PATH")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)" INSTALL_DIR="${INSTALL_DIR:-$HOME/MCPServer}" if [ -f "$INSTALL_DIR/.env" ]; then set -a # shellcheck source=/dev/null source "$INSTALL_DIR/.env" || true set +a fi HOST=${MCP_HOST:-localhost} PORT=${MCP_PORT:-3000} MCP_URL="http://$HOST:$PORT" LOG_FILE="${LOG_FILE:-$INSTALL_DIR/logs/mcp-server.log}" echo "MCP Server Health Check ($INSTALL_DIR)" echo "=====================================" echo -n "Service Status: " PIDFILE="$INSTALL_DIR/run/mcp-server.pid" if [ -f "$PIDFILE" ]; then PID=$(cat "$PIDFILE" 2>/dev/null || echo "") if [ -n "$PID" ] && kill -0 "$PID" >/dev/null 2>&1; then echo "RUNNING (pid=$PID)" else echo "NOT RUNNING (stale or empty pid)" fi else echo "NOT RUNNING" fi echo -n "Port $PORT Listening: " if command -v ss >/dev/null 2>&1; then if ss -tln | grep -q ":$PORT"; then echo "YES" else echo "NO" fi elif command -v netstat >/dev/null 2>&1; then if netstat -tln | grep -q ":$PORT"; then echo "YES" else echo "NO" fi else echo "UNKNOWN (no ss/netstat)" fi echo -n "HTTP Health Check: " if command -v curl >/dev/null 2>&1; then HTTP_RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" "$MCP_URL/health" 2>/dev/null || echo "000") echo "$HTTP_RESPONSE" else echo "curl not installed" fi echo "" echo "Recent Logs (last 10 lines):" if [ -f "$LOG_FILE" ]; then tail -n 10 "$LOG_FILE" || true else echo "No log file found at $LOG_FILE" fi

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/dnchandra/mcp_linux'

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