PG-Git (Semantic Memory MCP)
PG-Git (Semantischer Speicher MCP)
Ein persistentes, auf PostgreSQL basierendes Repository-Verwaltungssystem und semantischer Speicher-MCP-Server. Anstatt Git-Objekte lose im Dateisystem zu speichern, speichert PG-Git den gesamten gerichteten azyklischen Graphen (DAG) nativ in PostgreSQL, komplett mit automatisch generierten, zeitlich abnehmenden semantischen Vektor-Embeddings für KI-IDEs.
🧠 Warum PG-Git?
Im Standard-Ökosystem für KI-Coding-Agenten basiert die Suche in Codebasen auf starren Grep-Suchen oder teurem AST-Parsing. PG-Git ändert dies grundlegend, indem es Git direkt mit Vektordatenbanken verbindet:
Semantische Codesuche: Finden Sie Code basierend darauf, was er tut, nicht nur anhand seiner Syntax.
Exponentieller zeitlicher Zerfall: PG-Git lässt ältere Vektoren mathematisch zerfallen. Ihr Agent wird Code, den Sie gestern geschrieben haben, gegenüber hochgradig ähnlichem, veraltetem Code, der vor 6 Monaten geschrieben wurde, priorisieren.
Local-First-Prinzip: Keine Cloud-APIs. Es verwendet Ollama mit
nomic-embed-textfür 100 % private Vektorisierung auf dem Gerät.ACID-konform: Native Transaktionen gewährleisten vollständige Sicherheit für den Zugriff durch mehrere Knoten und gleichzeitige KI-Schwarm-Agenten.
Related MCP server: memory-bank-mcp
⚡ Schnellstart
Sie müssen Ollama mit dem geladenen Modell nomic-embed-text ausführen:
ollama run nomic-embed-text1. Abhängigkeiten installieren & migrieren
Sie benötigen eine laufende PostgreSQL-Instanz mit aktiviertem pgvector.
npm install
cp .env.example .env
# Edit .env with your PostgreSQL credentials
node db/migrate.js2. Importieren Sie Ihre GitHub-Historie
Sie können jedes lokale .git-Repository sofort importieren. PG-Git analysiert nativ die Git-Historie, generiert semantische Embeddings für alle Blobs und dedupliziert diese sicher in PostgreSQL:
npm run import3. Zur Konfiguration Ihres Agenten / Ihrer IDE hinzufügen (z. B. mcp_config.json):
{
"mcpServers": {
"pg-git-mcp": {
"command": "node",
"args": ["/absolute/path/to/pg-git/server/mcp.js"],
"env": {
"OLLAMA_URL": "http://localhost:11434",
"EMBED_MODEL": "nomic-embed-text"
}
}
}
}4. Web-UI starten (optional) PG-Git enthält eine elegante IDE-Oberfläche mit zwei Bereichen zum Durchsuchen Ihrer semantischen Repositories.
npm run dev🚀 Praxisbeispiele
Um PG-Git effektiv zu nutzen, sprechen Sie einfach wie gewohnt mit Ihrem IDE-Agenten. Er verwendet die MCP-Tools (pg_git_semantic_search, pg_git_list_repos, pg_git_read_tree, pg_git_read_blob), um mit der Datenbank zu kommunizieren.
Beispiel 1: Spezifische Logik finden
Sie: "Wo behandeln wir den zeitlichen Zerfall für den Speicher-MCP?" Agent: [Ruft
pg_git_semantic_searchauf] "Ich habe die Logik inserver/index.jsinnerhalb deskrusch-memory-mcp-Repos gefunden. Sie verwendet die Formelexp(-DECAY_RATE * age_in_days)."
Beispiel 2: Einen Repository-Baum lesen
Sie: "Wie sieht die Ordnerstruktur für das pg-git-Projekt aus?" Agent: [Ruft
pg_git_read_treeauf] "Hier ist die Struktur des Stammverzeichnisses..."
Wie funktioniert der zeitliche Zerfall?
Beim Aufruf von pg_git_semantic_search gibt PG-Git die Übereinstimmungen mit der höchsten Kosinus-Ähnlichkeit zurück. Es wendet jedoch einen exponentiellen zeitlichen Zerfall basierend auf dem last_seen_at-Zeitstempel des Blobs an. Wenn Sie zwei sehr ähnliche Codeabschnitte haben, erhält der neuere einen deutlich höheren Wert, was verhindert, dass Ihr Agent aufgrund veralteter Implementierungen halluziniert.
🤖 Der autonome Agenten-Workflow (/close)
Sie können PG-Git in Ihren Agenten-Workflow integrieren, um sicherzustellen, dass Ihr semantischer Speicher immer auf dem neuesten Stand ist.
Wenn Sie eine Aufgabe beenden, weisen Sie Ihren Agenten an, das Snapshot-Skript auszuführen. Der Agent wird autonom:
Den aktuellen Projektordner in Git-Blobs und -Trees hashen.
Ollama anpingen, um neue oder geänderte Dateien einzubetten.
Den Status direkt in PostgreSQL committen.
Befehl zum Ausführen:
npm run snapshot🛠️ Konfiguration & Umgebungsvariablen
Variable | Beschreibung | Standardwert |
| PostgreSQL-Host-Adresse. |
|
| PostgreSQL-Port. |
|
| Datenbankname. |
|
| Datenbankbenutzer. |
|
| Datenbankpasswort. |
|
| Der Endpunkt für Ihre lokale Ollama-Instanz. |
|
| Das zu verwendende Ollama-Text-Embedding-Modell. |
|
Lizenz
MIT-Lizenz. Erstellt von kruschdev.
This server cannot be deployed
Maintenance
Related MCP Connectors
Persistent AI memory with semantic search, conflict detection, and ticketing.
- memnodeOAuthdev.memnode
Persistent, inspectable memory for AI agents with lineage, correction, and a hosted MCP endpoint.
Shared cross-LLM long-term memory over MCP: semantic recall, sessions, and media (pgvector).
Persistent memory and cross-session learning for AI coding assistants (hosted remote MCP).
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceAn MCP server that provides persistent semantic memory backed by PostgreSQL and pgvector for storing and searching thoughts via vector embeddings. It enables dimensional organization, conflict detection, and historical tracking of facts, decisions, and observations.12 npmAGPL 3.0
- AlicenseAqualityDmaintenanceMCP server for semantic code indexing using vector embeddings, enabling AI agents to maintain persistent memory of codebases through natural language queries and intelligent chunking.1912 npm4MIT
- AlicenseNot gradedqualityAmaintenanceA universal MCP server providing persistent, structured memory through a knowledge graph with graph storage, semantic vector search, and multi-hop traversal for AI agents and IDEs.1MIT
- AlicenseNot gradedqualityDmaintenanceA secure and scalable Git MCP server giving AI agents powerful version control for local and (soon) serverless environments.177 npmApache 2.0