almessadi.
Zurück zu den Projekten

Projekt-Case-Study

Gemini Embedding 2 MCP Server_

Ein lokaler MCP-Server für multimodale Abrufe, entwickelt, um KI-Tools eine private Suche über Code, Dokumente, Bilder, Audio und Video zu ermöglichen, ohne Daten an einen gehosteten Vektorspeicher zu übermitteln.

Das lokale Kontextproblem

KI-Agenten sind in einer praktischen Hinsicht, die Entwickler täglich benötigen, immer noch schlecht: sicher mit einem lokalen Korpus von Code und Dokumenten zu arbeiten, ohne diesen gesamten Korpus in ein gehostetes Drittsystem zu pushen.

Ich habe diesen MCP-Server entwickelt, um lokale Abrufe praktikabel zu machen. Das Ziel war einfach:

  • den indizierten Korpus auf der lokalen Maschine zu halten
  • mehr als reinen Text zu unterstützen
  • KI-Tools eine stabile Abriffschnittstelle zu bieten

Architektur

Der Server läuft lokal als ein Python-Prozess und bindet Geminis Einbettungsmodell an eine lokale ChromaDB-Instanz unter ~/.gemini_mcp_db. Das bedeutet, dass der Vektorspeicher auf der Festplatte unter der Kontrolle des Entwicklers bleibt, anstatt eine weitere gehostete Abhängigkeit zu werden.

Der interessante Teil ist der Aufnahmeweg. Das System behandelt nicht nur Textdateien. Es kann Bilder, Audio, Video und PDFs verarbeiten und nutzt Geminis multimodale Fähigkeiten, um mehr des ursprünglichen Signals zu erhalten, als es eine naive, nur auf Text ausgerichtete Extraktionspipeline könnte.

Das echte Engineering-Problem

Lokales RAG klingt einfach, bis ein Agent beginnt, dieselben Verzeichnisse immer wieder neu zu indizieren. Dort zeigen sich Kosten, Latenz und Quota-Erschöpfung.

Um das zu kontrollieren, habe ich Folgendes hinzugefügt:

  • Wildcard-Blacklist für irrelevante Verzeichnisse
  • MD5-basierte Duplikationserkennung für unveränderte Dateien
  • ein lokal priorisierendes Speicher-Modell, um die Indizierung vorhersehbar zu halten

Dieses Projekt ist mir wichtig, weil es KI-Werkzeuge als Infrastruktur behandelt. Der Gewinn ist nicht eine auffällige Demo. Der Gewinn besteht darin, lokalen Agenten eine Abrufschicht zu bieten, die privat, praktisch und schwer versehentlich zu missbrauchen ist.