hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Integrations
Uses OpenAI's embedding models and LLMs for memory management, with configurable model selection through environment variables.
Memoria MCP
Un servidor de Protocolo de Contexto de Modelo (MCP) que implementa soluciones de memoria para aplicaciones ricas en datos con capacidades de gráficos de conocimiento eficientes.
Descripción general
Este servidor MCP implementa una solución de memoria para aplicaciones con gran cantidad de datos que requieren la búsqueda de información de diversas fuentes, incluyendo archivos subidos. Utiliza HippoRAG internamente para gestionar la memoria mediante un grafo de conocimiento eficiente. HippoRAG es una dependencia necesaria para este paquete.
Características
- Memoria basada en sesiones : crea y administra memoria para sesiones de chat específicas
- Gráfico de conocimiento eficiente : utiliza HippoRAG para la gestión de la memoria
- Compatibilidad con múltiples transportes : funciona con transportes stdio y SSE
- Capacidades de búsqueda : Busque información de varias fuentes, incluidos archivos cargados
- Gestión automática de recursos : limpieza basada en TTL tanto para sesiones como para instancias de memoria
Instalación
Instalar desde PyPI:
O instalar desde la fuente:
Nota: HippoRAG es una dependencia necesaria para que mcp-mem funcione.
Uso
Puede ejecutar el servidor MCP directamente:
De forma predeterminada, se utiliza el transporte stdio. Para usar el transporte SSE:
También puede especificar el host y el puerto para el transporte SSE:
Configuración
Configuración básica
Para utilizar esta herramienta con Claude en Windsurf, agregue la siguiente configuración a su archivo de configuración MCP:
El campo command
debe apuntar al directorio donde instaló el paquete de Python usando pip.
Configuración de variables de entorno
Puede configurar los modelos LLM y de incrustación utilizados por mcp-mem a través de variables de entorno:
EMBEDDING_MODEL_NAME
: Nombre del modelo de incrustación a utilizar (predeterminado: "text-embedding-3-large")EMBEDDING_BASE_URL
: URL base para la API de inserción (opcional)LLM_NAME
: Nombre del modelo LLM a utilizar (predeterminado: "gpt-4o-mini")LLM_BASE_URL
: URL base para la API de LLM (opcional)OPENAI_API_KEY
: clave API de OpenAI (obligatoria)
Configuración de gestión de memoria
El servidor incluye funciones de gestión automática de recursos:
- Tiempo de vida de la sesión : Elimina automáticamente los directorios de sesión tras un número determinado de días de inactividad. Se configura mediante el parámetro
session_ttl_days
(predeterminado: Ninguno - deshabilitado). - Tiempo de vida de la instancia : Descarga automáticamente las instancias de HippoRAG de la memoria tras un periodo de inactividad especificado. Se configura mediante el parámetro
instance_ttl_minutes
(valor predeterminado: 30 minutos).Esta función ayuda a gestionar el uso de memoria descargando instancias inactivas y preservando los datos subyacentes. Al acceder de nuevo a una instancia descargada, se recargará automáticamente desde el disco.
Ejemplo de uso:
Para mayor comodidad, puede utilizar el script de ejemplo proporcionado:
Herramientas disponibles
El servidor MCP proporciona las siguientes herramientas:
- create_memory : Crea una nueva memoria para una sesión de chat determinada
- store_memory : Agregar memoria a una sesión específica
- retrieve_memory : Recuperar memoria de una sesión específica
Desarrollo
Instalación para el desarrollo
Ejecución de pruebas
Estilo de código
Este proyecto utiliza Black para formatear, isort para ordenar las importaciones y flake8 para el control de pelusas:
Contribuyendo
¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.
Licencia
Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.
This server cannot be installed
Un servidor MCP que implementa soluciones de memoria para aplicaciones ricas en datos que utilizan HippoRAG para obtener capacidades de gráficos de conocimiento eficientes, lo que permite la búsqueda en múltiples fuentes, incluidos archivos cargados.