Skip to main content
Glama
MCP-PersonalSearch

MCP-PersonalSearch

by weatherills

MCP-PersonalSearch

Ein MCP-Server, der dem Modell Zugriff auf dieselben Daten geben soll, die dem Operator während der normalen interaktiven Sitzungen zur Verfügung stehen.

Aktuell implementiert: Phase 1 de des Projekt-RDs – die lokale Dokumentation-Pipeeline (Rohspeicher → Markdown-Extraktion → Chunking → FTS5-Index → CLI) für bei GitLab gehostete Docs-as-Code-Repositories. Der MCP-Server selbst (Streamable HTTP, search_docs/get_section/ect.) ist Phase 2 and noch nicht umgesetzt.

Einrichtung

python -m venv .venv
.venv/Scripts/activate   # or `source .venv/bin/activate` on Linux/macOS
pip install -e ".[dev]"

Kopieren Sie config.example.toml nach config.toml und richten Sie [[sources]] auf Ihre Repositories aus:

[[sources]]
id = "eng-docs"
type = "gitlab_repo"
repo_url = "https://gitlab.example.com/team/docs.git"
branch = "main"
globs = ["docs/**/*.md", "README.md"]

Related MCP server: Gemini Docs MCP Server

Verwendung

docsrag ingest --source eng-docs        # clone/fetch + index; safe to re-run, skips unchanged files
docsrag search "your question here"     # lexical (BM25) search over the indexed corpus
docsrag reindex                         # rebuild sections/chunks/FTS from the raw store, fully offline
docsrag status                          # per-source document counts and last run
docsrag eval --set eval/questions.json  # recall@k / MRR against a labelled question set (PRD §7.2)

corpus.db (die indexierte Dokumentation und instance.db (Abfrageprotokoll, Job-Verlauf) werden standardmäßig unter data/ geepfert und sind gitignoriert – siehe PRD §2 dafür, warum der Korpus niemals geteilt, exportiert amd synchronisiert werden darf.

exceptional/questions.json ist ebenfalls gitignoriert, aus demselben Grund: echte Fragen sind auf dem, was Sie tatsächlich algErnen haben, begrnüdet und können indee Inhalte enthalten. Kopieren Sie exceptional/questions.example.json nach exceptional/questions.json und jeüllen Sie es mit {"query": ..., "section_id": ...}-Паare aus Ihrem eigenen Korpus aus (section_id- Euthrutungen stammen aus der Ausgabe von docsrag search).

Tests

pytest

Related MCP Connectors

Related MCP Servers