Skip to main content
Glama

cap-shield MCP server

Selección y compresión de contexto para agentes de IA, con el recall medido, no afirmado.

El servidor en sí no importa nada fuera de la biblioteca estándar. Instálalo como paquete o tómalo como un único archivo: ambas opciones funcionan.

Por qué

Más contexto empeora a los agentes. ETH Zurich descubrió que los archivos de contexto REDUCEN el éxito de las tareas en comparación con no darle al agente ningún contexto del repositorio, al tiempo que aumentan el coste de inferencia en más de un 20 %. Alrededor de dos tercios de los fallos de producción de los agentes se deben a problemas de contexto, no a que el modelo sea incapaz.

Así que la pregunta no es cuánto recortas, sino si lo que conservaste fue suficiente — y eso se mide aquí, en un benchmark que no elegimos: LongMemEval-S, 500 preguntas. Recall@10 del 93,8 % frente a una línea base léxica del 51,9 %.

Recall@10 es la medida estricta: una pregunta solo cuenta cuando se encuentran TODAS las sesiones de referencia. Encontrar la mitad de la respuesta significa que el agente responde con confianza sobre la mitad de una base.

Dos de las cinco herramientas no necesitan cuenta. Mide primero, decide después.

Related MCP server: compresh-mcp

Instalación

pip install cap-shield
{
  "mcpServers": {
    "cap-shield": {
      "command": "cap-shield-mcp",
      "env": {
        "CAP_SHIELD_API_KEY": "cap_live_..."
      }
    }
  }
}

Python 3.9+. El bloque env solo se necesita para remember y assemble_context — déjalo fuera y las dos herramientas de medición seguirán funcionando.

También publicado en el registro oficial de MCP como io.github.robinlidberg-dot/cap-shield.

¿Prefieres un único archivo a un paquete?

curl -O https://cap-shield-robin.fly.dev/cap_mcp.py

Entonces el comando es python y el argumento es la ruta al archivo.

El SKILL.md opcional le indica al agente cuándo usar estas herramientas — y cuándo no.

Herramientas

measure_traffic · sin cuenta

Mide cuánto tráfico de tu propio agente podría ahorrarse. NO SE NECESITA CUENTA NI CLAVE — úsala primero. Devuelve el ahorro de bytes en la transmisión y, si se proporciona una consulta, el ahorro de tokens mediante la recuperación selectiva de contexto. No se almacena nada: el texto se comprime en memoria y se descarta. Límite de 20 llamadas por hora por IP.

list_packages · sin cuenta

Lista los diccionarios disponibles con su compresión MEDIDA, incluidos los que rinden mal. Cada entrada indica si funciona mensaje a mensaje o solo por lotes, y cuántos mensajes salieron MÁS GRANDES. No se necesita clave.

remember · requiere clave

Almacena una entrada de memoria para recuperarla más tarde. REQUIERE UNA CLAVE. Esto no llama a ningún modelo de lenguaje — almacena texto en un archivo aislado por inquilino. Usa assemble_context para recuperar las entradas relevantes.

assemble_context · requiere clave

Recupera las entradas de memoria que responden a una pregunta, dentro de un presupuesto de tokens. REQUIERE UNA CLAVE. Envía el 'context' devuelto a tu modelo de lenguaje EN LUGAR DE todo el historial. Esto no llama a un modelo en sí — selecciona qué enviar. El presupuesto es un techo, no un objetivo: la selección se detiene donde se agota la relevancia, a menudo muy por debajo. La respuesta indica cuántas entradas se dejaron atrás y por qué.

get_account

Obtén una cuenta y una clave de API. Requiere una dirección de correo electrónico. La clave se devuelve UNA VEZ y no se puede volver a mostrar — guárdala de inmediato. Las cuotas beta son bajas por diseño; son límites duros, nunca facturación por exceso.

Las descripciones anteriores están copiadas textualmente del servidor. Si alguna vez difieren de lo que devuelve tools/list, el servidor tiene razón y este archivo está desactualizado.

Qué significan los números

La compresión ahorra bytes en la transmisión. La selección ahorra tokens en el contexto. Dos mecanismos diferentes — sumarlos produce un número que no significa nada.

Los paquetes comprimidos se descomprimen antes de que un modelo los vea, por lo que esto no reduce el coste de inferencia. Decir lo contrario es la forma más fácil de equivocarse sobre este proyecto.

Cada cifra se publica en vivo, incluido lo que no se ha medido y qué paquetes rinden mal:

https://cap-shield-robin.fly.dev/.well-known/cap-shield.json

Consulta eso en lugar de confiar en este archivo. Este se queda obsoleto; el documento no.

Medir sin MCP

pip install cap-shield
from cap_shield import measure, print_measurement
print_measurement(measure(texts=[...], query="..."))

Sin cuenta, nada almacenado. La respuesta incluye la proporción degradada — cuántos de tus mensajes salieron más grandes.

El procesamiento por lotes tiene una condición de seguridad

El procesamiento por lotes comprime varios mensajes en el mismo contexto, lo que abre un canal lateral de tipo CRIME/BREACH: alguien que pueda colocar texto elegido en el mismo lote que un secreto, y observar el tamaño del lote, aprende algo sobre el secreto.

Solo procesa por lotes mensajes que ya compartan un límite de confianza. El relleno opcional cierra la fuga por menos de dos bytes por mensaje, y está desactivado por defecto — lo decimos en lugar de dejar que lo asumas.

El empaquetado individual no tiene este problema en absoluto.

Portabilidad

Las versiones de diccionario nunca se eliminan, y la garantía no depende de que sigamos aquí: la exportación del archivo lleva los binarios del diccionario, y un desempaquetador independiente funciona sin puerta de enlace, sin red y sin ninguna otra parte del sistema.

https://cap-shield-robin.fly.dev/cap_unpack.py

Se sirve sin token, porque quien más lo necesita es quien ya no tiene cuenta.

Estado

Beta. Versión del servidor 0.1.0.

Docs: https://cap-shield-robin.fly.dev/docs/quickstart Consola: https://cap-shield-console.lovable.app

Licencia

MIT — ver LICENSE.

A
license - permissive license
Not graded
quality - not tested
B
maintenance

Maintenance

0Releases (12mo)
Commit activity

Related MCP Connectors

Related MCP Servers

View all related MCP servers

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/robinlidberg-dot/cap-shield-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server