GPU & VRAM Monitor for VS Code & Compatible Editors

Monitor your NVIDIA GPU load, VRAM consumption, temperature, and active AI models in real-time right in your editor status bar.
Designed specifically for AI and software engineers running local LLMs and AI workflows (Ollama, LM Studio, vLLM, llama.cpp, LocalAI, ComfyUI, PyTorch, or MCP servers) on laptops and workstations with dedicated NVIDIA GPUs (e.g., RTX 3050, 4060, 4070, 4090, etc.).
✨ Features
- 🎮 Real-Time Hardware Telemetry: Live GPU core load (
%), VRAM usage (GB & %), free VRAM, and GPU temperature.
- 🤖 Universal Active Model Detection: Automatically detects active models in memory from any OpenAPI/OpenAI-compatible local server (Ollama, LM Studio, vLLM, llama-server, LocalAI) or MCP bridge.
- 🔌 Model Context Protocol (MCP) Integration: Seamlessly pairs with MCP hosts to allow AI agents to check VRAM availability before dispatching heavy prompts or automated code review loops.
- ⚡ Smart Adaptive Polling:
- Active window: Polls every 3 seconds with near-zero CPU footprint (<15ms per query).
- Background / Minimized: Automatically throttles to 10 seconds when VS Code is not focused.
- 🛡️ Calibrated Alert System (Tuned for 4GB+ GPUs):
- 🟢 Normal (< 93%): Standard subtle status bar styling for healthy operational baselines.
- 🟡 Warning (93% - 96%): Yellow highlight when free VRAM drops below ~280 MB.
- 🔴 Critical (>= 97%): Red highlight with flame icon when free VRAM is under ~120 MB to prevent out-of-memory crashes or fallback to system RAM.
- 🌐 Multi-Machine & Remote Architecture:
- Run the inference server / model host on your GPU machine (e.g. GPU Workstation / Dedicated Rig) and monitor it remotely while coding on your client machine (e.g. Laptop / Secondary dev machine).
- 🔄 Local Fallback (Zero Setup):
- Works out-of-the-box with zero configuration by querying local
nvidia-smi directly.
- 📊 Interactive Overview:
- Click on the status bar item or run
GPU Monitor: Show Detailed Hardware & VRAM Stats for a QuickPick breakdown with real-time memory stats and manual refresh.
🏗️ Architecture
┌────────────────────────────────────────────────────────┐
│ GPU HOST (e.g. Workstation) │
│ - NVIDIA GPU (nvidia-smi / NVML) │
│ - Local LLM Runner (:1234, :11434, :8000, etc.) │
│ (Ollama / LM Studio / vLLM / llama.cpp / LocalAI) │
│ - MCP / Telemetry Bridge (:9095) │
└───────────────────────────┬────────────────────────────┘
│
┌────────────────┴────────────────┐
│ │
▼ (MCP Stdio / Tools) ▼ (HTTP GET /gpu)
┌──────────────────────────────────┐ ┌───────────────────────────────┐
│ AI Coding Assistant / MCP Agent │ │ VS Code / Compatible IDE │
│ Tool: gpu_status │ │ Status Bar Extension Plugin │
│ (Checks VRAM before prompts) │ │ (Local or Remote Client) │
└──────────────────────────────────┘ └───────────────────────────────┘
🔌 Setting up the MCP / Telemetry Bridge
The extension can query GPU stats directly from nvidia-smi (local zero-config mode) or via an MCP Telemetry Bridge, which exposes both native Model Context Protocol tools for AI agents and a lightweight HTTP endpoint on port 9095.
1. Configuration in MCP Clients
Add the GPU telemetry server to your MCP configuration file (e.g., claude_desktop_config.json, .cursor/mcp.json, or generic MCP settings):
{
"mcpServers": {
"gpu-monitor": {
"command": "node",
"args": [
"/path/to/mcp-server/index.js"
],
"env": {
"LOCAL_LLM_URL": "http://127.0.0.1:1234/v1",
"GPU_MONITOR_PORT": "9095"
}
}
}
}
Once configured, AI agents have access to:
gpu_status: Returns real-time JSON metrics of GPU utilization (%), VRAM (used/free/total in MB & GB), temperature, loaded model name, and preventive memory warning levels.
3. Remote Development Setup (e.g., coding on a laptop using a remote GPU host)
If your editor is running on another computer in your local network:
- Ensure port
9095 is accessible from your local network on the GPU host.
- In the client editor (
settings.json), configure:
{
"gpuMonitor.serverUrl": "http://gpu-workstation.local:9095/gpu"
}
📦 Installation
From Marketplace
Search for GPU & VRAM Monitor in the Extensions view (Ctrl+Shift+X) and click Install.
From VSIX Package
- Download
gpu-vram-monitor-1.0.4.vsix.
- Install in your editor:
code --install-extension gpu-vram-monitor-1.0.4.vsix
- Reload your editor (
Ctrl+Shift+P -> Developer: Reload Window).
⚙️ Configuration Options (settings.json)
| Setting |
Type |
Default |
Description |
gpuMonitor.serverUrl |
string |
http://127.0.0.1:9095/gpu |
URL of the telemetry HTTP server. Set to http://<host-ip>:9095/gpu for remote monitoring. |
gpuMonitor.refreshIntervalSeconds |
number |
3 |
Polling interval in seconds while editor is active (1 to 60). |
gpuMonitor.warningVramPercent |
number |
93 |
Threshold percentage to show warning yellow color. |
gpuMonitor.criticalVramPercent |
number |
97 |
Threshold percentage to show critical red color. |
gpuMonitor.showActiveModel |
boolean |
true |
Show the active LM Studio model name in status bar. |
gpuMonitor.showTemperature |
boolean |
false |
Show GPU temperature directly in status bar text. |
gpuMonitor.fallbackNvidiaSmi |
boolean |
true |
Try running nvidia-smi directly if HTTP server is unreachable. |
⌨️ Available Commands
Press Ctrl+Shift+P (or Cmd+Shift+P on macOS) and search for:
GPU Monitor: Show Detailed Hardware & VRAM Stats: Opens an interactive modal breakdown.
GPU Monitor: Refresh Now: Triggers an immediate query.
GPU Monitor: Toggle Polling (Pause/Resume): Pauses or resumes background polling.
📄 License
MIT License - Copyright (c) 2026 Hector Horta.