Skip to main content
Glama

gguf-mcp

An MCP server that inspects local model files — GGUF and safetensors — so Claude and other LLMs can answer questions about the models on your disk:

  • "What is this .gguf? Architecture, quantization, parameter count?"

  • "Will this model fit in my 12 GB GPU at 8k context?"

  • "What tensors are inside, with what shapes?"

  • "Show me its chat template / RoPE settings / tokenizer config."

Headers only. The parser never touches tensor data, so inspecting a 70 GB model takes milliseconds and a few MiB of I/O. No network, no API keys, no telemetry — your files never leave your machine.

Quick start

Claude Code

claude mcp add gguf -- npx -y gguf-mcp

Claude Desktop — add to claude_desktop_config.json:

{
  "mcpServers": {
    "gguf": {
      "command": "npx",
      "args": ["-y", "gguf-mcp"]
    }
  }
}

The same npx invocation works in Cursor, Windsurf, and any other MCP client.

Related MCP server: cancerbero

Tools

Tool

What it does

inspect_model

One-call summary: format, architecture, parameters, quantization, context length, file size, tensor count

list_tensors

Tensor names, shapes, and storage types — filterable (attn, blk.0, ...)

estimate_vram

Fit check: exact weights size + modeled fp16 KV cache for your chosen context length

get_metadata

The GGUF key-value store (or safetensors __metadata__), filterable by key

Paths can be a .gguf file, a .safetensors file, a *.safetensors.index.json, or a model directory (sharded HuggingFace layouts are aggregated across shards). Extension-less GGUF blobs — like the ones in Ollama's ~/.ollama/models/blobs — are detected by magic bytes.

Design notes

  • Context-friendly by construction. A tokenizer vocabulary is 100k+ strings; metadata arrays are returned as {count, sample} summaries and long strings (chat templates) are truncated with a marker. The full data stays on disk where it belongs.

  • Honest estimates. estimate_vram reports exact on-disk weight bytes plus the standard KV-cache formula (2 × layers × context × KV heads × head dim × 2 bytes), and says what it excludes rather than faking precision.

  • Defensive parsing. Magic checks, version checks (incl. big-endian detection), truncation detection, and sanity caps on header sizes — malformed files produce specific, actionable errors.

  • Zero runtime dependencies beyond the MCP SDK and zod. The GGUF binary reader and safetensors parser are hand-rolled and unit-tested against synthetic files built in the test suite — no fixtures, no downloads.

Development

npm install
npm test                 # offline unit tests (vitest) — synthetic model files
npm run build            # tsc → dist/
node scripts/smoke.mjs   # end-to-end: generates models, drives the server over stdio

Architecture: src/gguf.ts (binary header parser + VRAM math) and src/safetensors.ts (JSON header + shard index) are pure logic with no MCP imports; src/index.ts is the MCP wiring and path/format detection.

Out of scope

Tensor statistics (would require reading data), PyTorch .bin (pickle — unsafe by design), ONNX, and remote HuggingFace queries (HuggingFace has an official MCP server for that).

License

MIT

Available Tools

4 tools
estimate_vramEstimate VRAM neededA

Will this model fit? Estimates memory as exact weights size plus a modeled fp16 KV cache (GGUF; context defaults to min(model context, 8192)). Safetensors models get a weights-only figure.

Inputs: path (required), context_length.

get_metadataGet model metadataA

The model's metadata key-value store (GGUF) or metadata block (safetensors). Large arrays arrive as {count, sample} summaries and long strings are truncated, so tokenizer vocabularies can't flood the context. Filter keys by substring (e.g. 'tokenizer' or 'rope').

Inputs: path (required), filter.

inspect_modelInspect a local model fileA

Summarize a local GGUF or safetensors model: architecture, parameter count, quantization, context length, file size, tensor count. Reads only headers — inspecting a 70 GB model is instant. Works on extension-less GGUF blobs (e.g. Ollama's).

Inputs: path (required).

list_tensorsList tensorsB

Tensor names, shapes, and storage types inside a model file. Filter by substring (e.g. 'attn' or 'blk.0').

Inputs: path (required), limit, filter.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A4/5.0

    Scored across 4 tools

    Disambiguation5/5

    Each tool targets a distinct aspect of model file inspection: summarize, list tensors, estimate VRAM, and get metadata. No overlap in purpose.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern (inspect, list, estimate, get), making the set predictable and easy to navigate.

    Tool Count5/5

    Four tools is well-scoped for a specialized inspection server, covering core operations without bloat or gaps.

    Completeness5/5

    The tool set fully covers the domain of local model file inspection: overview, detailed tensors, VRAM fitting, and metadata. No obvious missing operations.

    Maintenance

    ActivityMaintained
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      D
      maintenance
      Provides AI assistants with structured access to metadata for 76+ AI models across Ollama, Claude, and OpenRouter, enabling capability queries, compatibility checks, model comparisons, and task-based recommendations.
      7 npm
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI agents to inspect local GGUF model files for structural, template-security, companion-file, and runtime-advisory risks before deployment, returning machine-readable verdicts via seven MCP tools.
      Apache 2.0
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables local inspection of AI model deployment artifacts without executing model code, returning SHA-256, structure, defect analysis, and evidence-gap findings in Gemini CLI conversations.
      Apache 2.0