assistant-ia-local

assistant-ia-local

A local MCP server for RGPD-compliant document Q&A, enabling Claude Code to ingest, query, search, delete, and audit personal documents entirely on-device.

Category
Visit Server

README

Assistant IA Local - Conforme RGPD

Assistant IA personnel 100% local, conforme RGPD par conception. Fonctionne sur votre ordinateur portable en 20 minutes. Zero dependance cloud. Vos donnees restent chez vous.


Architecture

┌─────────────────────────────────────────────────────────────────┐
│                        VOTRE MACHINE                             │
│                                                                 │
│  ┌───────────┐     ┌──────────────┐     ┌──────────────────┐   │
│  │           │     │              │     │                  │   │
│  │  CLI/Web  │────>│  Assistant   │────>│  Ollama (LLM)    │   │
│  │  Interface│<────│  Core        │<────│  100% local      │   │
│  │           │     │              │     │                  │   │
│  └───────────┘     └──────┬───────┘     └──────────────────┘   │
│                           │                                     │
│                    ┌──────▼───────┐                              │
│                    │              │                              │
│                    │  ChromaDB    │  Embeddings locaux           │
│                    │  (vectoriel) │  sentence-transformers       │
│                    │              │                              │
│                    └──────────────┘                              │
│                                                                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  Module RGPD : Audit | Suppression | Export | Registre   │   │
│  └──────────────────────────────────────────────────────────┘   │
│                                                                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │  Serveur MCP : expose les outils a Claude Code           │   │
│  └──────────────────────────────────────────────────────────┘   │
│                                                                 │
└─────────────────────────────────────────────────────────────────┘

          RIEN NE SORT DE CETTE BOITE. JAMAIS.

Ce que ca fait

  • Repondre a vos questions depuis vos documents : ingerez vos PDF, DOCX, TXT, Markdown. Posez une question. L'assistant repond en citant ses sources (document, page).
  • Recherche semantique : trouvez l'information pertinente meme si vous ne vous souvenez pas des mots exacts.
  • Generation assistee : brouillons d'emails, syntheses, notes, dans votre style, depuis votre base de connaissances.
  • Conformite RGPD native : journal d'audit immutable, droit a la suppression, export de donnees, registre des traitements CNIL.
  • Integration Claude Code via MCP : Claude Code peut interroger votre base locale comme un outil.

Installation en 5 etapes

Prerequis

  • Python 3.10 ou superieur
  • 8 Go de RAM minimum (16 Go recommande)
  • 5 Go d'espace disque pour le modele

Etape 1 : Installer Ollama

# macOS
brew install ollama

# Linux
curl -fsSL https://ollama.com/install.sh | sh

# Windows (WSL)
curl -fsSL https://ollama.com/install.sh | sh

Etape 2 : Telecharger un modele

ollama pull mistral

Mistral 7B est le modele par defaut. Vous pouvez aussi utiliser llama3, phi3, ou tout autre modele supporte par Ollama.

Etape 3 : Installer l'assistant

pip install -e /chemin/vers/assistant-ia-local-rgpd

Ou depuis le depot clone :

git clone <votre-depot>
cd assistant-ia-local-rgpd
pip install -e .

Etape 4 : Initialiser

assistant-ia init

Cela verifie qu'Ollama tourne, cree les repertoires de donnees, et genere la configuration par defaut.

Etape 5 : Ingerer vos documents

assistant-ia ingerer ~/Documents/mon-dossier/

C'est pret. Posez votre premiere question :

assistant-ia demander "Quel est le montant du contrat signe en mars ?"

Utilisation

Ingerer des documents

# Un fichier
assistant-ia ingerer rapport-annuel.pdf

# Un dossier entier (recursif)
assistant-ia ingerer ~/Documents/travail/

# Formats supportes : PDF, DOCX, TXT, MD

Poser une question

assistant-ia demander "Quelles sont les obligations du prestataire ?"

Reponse avec sources citees :

Reponse : Le prestataire est tenu de livrer les livrables avant le 31 mars
et de maintenir une disponibilite de 99.5% sur la plateforme.

Sources :
  [1] contrat-prestation-2026.pdf, page 4
  [2] annexe-technique.pdf, page 12

Recherche semantique

assistant-ia chercher "clause de confidentialite"

Supprimer un document (droit a l'effacement RGPD)

assistant-ia supprimer doc_abc123

# Confirmation interactive + preuve de suppression generee

Audit complet

assistant-ia audit

# Affiche toutes les operations : ingestions, requetes, suppressions
# Avec horodatage, operateur, details

Exporter vos donnees (droit a la portabilite)

assistant-ia exporter --format json --sortie ~/export-donnees/

Statut du systeme

assistant-ia statut
Ollama          : actif (mistral 7B)
Documents       : 47 fichiers indexes
Chunks          : 1,203 segments
Stockage        : 234 Mo
Derniere action : 2026-07-15 14:32 - ingestion rapport-Q2.pdf

Conformite RGPD : ce que ca signifie concretement

Aucune donnee ne quitte votre machine

  • Le LLM tourne localement via Ollama. Aucun appel API externe.
  • Les embeddings sont calcules localement avec sentence-transformers.
  • ChromaDB stocke les vecteurs sur votre disque dur.
  • Aucune telemetrie, aucun analytics, aucun appel reseau.

Droits implementes

Droit RGPD Implementation
Acces assistant-ia exporter exporte toutes vos donnees
Rectification Re-ingerez le document corrige
Effacement assistant-ia supprimer + preuve de suppression
Portabilite Export JSON complet de toute la base
Information Journal d'audit complet horodate

Registre des traitements (Article 30 RGPD)

assistant-ia audit --registre

Genere automatiquement le registre des traitements conforme aux exigences de la CNIL :

  • Finalite du traitement
  • Categories de donnees
  • Duree de conservation
  • Mesures de securite
  • Base legale

Pret pour un controle CNIL

Si votre DPO vous demande des comptes :

  1. assistant-ia audit : montre toutes les operations
  2. assistant-ia audit --registre : genere le registre CNIL
  3. assistant-ia exporter : prouve que les donnees sont locales et exportables
  4. assistant-ia supprimer : demontre le droit a l'effacement

Configuration

Fichier de configuration : ~/.assistant-ia/config.yaml

# Modele Ollama a utiliser
modele: mistral

# Taille des segments de texte (en tokens)
taille_chunk: 500

# Chevauchement entre segments
chevauchement_chunk: 50

# Nombre de resultats pour la recherche
top_k: 5

# Repertoire de donnees
repertoire_donnees: ~/.assistant-ia/data

# Repertoire d'audit
repertoire_audit: ~/.assistant-ia/audit

# Langue de l'interface
langue: fr

# Modele d'embeddings local
modele_embeddings: all-MiniLM-L6-v2

Integration Claude Code (MCP)

Cet assistant expose un serveur MCP que Claude Code peut utiliser comme outil.

Configuration

Ajoutez a votre claude_desktop_config.json :

{
  "mcpServers": {
    "assistant-ia-local": {
      "command": "python",
      "args": ["-m", "assistant.mcp_server"],
      "env": {}
    }
  }
}

Outils exposes

  • ingerer : Ingerer un document dans la base locale
  • demander : Poser une question a la base de connaissances
  • chercher : Recherche semantique
  • supprimer : Supprimer un document
  • audit : Consulter le journal d'audit

FAQ

Q : Quelle puissance machine faut-il ? R : Un ordinateur portable recent avec 8 Go de RAM suffit pour Mistral 7B. Pour des modeles plus gros (Llama 70B), 32 Go sont necessaires.

Q : Combien de documents peut-on indexer ? R : Pas de limite technique. Teste avec 10,000 documents / 50,000 pages. La recherche reste sous la seconde.

Q : Les reponses sont-elles aussi bonnes que ChatGPT ? R : Pour des questions sur VOS documents, souvent meilleures, car le contexte est precis. Pour la culture generale, un modele 7B est inferieur a GPT-4.

Q : Peut-on utiliser un autre modele que Mistral ? R : Oui. Tout modele disponible dans Ollama : llama3, phi3, gemma2, mixtral, etc. Changez modele dans la config.

Q : Les donnees sont-elles chiffrees ? R : Les donnees sont stockees en clair sur votre disque. Utilisez le chiffrement de votre OS (FileVault macOS, LUKS Linux, BitLocker Windows) pour une protection supplementaire.

Q : Peut-on l'utiliser en entreprise ? R : Oui. Le registre des traitements et le journal d'audit sont conformes aux exigences CNIL. Consultez votre DPO avec le document docs/rgpd-conformite.md.

Q : Comment mettre a jour le modele ? R : ollama pull mistral telecharge la derniere version. Vos donnees indexees ne sont pas affectees.

Q : Peut-on partager la base entre collegues ? R : Non par conception. Chaque instance est personnelle. Pour un usage equipe, chaque membre a sa propre instance.


Contribuer

Contributions bienvenues. Ouvrez une issue ou une PR.

Priorites :

  • Support de nouveaux formats (emails .eml, .epub, .odt)
  • Interface web locale (Flask)
  • Meilleur chunking (par paragraphe semantique)
  • Support multi-langue des embeddings

Licence

MIT - Copyright 2026 David Dabert

Voir le fichier LICENSE pour les details.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured