Skip to main content
Glama
markolive1501

System Information MCP Server

README.md
# System Information MCP Server

An MCP server that provides various tools and resources to monitor and retrieve host system information.

## Features

### Tools
- `get_system_info`: Basic information about the host system (OS, memory, uptime, etc.).
- `get_current_time`: Current localized time on the host system.
- `get_disk_usage`: Disk space information (Windows-optimized using WMIC).
- `get_cpu_load`: CPU load averages and model information.
- `get_network_interfaces`: Details about all network interfaces.
- `list_directory`: List contents of a directory with file sizes and dates.
- `move_files`: Move or rename files/directories safely.
- `search_files`: Search for files in a directory matching a pattern.
- `delete_files`: Delete files or directories permanently (with safety guards).
- `find_large_files`: Identify heavy files for system cleaning.

### 🛡️ Safety Guards
- The server includes logic to block operations on critical system directories (e.g., `C:\Windows`, `C:\Program Files`) and drive roots.

### Resources
- `system://os_info`: Static OS details (platform, release, hostname).

### Prompts
- `system_health_check`: A prompt to guide an AI agent through a comprehensive system health analysis.

## Installation

```bash
npm install
npm run build
```

## Usage

### Option 1: Claude Desktop (Stdio)
Add the following to your Claude Desktop configuration:

```json
{
  "mcpServers": {
    "sysinfo": {
      "command": "node",
      "args": ["C:/Users/marko/.gemini/antigravity/scratch/mcp-server/build/index.js"]
    }
  }
}
```

### Option 2: Web Mode (SSE) - "Un-containerized"
If you are having permission issues with Claude Desktop, you can run the MCP server as a standalone web server:

1. Run the server:
   ```bash
   node build/index.js --sse
   ```
2. The server will be available at `http://localhost:3000/sse`.
3. You can connect to this URL using any MCP-compatible web client or custom integration.

## Development

- `npm run watch`: Rebuild on changes.
- `npm test`: Run unit tests (Vitest).

TDQS

A3.5/5.0

Scored across 11 tools

Disambiguation5/5

Every tool has a clearly distinct purpose targeting specific system resources or operations. There is no overlap between tools like get_cpu_load (CPU metrics), get_disk_usage (storage), list_directory (file listing), and delete_files (file deletion). The descriptions reinforce these distinct roles, making tool selection unambiguous.

Naming Consistency5/5

All tools follow a consistent verb_noun naming pattern using snake_case, such as get_cpu_load, list_directory, and delete_files. This uniformity makes the tool set predictable and easy to navigate, with no deviations in style or convention across the 11 tools.

Tool Count5/5

With 11 tools, the count is well-scoped for a system information server, covering key areas like CPU, disk, network, files, and time without being overwhelming. Each tool earns its place by addressing a distinct aspect of system monitoring and file management, avoiding redundancy.

Completeness4/5

The tool set provides comprehensive coverage for system information retrieval and basic file operations, including getters for CPU, disk, network, and system info, plus file actions like list, search, move, and delete. A minor gap is the lack of file creation or editing tools, but agents can work around this with existing tools for most workflows.

Maintenance

ActivityInactive
ResponsivenessNo issues