Skip to main content

Serveur MCP local — mémoire personnelle extraite depuis les historiques IA

Project description

personal-memory-mcp

PyPI Python License: MIT

Serveur MCP local qui extrait des faits mémorisables depuis vos historiques de conversations IA et les expose à tous les clients MCP compatibles (Claude Code, Claude Desktop, Cursor…).

Fonctionnement

Historiques IA → extraction LLM → SQLite + sqlite-vec → outils MCP

Les faits sont stockés localement dans ~/.personal-memory/memory.db. Aucun cloud, aucune API externe — tout tourne sur votre machine via Ollama.

Installation

pip install personal-memory-mcp

Prérequis : Python 3.13+, Ollama avec les modèles :

ollama pull qwen3:1.7b
ollama pull qwen3-embedding:0.6b

Démarrage rapide

# Lancer le serveur MCP
mmcp serve

# Configurer automatiquement les clients MCP détectés
mmcp setup

# Importer vos sessions Claude Code
mmcp import claude-code

# Importer un export Claude (ZIP)
mmcp import claude ~/Downloads/export.zip

# Importer un export ChatGPT (ZIP)
mmcp import chatgpt ~/Downloads/export.zip

# Interface web locale
mmcp ui

Outils MCP

Outil Description
search(query) Recherche hybride (vectorielle + BM25)
add(contenu, categorie) Ajoute un fait avec déduplication automatique
list_facts(page, categorie) Liste paginée des faits
delete(id) Supprime un fait
import_source(type, chemin) Déclenche un import
import_conversations(source, page) Expose les conversations brutes pour analyse par l'IA

Configuration Claude Code

claude mcp add -s user personal-memory -- mmcp serve

Commandes CLI

mmcp serve                    # Lance le serveur MCP
mmcp ui                       # Interface web http://localhost:8766
mmcp import claude-code       # Import sessions Claude Code
mmcp import claude <zip>      # Import export Claude
mmcp import chatgpt <zip>     # Import export ChatGPT
mmcp export                   # Export JSON/CSV
mmcp backup                   # Sauvegarde SQLite
mmcp restore                  # Restauration
mmcp migrate-embeddings       # Migration de modèle d'embedding
mmcp status                   # État du serveur et de la base

Cohérence des embeddings et mises à jour d'Ollama

Les modèles d'embedding servis par Ollama ne produisent pas toujours les mêmes vecteurs d'une version à l'autre. C'est documenté pour nomic-embed-text (le modèle d'embedding par défaut) : les vecteurs varient entre versions mineures d'Ollama (cf. ollama/ollama#14449).

Symptôme : après une mise à jour d'Ollama, les recherches deviennent moins pertinentes (scores de similarité dégradés). En effet, votre base a été vectorisée avec l'ancienne version, mais les nouvelles requêtes sont encodées avec la nouvelle — les deux ne sont plus comparables.

Détection automatique : la version d'Ollama utilisée lors de la vectorisation est mémorisée dans la base. Si elle change (au niveau MAJEUR.MINEUR), mmcp status le signale (coherence_embeddings) et le serveur MCP émet un avertissement au démarrage.

Remède : re-vectoriser toute la base avec la version courante d'Ollama (une sauvegarde automatique est créée avant l'opération). Passez le modèle d'embedding courant pour re-vectoriser à l'identique :

mmcp migrate-embeddings --modele nomic-embed-text   # re-vectorise à l'identique
mmcp status                                          # l'avertissement doit disparaître

Sans l'option --modele, mmcp migrate-embeddings migre vers qwen3-embedding:0.6b (changement de modèle et de dimension). C'est aussi une façon valable de repartir sur une base cohérente si vous préférez ce modèle.

Stack technique

  • Python 3.13 + uv
  • MCP SDK Anthropic
  • SQLite + sqlite-vec (stockage vectoriel + FTS5)
  • Ollama : qwen3-embedding:0.6b (embeddings) + qwen3:1.7b (extraction)
  • Recherche hybride : cosinus vectoriel + BM25 fallback

Licence

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

personal_memory_mcp-0.1.3.tar.gz (34.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

personal_memory_mcp-0.1.3-py3-none-any.whl (47.1 kB view details)

Uploaded Python 3

File details

Details for the file personal_memory_mcp-0.1.3.tar.gz.

File metadata

  • Download URL: personal_memory_mcp-0.1.3.tar.gz
  • Upload date:
  • Size: 34.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for personal_memory_mcp-0.1.3.tar.gz
Algorithm Hash digest
SHA256 a990345014201f48416c9a402b6c306b9d402e750fb9c79c987963d25e56f909
MD5 4c2446716de31ba8e2363fd6932ad6cc
BLAKE2b-256 f787bcceba9b2353b064cebe4cad6063fbddb4e10ec1225a792e9bd4b3cf5bb3

See more details on using hashes here.

File details

Details for the file personal_memory_mcp-0.1.3-py3-none-any.whl.

File metadata

File hashes

Hashes for personal_memory_mcp-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 333025694a0c52db126b7203469bfa8e2d0353828e3101ad07b949dea12e1010
MD5 2a1d4cc276e7e75e3163f6e2726f90fb
BLAKE2b-256 cd938951a93517f94194b065413eeeec5528fced6229124fe3a48fc9cfeb8619

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page