The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Mac Monitor MCP listing page.
A Model Context Protocol (MCP) server that identifies resource-intensive processes on macOS across CPU, memory, and network usage.
A hosted deployment is available on Fronteir AI.
MacOS Resource Monitor is a lightweight MCP server that exposes an MCP endpoint for monitoring system resources. It analyzes CPU, memory, and network usage, and identifies the most resource-intensive processes on your Mac, returning data in a structured JSON format.
Install the MCP server globally using uv for system-wide access:
Now you can run the server from anywhere:
Clone this repository:
Create a virtual environment (recommended):
Install the required dependencies:
If you installed globally with uv:
If you're running from the project directory:
Or using uv run (from project directory):
You should see the message:
The server will start and expose the MCP endpoint, which can be accessed by an LLM or other client.
The server exposes three tools:
get_resource_intensive_processes()Returns information about the top 5 most resource-intensive processes in each category (CPU, memory, and network).
get_processes_by_category(process_type, page=1, page_size=10, sort_by="auto", sort_order="desc")Returns all processes in a specific category with advanced filtering, pagination, and sorting options.
Parameters:
process_type: "cpu", "memory", or "network"page: Page number (starting from 1, default: 1)page_size: Number of processes per page (default: 10, max: 100)sort_by: Sort field - "auto" (default metric), "pid", "command", or category-specific fields:
"cpu_percent", "pid", "command""memory_percent", "resident_memory_kb", "pid", "command""network_connections", "pid", "command"sort_order: "desc" (default) or "asc"Example Usage:
get_system_overview()Returns comprehensive system overview with aggregate statistics similar to Activity Monitor. Provides CPU, memory, disk, network statistics, and intelligent performance analysis to help identify bottlenecks and optimization opportunities.
Features:
Example Usage:
Use Cases:
get_resource_intensive_processes() Outputget_processes_by_category() OutputThe MacOS Resource Monitor uses built-in macOS command-line utilities:
ps: To identify top CPU and memory consuming processeslsof: To monitor network connections and identify network-intensive processesData is collected when the tool is invoked, providing a real-time snapshot of system resource usage.
This MCP server is designed to work with Large Language Models (LLMs) that support the Model Context Protocol. The LLM can use the get_resource_intensive_processes tool to access system resource information and provide intelligent analysis.
Contributions are welcome! Please feel free to submit a Pull Request.
git checkout -b feature/amazing-feature)git commit -m 'Add some amazing feature')git push origin feature/amazing-feature)If you installed the server globally with uv:
uv tool listuv tool uninstall mac-monitoruv tool install --force . (from project directory)uv tool install git+https://github.com/Pratyay/mac-monitor-mcp.gitget_processes_by_category() tool with pagination and sortingpyproject.tomluv tool installHere are some ways you could enhance this monitor: