Skip to main content
Glama

memo-mcp

memo-mcp es una puerta de enlace MCP de Streamable HTTP protegida para una API REST de Mem0 autohospedada y privada. Expone una pequeña superficie de herramientas de memoria no destructiva, manteniendo a Mem0, PostgreSQL y las credenciales internas de API fuera de la red pública.

Está diseñada como una implementación de referencia para un único ámbito de memoria de confianza. Antes de permitir que varias personas la usen, integre un adaptador de políticas del lado del servidor que derive el ámbito de memoria de la afiliación autenticada. Nunca permita que un navegador o un cliente MCP elija MEMORY_SCOPE.

Modelo de seguridad

  • Mem0 permanece privado; exponga solo esta puerta de enlace a través de un proxy inverso.

  • Los clientes que no son de navegador usan un token de portador distinto y revocable.

  • Los clientes de navegador pueden usar la introspección de tokens OAuth/OIDC con comprobaciones exactas de emisor, audiencia, sujeto inmutable y ámbito.

  • memo_remember_fact requiere mem0.write para los clientes OAuth.

  • La puerta de enlace no proporciona deliberadamente ninguna herramienta de eliminación de memoria. Realice la eliminación mediante un flujo de trabajo administrativo privado y separado, con aprobación explícita.

  • La puerta de enlace rechaza los formatos comunes de credenciales y claves privadas antes de que puedan escribirse en la memoria. Esto es una red de seguridad, no un sustituto de la política del operador.

  • Un llamador nunca debe seleccionar su propio ámbito de memoria. En los despliegues multiusuario, una aplicación de confianza debe derivar ese ámbito de la afiliación del lado del servidor.

Related MCP server: memex

Inicio rápido

  1. Copie .env.example a .env y reemplace cada marcador de posición con sus propios valores privados. No incluya .env en el control de versiones.

  2. Cree una red Docker privada e inicie el servicio con docker compose -f compose.example.yml up -d --build.

  3. Exponga únicamente la puerta de enlace a través de HTTPS. No publique Mem0, PostgreSQL ni ningún archivo de entorno con valores de configuración.

  4. Verifique que los metadatos del recurso protegido devuelven 200 cuando OAuth está habilitado y que una solicitud anónima a /mcp devuelve 401.

Herramientas

  • memo_search_memory

  • memo_remember_fact

Configuración

Consulte .env.example. PUBLIC_MCP_URL, MCP_ALLOWED_HOSTS y MCP_ALLOWED_ORIGINS deben describir su propio endpoint HTTPS. La puerta de enlace llama a la API de Mem0 subyacente mediante X-API-Key.

MCP_ALLOWED_HOSTS es obligatorio. El contexto de compilación del contenedor excluye .env, los metadatos de Git y los artefactos locales de Python para que no puedan copiarse en una imagen por accidente.

Desarrollo

python -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
python -m unittest discover -s tests -v

Este proyecto usa el Python MCP SDK oficial.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Centralized agentic memory and MCP gateway for LLMs, enabling persistent memory recall, validation, and integration with upstream MCP servers.
    Apache 2.0
  • A
    license
    Not graded
    quality
    A
    maintenance
    Bridges MCP to a self-hosted Mem0 OSS server, enabling memory management operations like adding, searching, updating, and deleting memories.
    MIT