Skip to main content
Glama

ppb-mcp

Un servidor MCP que expone los datos de inferencia de GPU de Poor Paul's Benchmark — cuantización × rendimiento × VRAM × usuarios concurrentes — como herramientas consultables para cualquier cliente LLM.

CI PyPI License: MIT

Instancia alojada: https://mcp.poorpaul.dev/ (transporte streamable-http, sin autenticación)

Qué hace

Conecte cualquier cliente compatible con MCP (Claude Desktop, Cline, Continue, etc.) para hacer preguntas como:

  • "¿Cuál es la mejor cuantización para una GPU de 32 GB ejecutando Qwen3.5-9B con 8 usuarios concurrentes?"

  • "Muéstrame todos los modelos probados en Q4_K_M en la RTX 5090."

  • "¿Llama-13B en Q5_K_M cabrá en una GPU de 24 GB con 4 usuarios concurrentes?"

Expone cuatro herramientas respaldadas por más de 30,000 filas de referencia reales:

Herramienta

Qué hace

list_tested_configs

Enumera todas las GPU, modelos y cuantizaciones probadas (llame a esto primero)

query_ppb_results

Filtra filas de referencia sin procesar por GPU / VRAM / modelo / cuantización / usuarios / backend

recommend_quantization

Motor de recomendación de tres niveles basado en evidencia (confianza alta / media / baja)

get_gpu_headroom

Verifica la viabilidad de una configuración (gpu, modelo, cuantización, usuarios) para el margen de VRAM

Related MCP server: atom-mcp-server

Instalación

1) Usar la instancia alojada (configuración cero)

Añadir a la configuración de su cliente MCP (ejemplo de Claude Desktop, ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "ppb": {
      "transport": { "type": "http", "url": "https://mcp.poorpaul.dev/mcp" }
    }
  }
}

2) pip install y ejecutar localmente (stdio)

pip install ppb-mcp
MCP_TRANSPORT=stdio ppb-mcp

Configuración de Claude Desktop:

{
  "mcpServers": {
    "ppb": {
      "command": "ppb-mcp",
      "env": { "MCP_TRANSPORT": "stdio" }
    }
  }
}

3) Docker

docker run --rm -p 8000:8000 \
  -e MCP_TRANSPORT=streamable-http \
  -v ppb-hf-cache:/data/huggingface \
  ghcr.io/paulplee/ppb-mcp:latest

4) Desde el código fuente

git clone https://github.com/paulplee/ppb-mcp
cd ppb-mcp
pip install -e ".[dev]"
ppb-mcp           # streamable-http on :8000

Sesión de ejemplo

> list_tested_configs
{ "gpus": ["Apple M4 Pro", "NVIDIA GB10", "NVIDIA GeForce RTX 5090"],
  "models": ["Qwen3.5-9B", ...], "quantizations": ["Q4_K_M", ...] }

> recommend_quantization(gpu_vram_gb=32, concurrent_users=8, model="Qwen3.5-9B", priority="balance")
{ "recommended_quantization": "Q5_K_M",
  "estimated_vram_usage_gb": 27.8,
  "estimated_tokens_per_second": 142.0,
  "headroom_gb": 4.2,
  "confidence": "high",
  "reasoning": "Q5_K_M is recommended for your NVIDIA GeForce RTX 5090 (32 GB) ...",
  "alternatives": ["Q4_K_M", "Q8_0"] }

Configuración

Variable de entorno

Predeterminado

Notas

HF_DATASET

paulplee/ppb-results

ID del conjunto de datos de HuggingFace

REFRESH_INTERVAL_HOURS

1

Cadencia de actualización en segundo plano

MCP_TRANSPORT

streamable-http

stdio o streamable-http

HOST

0.0.0.0

Host de enlace HTTP

PORT

8000

Puerto de enlace HTTP

LOG_LEVEL

INFO

Nivel de logging de Python

Autoalojamiento (Lightsail / cualquier VPS con Ubuntu)

git clone https://github.com/paulplee/ppb-mcp /tmp/ppb-mcp
cd /tmp/ppb-mcp
DOMAIN=mcp.example.com EMAIL=you@example.com ./deploy/deploy.sh

Esto instala Docker, construye la imagen, registra una unidad systemd, configura nginx y ejecuta certbot.

Desarrollo

pip install -e ".[dev]"
ruff check src tests
pytest -v

Las pruebas de integración contra el conjunto de datos en vivo de HuggingFace están protegidas por PPB_RUN_INTEGRATION=1 para mantener la CI sin conexión.

Cómo funcionan las recomendaciones

  1. Nivel 1 — coincidencia empírica exacta (confianza alta). ≥3 ejecuciones medidas en una GPU igual o inferior a su presupuesto de VRAM en la concurrencia solicitada.

  2. Nivel 2 — empírica cercana (media). Mismo (model, quant) comparado en una GPU diferente con la misma concurrencia; rendimiento prestado, VRAM escalada a su tarjeta.

  3. Nivel 3 — extrapolación de fórmula (baja). vram_per_user ≈ (params_B × bits_per_weight / 8) × 1.15; viable si el total ≤ 90 % de su VRAM.

Licencia

MIT — ver LICENSE.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    Live, reproducible crypto infrastructure benchmarks for AI agents: RPC latency, bridge fees, L1 finality, gas oracle accuracy, stablecoin pegs. Three tools (list_benchmarks, get_benchmark,query_prom), no API key, CC-BY-4.0 data.
    8
    MIT
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables benchmarking of local LLM models (performance and quality) and sharing results to a public leaderboard via MCP tools.
    4 npm
    8
    Apache 2.0