MCP Servers

A collection of Model Context Protocol servers, templates, tools and more.

MCP server by TobiasArg

Created 2/5/2026
Updated about 9 hours ago
Repository documentation and setup instructions

HW-Info MCP Server

A Model Context Protocol (MCP) server for system monitoring and process management. Get detailed information about CPU, memory, disk, network, processes, and ports.

Features

  • System info - Hostname, platform, kernel, uptime
  • CPU monitoring - Model, cores, usage per core, temperature
  • Memory details - Total, available, active, wired, swap
  • Disk usage - All filesystems or specific paths
  • Process management - List, filter, kill with safety checks
  • Network ports - Listening services, connections count
  • Network info - Interfaces, gateway, DNS, public IP
  • Cross-platform - macOS, Linux, Windows

Installation

NPX

Add to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

Windows: %APPDATA%\Claude\claude_desktop_config.json

Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "hw-info": {
      "command": "npx",
      "args": ["-y", "hw-info"]
    }
  }
}

That's it! Claude Desktop will automatically download and run the MCP server via npx.

Alternative: Install from source

git clone https://github.com/argtobias/hw-info.git
cd hw-info
pnpm install
pnpm build

Then configure Claude Desktop:

{
  "mcpServers": {
    "hw-info": {
      "command": "node",
      "args": ["/path/to/hw-info/dist/index.js"]
    }
  }
}

Available Tools

System Information

| Tool | Description | |------|-------------| | system_info | Hostname, platform, arch, kernel, uptime, user info | | cpu_usage | CPU model, cores (logical/physical), speed, usage %, temperature, threads | | memory_usage | Total, free, used, available, active, wired, compressed, cached, swap | | disk_usage | Filesystem, size, used, available, mount point. Use allDisks: true for all |

Process Management

| Tool | Description | |------|-------------| | processes | List processes with CPU, memory, state, threads. Filter by name, sort by cpu/memory/pid | | ports | List open ports with protocol, address, state, PID, process name, connection count | | kill_process | Kill by PID or name. Returns process info, children killed, graceful status |

Network

| Tool | Description | |------|-------------| | network_info | Interfaces (IP, MAC, status, traffic), gateway, DNS. Optional: public IP |

Usage Examples

Get system overview

{ "tool": "system_info" }

Check CPU usage per core

{ "tool": "cpu_usage", "arguments": { "perCore": true } }

Memory in GB with full details

{ "tool": "memory_usage", "arguments": { "unit": "gb" } }

List all disks

{ "tool": "disk_usage", "arguments": { "allDisks": true } }

Find processes by name

{ "tool": "processes", "arguments": { "filter": "node", "limit": 10 } }

Check what's on port 3000

{ "tool": "ports", "arguments": { "port": 3000 } }

Kill process by PID

{ "tool": "kill_process", "arguments": { "pid": 12345 } }

Get network info with public IP

{ "tool": "network_info", "arguments": { "includePublicIP": true } }

Output Examples

memory_usage

{
  "total": 16,
  "free": 0.36,
  "used": 15.64,
  "usedPercent": 98,
  "unit": "GB",
  "active": 4.84,
  "inactive": 4.81,
  "wired": 2.3,
  "compressed": 3.07,
  "cached": 2.86,
  "available": 8.03,
  "swap": { "total": 2, "used": 0.96, "free": 1.04 }
}

network_info

{
  "interfaces": [
    { "name": "en0", "ip": "192.168.1.43", "mac": "aa:bb:cc:dd:ee:ff", "status": "up", "type": "ethernet", "bytesIn": 16424, "bytesOut": 1073 }
  ],
  "defaultGateway": "192.168.1.1",
  "dns": ["8.8.8.8", "8.8.4.4"],
  "publicIP": "201.178.36.81"
}

Development

pnpm install
pnpm build
pnpm dev

# Run tests
./test.sh

License

ISC

Quick Setup
Installation guide for this server

Install Package (if required)

npx @modelcontextprotocol/server-hw-info-mcp

Cursor configuration (mcp.json)

{ "mcpServers": { "tobiasarg-hw-info-mcp": { "command": "npx", "args": [ "tobiasarg-hw-info-mcp" ] } } }