mactop is a terminal-based monitoring tool "top" designed to display real-time metrics for Apple Silicon chips written by Carsen Klock. It provides a simple and efficient way to monitor CPU and GPU usage, E-Cores and P-Cores, power consumption, GPU frequency, temperatures, and other system metrics directly from your terminal

L to cycle layouts)C to cycle colors)- or = to speed up, + to slow down)--headless)-p <port> or --prometheus <port>)--unit-network, --unit-disk, --unit-temp)You can install mactop via Homebrew! https://brew.sh
brew install mactop
mactop
brew update
brew upgrade mactop
To install mactop, follow these steps:
Ensure you have Go installed on your machine. If not, you can install it by following the instructions here: Go Installation Guide.
Clone the repository:
bash
git clone https://github.com/context-labs/mactop.git
cd mactop
Build the application:
bash
go build
Run the application:
bash
./mactop
After installation, you can start mactop by simply running:
./mactop
Example with flags:
mactop --interval 1000 --color green
--headless: Run in headless mode (no TUI, output JSON to stdout).--count: Number of samples to collect in headless mode (0 = infinite).--interval or -i: Set the update interval in milliseconds. Default is 1000.--color or -c: Set the UI color. Default is white.
Options are 'green', 'red', 'blue', 'cyan', 'magenta', 'yellow', and 'white'. (-c green)--prometheus or -p: Set and enable the local Prometheus metrics server on the given port. Default is disabled. (e.g. -p 2112 to enable Prometheus metrics on port 2112)--unit-network: Network unit: auto, byte, kb, mb, gb (default: auto)--unit-disk: Disk unit: auto, byte, kb, mb, gb (default: auto)--unit-temp: Temperature unit: celsius, fahrenheit (default: celsius)--test or -t: Test IOReport power metrics (no sudo required)--version or -v: Print the version of mactop.--help or -h: Show a help message about these flags and how to run mactop.Use the following keys to interact with the application while its running:
- q: Quit the application.
- r: Refresh the UI data manually.
- c: Cycle through the color themes.
- p: Party Mode (Randomly cycles through colors)
- l: Cycle through the 7 available layouts.
- + or =: Increase update interval (slower updates).
- -: Decrease update interval (faster updates).
- F9: Kill the currently selected process (pauses updates while selecting).
- Arrow Keys or h/j/k/l: Navigate the process list and select columns.
- Enter or Space: Sort by the selected column.
- h or ?: Toggle the help menu.

[
{
"timestamp":"2025-12-04T00:43:06-07:00",
"soc_metrics":{
"cpu_power":5.971,
"gpu_power":1.43491417,
"ane_power":0,
"dram_power":4.119,
"gpu_sram_power":0.04,
"system_power":45.92987823486328,
"total_power":11.564914169999998,
"gpu_freq_mhz":645,
"soc_temp":66.51124,
"cpu_temp":66.51124,
"gpu_temp":59.767166
},
"memory":{
"total":137438953472,
"used":95795822592,
"available":41643130880,
"swap_total":21474836480,
"swap_used":20288831488
},
"net_disk":{
"out_packets_per_sec":333.8985188256889,
"out_bytes_per_sec":164.55632002792703,
"in_packets_per_sec":295.37176665349403,
"in_bytes_per_sec":39.33046303000927,
"read_ops_per_sec":2.6754689008468664,
"write_ops_per_sec":275.5732967872272,
"read_kbytes_per_sec":43.83488247147506,
"write_kbytes_per_sec":3763.2246601761335
},
"cpu_usage":24.052424536171074,
"gpu_usage":13.709099344350134,
"core_usages":[
55.73770491803278,
48.08743169398907,
64.32432432432432,
53.51351351351351,
39.45945945945946,
32.432432432432435,
31.182795698924732,
18.71657754010695,
12.365591397849462,
10.21505376344086,
60,
40.54054054054054,
5.347593582887701,
2.6737967914438503,
2.1505376344086025,
1.0810810810810811,
1.06951871657754,
1.0752688172043012,
1.0752688172043012,
0
],
"system_info":{
"name":"Apple M1 Ultra",
"core_count":20,
"e_core_count":4,
"p_core_count":16,
"gpu_core_count":64
},
"thermal_state":"Moderate",
"cpu_temp":66.51124,
"gpu_temp":59.767166
}
]
(If you have a confirmed working M series chip that is not listed, please open an issue, so we may add it here!)
Contributions are what make the open-source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
git checkout -b feature/AmazingFeature)git commit -m 'Add some AmazingFeature')git push origin feature/AmazingFeature)pmgr devicehost_processor_info): For CPU metrics (E and P cores) via CGOsysctl: For CPU model informationsystem_profiler: For GPU Core CountDistributed under the MIT License. See LICENSE for more information.
Carsen Klock - @carsenklock
Project Link: https://github.com/context-labs/mactop
This tool is not officially supported by Apple. It is provided as is, and may not work as expected. Use at your own risk.
$ claude mcp add mactop \
-- python -m otcore.mcp_server <graph>