Skip to main content
Glama

claude-memory

Memoria + seguimiento de proyectos para Claude Code. Un servidor MCP.

  • Búsqueda semántica sobre todas las transcripciones pasadas de Claude Code — las nuevas sesiones recuerdan las antiguas, mucho más allá de la ventana de contexto

  • Notas duraderas (remember) — por proyecto o globales

  • Seguimiento estructurado: proyectos → hitos → épicas → tickets → tareas, representado como hoja de ruta

  • Elementos de seguimiento incrustados en el mismo espacio vectorial — los tickets aparecen en la búsqueda semántica

  • Prompts de sistema por proyecto, almacenados en la base de datos, inyectables al inicio de la sesión

Stack: Voyage AI embeddings + Qdrant base de datos vectorial + SQLite + FastMCP. Todo gratis: el nivel gratuito de Voyage cubre fácilmente el uso personal, el nivel gratuito de Qdrant Cloud almacena 1M de vectores (o ejecuta docker local). $0 de operación.

Configuración

Dos claves:

git clone https://github.com/mathis-sperlich/claude-memory
cd claude-memory
python3 -m venv .venv
.venv/bin/pip install -r requirements.txt
cp .env.example .env
# fill VOYAGE_API_KEY, QDRANT_URL, QDRANT_API_KEY

Apunta SCAN_PROJECTS en ingest.py a tus directorios de transcripciones (Claude Code los escribe en ~/.claude/projects/<encoded-project-dir>/*.jsonl).

Ingesta

.venv/bin/python ingest.py --dry-run   # sanity-check chunking
.venv/bin/python ingest.py             # embed + upsert

Idempotente — las re-ejecuciones solo incrustan fragmentos nuevos. Seguro como trabajo cron. Plantilla launchd por hora: launchd/com.mathis.claude-memory.plist (edita las rutas, cp a ~/Library/LaunchAgents/, launchctl load).

Prueba la recuperación desde la CLI:

.venv/bin/python query.py "how did the auth token refresh bug get fixed?"

¿Malos resultados? Baja MAX_CHUNK_CHARS en ingest.py, o prueba un EMBED_MODEL más grande en .env y vuelve a ingestar con --reset.

Conectar con Claude Code

~/.claude/settings.json:

{
  "mcpServers": {
    "claude-memory": {
      "command": "/path/to/claude-memory/.venv/bin/python",
      "args": ["/path/to/claude-memory/mcp_server.py"]
    }
  }
}

Reinicia Claude Code. Listo — Claude ahora tiene query_history, remember, herramientas de seguimiento y herramientas de prompt de sistema.

Herramientas

Memoria

Tool

Propósito

query_history(question, k=, project=, since=, kind=)

Búsqueda semántica sobre todo. kind: note, transcript, tracking, o subtipo

list_recent_sessions(days=, project=)

En qué estaba trabajando últimamente

remember(content, title=, tags=, project=)

Guarda una nota duradera. project la limita; si se omite → global (aparece en la búsqueda de todos los proyectos)

list_notes(tag=, limit=) / forget(note_id)

Gestiona notas

Seguimiento

Jerarquía: proyecto → hito (opcional) → épica → ticket → tarea.

Tool

Propósito

create_project(name, description=)

Parte superior de la jerarquía

create_milestone(project, name, body=, target_date=)

Lo que se lanza junto

create_epic(project, title, body=, milestone=, priority=)

Agrupa tickets hacia un objetivo

create_ticket(project, title, body=, epic=, priority=)

Unidad de trabajo

create_todo(project, title, body=, ticket=, priority=)

Pequeño paso

list_items(kind=, project=, status=, parent_id=)

Lista filtrada

get_item(id)

Un elemento + hijos

update_item(id, status=, title=, body=, priority=, ...)

Actualización parcial; da error en campos que no aplican

delete_item(id)

Elimina. Los proyectos deben estar vacíos primero

get_roadmap(project)

Hoja de ruta en Markdown: hitos → épicas → tickets + progreso

list_projects()

Todos los nombres de proyectos en todos los almacenes

status: open / in_progress / done. priority: P0P3.

Prompts de sistema

set_system_prompt(content, project=) / get_system_prompt(project=) / list_system_prompts() / delete_system_prompt(project=). Capas globales + por proyecto, compuestas al leer. Se almacenan en tracking.db. Usa docs/usage.md como respaldo cuando no está definido.

Hooks (opcionales, deterministas)

Las herramientas MCP se disparan cuando el modelo decide. Los hooks se disparan siempre. hooks/session_start.py inyecta los tickets abiertos del proyecto actual + el prompt de sistema en cada inicio de sesión:

{
  "hooks": {
    "SessionStart": [{
      "matcher": "*",
      "hooks": [{
        "type": "command",
        "command": "/path/to/claude-memory/.venv/bin/python /path/to/claude-memory/hooks/session_start.py"
      }]
    }]
  }
}

Acceso remoto (opcional)

Por defecto = stdio local, cero red. ¿Quieres la misma memoria desde claude.ai u otras máquinas? Transporte HTTP + túnel Cloudflare + OAuth de GitHub con lista de permitidos para iniciar sesión:

.venv/bin/python mcp_server.py --transport http --port 8765

Guía completa, incl. servicios launchd + watchdog auto-reparable: CLOUD_SETUP.md.

Notas

  • Privacidad: Voyage ve el texto al incrustar (sin entrenamiento con datos de clientes según los TOS), Qdrant Cloud almacena vectores + payloads. Si ambos te preocupan → Qdrant local + embedder local, mismo código.

  • Las solicitudes de incrustación estancadas están limitadas por las variables de entorno VOYAGE_TIMEOUT / VOYAGE_MAX_RETRIES (por defecto 20s / 2).

-
license - not tested
-
quality - not tested
B
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • The project brain for AI coding agents — memory, decisions, sprints, knowledge base via MCP.

  • Hosted MCP memory: save sessions/decisions once, search from Claude, Cursor, ChatGPT. EU-hosted FTS.

  • Shared, governed long-term memory for AI agents across tools and sessions via MCP and REST.

View all MCP Connectors

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/mathis-sperlich/claude-memory'

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