Skip to main content
Glama

System Information MCP Server

by batteryshark

System Information MCP Server

A modular FastMCP server providing focused system diagnostic tools for efficient troubleshooting and environment analysis. Each tool targets specific system aspects for optimal performance and clarity.

πŸš€ Features

πŸ“Š Modular Tool Design

  • 10 specialized tools for targeted diagnostics

  • Efficient data collection with minimal overhead

  • Raw text output for optimal performance

  • Cross-platform compatibility (macOS, Linux, Windows)

πŸ”§ Available Tools

Tool

Purpose

Key Information

get_system_summary

Quick system overview

Hostname, OS, CPU, RAM, uptime

get_hardware_details

Comprehensive hardware specs

CPU cores, memory, GPU detection

get_display_info

Display/monitor analysis

Resolution, refresh rate, HDR status

get_network_status

Network diagnostics

Interfaces, IPs, DNS, VPN detection

get_storage_analysis

Storage overview

Disk usage, partitions, filesystem types

get_connected_devices

Peripheral inventory

USB and Bluetooth devices

get_user_environment

Session context

User info, timezone, locale settings

get_running_processes

Process analysis

Top processes by CPU/memory usage

get_open_ports

Network security

Listening ports and services

get_full_system_report

Complete analysis

All diagnostics in one comprehensive report

Installation

# Clone and setup git clone <repository> cd mcp-sysinfo # Install dependencies uv add fastmcp psutil requests # Test the server uv run python main.py

Usage

MCP Configuration

Add to your MCP client configuration:

Local/stdio Configuration

{ "mcpServers": { "sysinfo": { "type": "stdio", "command": "uv", "args": ["run", "--directory", "/path/to/mcp-sysinfo", "python", "main.py"] } } }

Remote/HTTP Configuration

{ "mcpServers": { "sysinfo": { "type": "http", "url": "http://localhost:8000/mcp/" } } }

For HTTP mode, set the PORT environment variable:

PORT=8000 uv run python main.py

Tool Usage Examples

Quick System Check

# Get essential system overview result = await client.call_tool("get_system_summary", {})

Targeted Diagnostics

# Network troubleshooting network_info = await client.call_tool("get_network_status", {}) # Storage analysis storage_info = await client.call_tool("get_storage_analysis", {}) # Security audit ports_info = await client.call_tool("get_open_ports", {})

Complete System Analysis

# Full diagnostic report full_report = await client.call_tool("get_full_system_report", {})

Platform Support

  • macOS 10.15+ (tested on Apple Silicon)

  • Linux Ubuntu/Debian-based distributions

  • Windows 10/11 (basic support)

Architecture

src/sysinfo/ β”œβ”€β”€ __init__.py # Package exports β”œβ”€β”€ collectors.py # Modular info collection functions └── server.py # FastMCP server implementation main.py # Entry point

Key Design Principles

  • Modular Tools: Each diagnostic function is a separate MCP tool for targeted usage

  • Performance Optimized: Raw text output without JSON wrapping overhead

  • Error-resilient: Graceful handling of missing/inaccessible data

  • Cross-platform: Platform-specific detection with intelligent fallbacks

  • Agent-friendly: Clean markdown output optimized for LLM consumption

  • Minimal Dependencies: Uses only fastmcp, psutil, and requests

Development

Testing

# Test with in-memory client uv run python test_refactored.py # Test individual collectors uv run python -c "from src.sysinfo.collectors import get_hardware_info; print(get_hardware_info())"

Adding New Collectors

  1. Add function to collectors.py

  2. Export in __init__.py

  3. Call from server.py tool

  4. Test cross-platform compatibility

License

MIT License - see LICENSE file for details.

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/batteryshark/mcp-sysinfo'

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