PromptThrift MCP

Compresión inteligente de tokens para aplicaciones LLM. Ahorre entre un 70 y un 90 % en costos de API con compresión local de Gemma 4, seguimiento de costos multimodelo y enrutamiento inteligente de modelos.

Documentación

PromptThrift MCP: Compresión Inteligente de Tokens para Apps de LLM

Reduce entre un 70-90% los costos de API de LLM con compresión inteligente de conversaciones. Ahora con compresión local Gemma 4: resúmenes más inteligentes, costo de API cero.

PromptThrift MCP server

License: MIT Python 3.10+ MCP Compatible Gemma 4

¡Si esto te ahorra dinero, dale una estrella a este repo!

El Problema

Cada llamada a la API de LLM reenvía tu historial de conversación completo. Un chat de 20 turnos cuesta 6 veces más por llamada que uno de 3 turnos, así que estás pagando por los mismos mensajes antiguos una y otra vez.

Turn 1:  ████ 700 tokens ($0.002)
Turn 5:  ████████████████ 4,300 tokens ($0.013)
Turn 20: ████████████████████████████████████████ 12,500 tokens ($0.038)
                                              ↑ You're paying for THIS every call

La Solución

PromptThrift es un servidor MCP con 4 herramientas para reducir drásticamente tus costos de API:

HerramientaQué haceImpacto
promptthrift_compress_historyComprime turnos antiguos en un resumen inteligente50-90% menos tokens de entrada
promptthrift_count_tokensRastrea el uso de tokens y costos en 14 modelosSaber a dónde va el dinero
promptthrift_suggest_modelRecomienda el modelo más barato para la tarea60-80% en tareas simples
promptthrift_pin_factsFija datos críticos que sobreviven a la compresiónNunca pierdas contexto clave

¿Por qué PromptThrift?

PromptThriftContext ModeHeadroom
LicenciaMIT (uso comercial OK)ELv2 (sin competencia)Apache 2.0
Tipo de compresiónMemoria de conversaciónVirtualización de esquema de herramientasSalida de herramientas
Soporte de LLM localGemma 4 vía OllamaNoNo
Rastreo de costosComparación multi-modeloNoNo
Enrutamiento de modelosIntegradoNoNo
Datos fijadosLista de Nunca ComprimirNoNo

Inicio Rápido

Instalación

Opción A: pip install (recomendado)

pip install git+https://github.com/woling-dev/promptthrift-mcp.git

Opción B: clonar e instalar

git clone https://github.com/woling-dev/promptthrift-mcp.git
cd promptthrift-mcp
pip install -e .

Opcional: Habilitar Compresión Gemma 4

Para compresión asistida por IA más inteligente (gratuita, se ejecuta localmente):

# Install Ollama: https://ollama.com
ollama pull gemma4:e4b

PromptThrift detecta Ollama automáticamente. Si está en ejecución → usa Gemma 4 para compresión. Si no → usa compresión heurística rápida. Configuración cero necesaria.

Claude Desktop

Añade a claude_desktop_config.json:

{
  "mcpServers": {
    "promptthrift": {
      "command": "python",
      "args": ["/path/to/promptthrift-mcp/server.py"]
    }
  }
}

Cursor / Windsurf

Añade a tu configuración de MCP:

{
  "mcpServers": {
    "promptthrift": {
      "command": "python",
      "args": ["/path/to/promptthrift-mcp/server.py"]
    }
  }
}

Ejemplo del Mundo Real

Un asistente de programación con IA depurando un problema complejo durante más de 30 turnos:

Antes de la compresión (enviado en cada llamada a la API):

User: My Next.js app throws a hydration error on the /dashboard page.
Asst: That usually means server and client HTML don't match. Can you share the component?
User: [pastes 50 lines of DashboardLayout.tsx]
Asst: I see the issue, you're using `new Date()` directly in render, which differs
      between server and client. Let me also check your data fetching...
User: I also get a warning about useEffect running twice.
Asst: That's React 18 Strict Mode. Not related to hydration. Let me trace the real bug...
User: Wait, there's also a flash of unstyled content on first load.
Asst: That's a separate CSS loading order issue. Let me address both...
      [... 25 more turns of debugging, trying fixes, checking logs ...]
User: OK it's fixed now! But I want to add dark mode next.
Asst: Great! For dark mode with Next.js + Tailwind, here are three approaches...

~8.500 tokens después de 30 turnos, y creciendo en cada llamada a la API

Después de la compresión Gemma 4:

[Compressed history]
Resolved Next.js hydration error in DashboardLayout.tsx caused by
Date() in render (fixed with useEffect). Unrelated: React 18 Strict Mode
double-fire (expected), CSS flash (fixed via loading order).
User now wants to add dark mode to Next.js + Tailwind app.
[End compressed history]

[Recent turns preserved, last 4 turns intact]

~1.200 tokens. 86% ahorrado en cada llamada posterior

Impacto en costos a escala (Claude Sonnet @ $3/MTok):

EscenarioSin PromptThriftCon PromptThriftAhorro Mensual
1 desarrollador, 20 sesiones/día$5.10/mes$0.72/mes$4.38
Equipo de 10 desarrolladores$51/mes$7.20/mes$43.80
Bot de servicio al cliente (500 chats/día)$255/mes$36/mes$219
Plataforma de agentes de IA (5K sesiones/día)$2.550/mes$357/mes$2.193

Datos Fijados (Lista de Nunca Comprimir)

Algunos datos nunca deben perderse durante la compresión: nombres de usuarios, preferencias críticas, decisiones clave. Fíjalos:

You: "Pin the fact that this customer is allergic to nuts"

→ promptthrift_pin_facts(action="add", facts=["Customer is allergic to nuts"])
→ This fact will appear in ALL future compressed summaries, guaranteed.

Modelos Soportados (precios de abril 2026)

ModeloEntrada $/MTokSalida $/MTok¿Local?
gemma-4-e2b$0.00$0.00Ollama
gemma-4-e4b$0.00$0.00Ollama
gemma-4-27b$0.00$0.00Ollama
gemini-2.0-flash$0.10$0.40
gpt-4.1-nano$0.10$0.40
gpt-4o-mini$0.15$0.60
gemini-2.5-flash$0.15$0.60
gpt-4.1-mini$0.40$1.60
claude-haiku-4.5$1.00$5.00
gemini-2.5-pro$1.25$10.00
gpt-4.1$2.00$8.00
gpt-4o$2.50$10.00
claude-sonnet-4.6$3.00$15.00
claude-opus-4.6$5.00$25.00

Cómo Funciona

Before (every API call sends ALL of this):
┌──────────────────────────────────┐
│ System prompt      (500 tokens)  │
│ Turn 1: user+asst  (600 tokens)  │  ← Repeated every call
│ Turn 2: user+asst  (600 tokens)  │  ← Repeated every call
│ ...                              │
│ Turn 8: user+asst  (600 tokens)  │  ← Repeated every call
│ Turn 9: user+asst  (new)         │
│ Turn 10: user      (new)         │
└──────────────────────────────────┘
Total: ~6,500 tokens per call

After PromptThrift compression:
┌──────────────────────────────────┐
│ System prompt      (500 tokens)  │
│ [Pinned facts]      (50 tokens)  │  ← Always preserved
│ [Compressed summary](200 tokens) │  ← Turns 1-8 in 200 tokens!
│ Turn 9: user+asst  (kept)        │
│ Turn 10: user      (kept)        │
└──────────────────────────────────┘
Total: ~1,750 tokens per call (73% saved!)

Modos de Compresión

ModoMétodoCalidadVelocidadCosto
HeurísticoExtracción basada en reglasBuena (reducción del 50-60%)InstantáneaGratis
LLM (Gemma 4)Comprensión impulsada por IAExcelente (reducción del 70-90%)~10-15sGratis (local)

PromptThrift usa automáticamente el mejor método disponible. Instala Ollama + Gemma 4 para máxima calidad de compresión.

¿Cuándo Brilla la Compresión?

La efectividad de la compresión escala con la longitud de la conversación y la redundancia:

Longitud de ConversaciónReducción TípicaMejor Para
Corta (< 5 turnos, mayormente técnica)15-25%Ahorro mínimo: dejar como está
Media (10-20 turnos, chat mixto)50-70%Punto óptimo: reducción clara de costos
Larga (30+ turnos, depuración/iteración)70-90%Ahorro masivo: comprimir temprano y seguido

¿Por qué? Las conversaciones cortas y densas tienen poco relleno que eliminar. Las conversaciones más largas acumulan saludos, contexto repetido, callejones sin salida exploratorios y explicaciones extensas, y eso es exactamente lo que el compresor elimina. Una sesión de depuración de 30 turnos con fragmentos de código, resolución de problemas de ida y vuelta y resolución final se comprime drásticamente porque solo la conclusión y las decisiones clave importan para el contexto futuro.

Regla práctica: Empieza a comprimir después de 8-10 turnos para mejores resultados.

Variables de Entorno

VariableRequeridaPredeterminadaDescripción
PROMPTTHRIFT_OLLAMA_MODELNogemma4:e4bModelo Ollama para compresión con LLM
PROMPTTHRIFT_OLLAMA_URLNohttp://localhost:11434Endpoint de API de Ollama
PROMPTTHRIFT_DEFAULT_MODELNoclaude-sonnet-4.6Modelo predeterminado para estimaciones de costos

Seguridad

  • Todos los datos se procesan localmente por defecto. Nada sale de tu máquina
  • La compresión Ollama se ejecuta 100% en tu hardware
  • Saneador post-compresión elimina patrones de inyección de prompts de los resúmenes
  • Las claves de API se leen solo de variables de entorno, nunca codificadas
  • Sin almacenamiento persistente, sin telemetría, sin llamadas a terceros

Hoja de Ruta

  • Compresión heurística de conversaciones
  • Conteo de tokens multi-modelo (14 modelos)
  • Enrutamiento inteligente de modelos
  • Compresión LLM local Gemma 4 vía Ollama
  • Datos fijados (Lista de Nunca Comprimir)
  • Saneador de seguridad post-compresión
  • Compresión en la nube (respaldo de API Anthropic/OpenAI)
  • Asesor de optimización de caché de prompts
  • Panel web para análisis de uso
  • Extensión de VS Code

Contribuciones

¡Las PRs son bienvenidas! Este proyecto usa licencia MIT. Haz un fork, mejóralo, publícalo.

Acerca de BrandDefender.ai

BrandDefender.ai es la línea de productos de Wolin Global Media (沃嶺國際媒體), un estudio de infraestructura de IA con sede en Taiwán que ayuda a las marcas a ser descubiertas, entendidas y recomendadas por sistemas de IA.

Lo que construimos

🔍 Consultoría AEO (Optimización para Motores de Respuesta) Logra que tu marca sea citada correctamente por ChatGPT, Gemini, Perplexity y Claude. Implementamos esquema JSON-LD, optimizamos la estructura del contenido y monitoreamos la presencia en búsquedas de IA para marcas taiwanesas de comida, té, belleza y estilo de vida.

💬 Servicio al Cliente con IA (Bot de LINE) Chatbots de LINE de nivel de producción con memoria de 3 capas, toma de control por administrador y backend de Supabase. Ya sirviendo a marcas reales en retail y restaurantes.

🧠 Infraestructura de Memoria MCP para IA Servidores MCP de código abierto para Claude Code, Cursor y desarrolladores de LLM. Local-first, con privacidad preservada, construidos para ahorrar costos de API.

Contacto

¿Eres una marca de Taiwán que quiere un audit de AEO? Ofrecemos escaneo integral con ChatGPT / Gemini / Perplexity + reparación de JSON-LD + monitoreo mensual. Correo o LINE, contáctanos directamente.

Licencia

Licencia MIT. Gratis para uso personal y comercial.


© 2026 Wolin Global Media (沃嶺國際媒體).

¡Dale una estrella a este repo si te ahorra dinero!