SysChecker is an AI-powered system monitoring platform that leverages the Model Context Protocol (MCP) to provide intelligent insights into system health, performance, and historical trends.
- AI-Powered Q&A: Ask natural language questions like "Why is my server slow?" or "Show me memory trends" using GraphRAG.
- Real-Time Monitoring: Instant access to CPU, Memory, Disk, and Network metrics via MCP tools.
- Historical Analysis: Query time-series data stored in DuckDB for deep performance analysis.
- Graph-Based Insights: Relationships between system components and alerts are stored in Neo4j for complex correlation.
- MCP Integration: Seamlessly connects with Claude Desktop or any MCP-compatible client.
- Interactive Chatbot: A dedicated terminal-based chatbot for direct interaction with the system.
SysChecker consists of:
- MCP Server: The core engine exposing tools for metrics, graph queries, and AI analysis.
- GraphRAG Engine: Uses Google Gemini to synthesize answers from system data.
- Storage Layer: Neo4j for graph relationships and DuckDB for high-performance time-series data.
- Sensors: Low-level collectors for real-time system metrics.
- Go 1.25+
- Docker (for Neo4j)
- Google Gemini API Key: Get one here
Create a .env file in ui/Testing/env/ (or set environment variables):
GEMINI_API_KEY=your_api_key_here
NEO4J_PASSWORD=passworddocker run -d --name syschecker-neo4j \
-p 7474:7474 -p 7687:7687 \
-e NEO4J_AUTH=neo4j/password \
neo4j:latestYou can use the provided scripts for a quick setup:
./ui/Testing/run.sh./scripts/run-mcp-local.shOnce the chatbot is running, you can ask:
- "What is the current CPU usage?"
- "Are there any disk space issues?"
- "Show me the memory trend for the last hour."
- "Why did the system flag a high load earlier?"
To use SysChecker with Claude Desktop, add the configuration from configs/claude_desktop_config.json to your Claude configuration file.
Detailed documentation is available in the docs/ directory: