Skip to main content
Glama
mesutoezdil

mcp-gpu-server

by mesutoezdil
README.md
mcp-name: io.github.mesutoezdil/mcp-gpu-server

# mcp-gpu-server

[![PyPI](https://img.shields.io/pypi/v/mcp-gpu-server)](https://pypi.org/project/mcp-gpu-server/)

An MCP server that exposes NVIDIA GPU metrics as tools. Once connected, any MCP-compatible client can query your GPU status in real time directly from a conversation.

## What it does

Instead of running nvidia-smi manually, you ask your AI assistant and it calls these tools automatically:

    gpu_info         GPU name, driver version, CUDA version
    gpu_utilization  core utilization % and memory bandwidth %
    gpu_vram         total, used, free VRAM in MiB and usage %
    gpu_temperature  GPU core temperature in Celsius
    gpu_stats        everything above in one call

Example response from gpu_stats:

    {
      "count": 1,
      "gpus": [{
        "index": 0,
        "name": "NVIDIA L40S",
        "driver": "580.126.09",
        "cuda": "13.0",
        "temp_c": 29,
        "gpu_pct": 0,
        "mem_pct": 0,
        "vram": {
          "total_mib": 46068,
          "used_mib": 610,
          "free_mib": 45457,
          "pct": 1.3
        }
      }]
    }

## How it works

Queries NVML (pynvml) directly when available. Falls back to nvidia-smi subprocess if NVML is not accessible. Returns clean JSON in both cases.

## Install

    pip install mcp-gpu-server

## Connect to your MCP client

Add this to your MCP client config file:

    {
      "mcpServers": {
        "gpu": {
          "command": "mcp-gpu-server"
        }
      }
    }


## Run tests

    python tests/test_gpu.py

## Requirements

Python 3.10 or higher. NVIDIA GPU with drivers installed on the host machine.

TDQS

A3.7/5.0

Scored across 5 tools

Disambiguation4/5

Tools are mostly distinct, but 'gpu_info' and 'gpu_stats' overlap somewhat as stats includes info content. However, descriptions clarify the difference (basic vs. full snapshot). The other three tools are clearly separate.

Naming Consistency5/5

All tool names follow a consistent 'gpu_<noun>' pattern in snake_case. The nouns (info, stats, temperature, utilization, vram) are descriptive and predictable.

Tool Count5/5

Five tools is an appropriate scope for a GPU monitoring server. Each tool covers a distinct aspect without unnecessary redundancy, and the count is not overwhelming.

Completeness4/5

The tool set covers the main GPU monitoring needs: basic info, comprehensive stats, temperature, utilization, and VRAM. Minor gaps like power usage or process listing are absent but not critical for common use cases.

Maintenance

ActivityInactive
ResponsivenessNo issues