Skip to main content
Glama
denny98-lab

wissens-enablement-agent

by denny98-lab
README.md
# Wissens-Enablement-Agent (MCP-Server)

Ein selbst gebauter MCP-Server (Model Context Protocol), der einer KI wie Claude Zugriff auf interne Unternehmensdokumente gibt — die technische Grundlage für KI-gestütztes Wissens-Enablement im Unternehmen.

## Das Problem

Mitarbeitende stellen wiederkehrende Fragen zu internen Prozessen — Urlaubsanträge, Homeoffice-Regelungen, IT-Support-Abläufe — die oft in verstreuten Dokumenten, Intranet-Seiten oder dem Kopf einzelner Kolleg:innen stecken. Ein KI-Assistent könnte diese Fragen sofort beantworten, wenn er Zugriff auf die relevanten Dokumente hätte. Die Frage ist: Wie verbindet man eine KI sicher und strukturiert mit genau diesem internen Wissen?

## Die Lösung: Ein eigener MCP-Server

Das Model Context Protocol (MCP) ist ein offener Standard, mit dem man KI-Systemen eigene Werkzeuge ("Tools") zur Verfügung stellt. Statt einen bestehenden MCP-Connector zu nutzen, baut dieses Projekt einen **eigenen MCP-Server**, der zwei Tools bereitstellt:

- `suche_wissensdatenbank(suchbegriff)` — durchsucht interne Dokumente nach einem Stichwort
- `liste_alle_dokumente()` — zeigt, welche Dokumente verfügbar sind

Jede MCP-kompatible KI (z. B. Claude Desktop) kann sich mit diesem Server verbinden und diese Tools nutzen, um Mitarbeiterfragen auf Basis der echten, aktuellen internen Dokumentation zu beantworten — statt zu raten oder veraltetes Trainingswissen zu verwenden.

## Architektur

```
Wissensdatenbank (Markdown-Dokumente)
   ├─ urlaubsantrag.md
   ├─ homeoffice.md
   └─ it-support.md
        │
        ▼
MCP-Server (server.py)
   ├─ Tool: suche_wissensdatenbank(suchbegriff)
   └─ Tool: liste_alle_dokumente()
        │
        ▼
MCP-Protokoll — verbindbar mit jeder MCP-kompatiblen KI
(z. B. Claude Desktop, eigene Clients)
```

## Warum diese technischen Entscheidungen

- **Eigener MCP-Server statt bestehendem Connector nutzen**: Zeigt Verständnis des Protokolls selbst, nicht nur die Fähigkeit, fertige Integrationen zu bedienen — relevant für die Frage, wie man unternehmensspezifisches Wissen technisch anbindet.
- **Docstrings als Tool-Beschreibung**: Bei MCP liest die KI die Docstrings der Tool-Funktionen, um zu verstehen, wann und wie ein Tool sinnvoll eingesetzt wird. Präzise, klare Beschreibungen sind hier kein "Nice-to-have", sondern technisch notwendig für zuverlässiges Verhalten.
- **Markdown als Dokumentenformat**: Einfach zu lesen, zu versionieren und zu erweitern — in der Praxis oft näher an echter interner Dokumentation (z. B. aus einem Wiki) als komplexere Formate.
- **Eigenes Testskript statt nur MCP Inspector**: Testet die zugrundeliegende Logik unabhängig vom Protokoll-Layer, nachvollziehbar und reproduzierbar dokumentiert.

## Tech Stack

- **Python 3**
- **MCP Python SDK** (`mcp[cli]`)

## Beispiel-Nutzung

```python
from server import suche_wissensdatenbank

ergebnis = suche_wissensdatenbank("Urlaub")
print(ergebnis)
# --- urlaubsantrag.md ---
# # Urlaubsantrag – Prozess
# Ein Urlaubsantrag muss mindestens 2 Wochen im Voraus ...
```

## Setup

1. Repository klonen
2. Abhängigkeiten installieren:
   ```
   pip install -r requirements.txt
   ```
3. Server testen:
   ```
   python test_server.py
   ```
4. Für die Nutzung mit Claude Desktop: Server-Pfad in der Claude-Desktop-Konfiguration als MCP-Server eintragen (siehe [offizielle MCP-Dokumentation](https://modelcontextprotocol.io))

## Erweiterbarkeit

Die Wissensdatenbank lässt sich beliebig um weitere Markdown-Dokumente erweitern, ohne den Code anzupassen — neue Dateien im `wissensdatenbank`-Ordner werden automatisch durchsucht. In einer produktiven Version wäre der nächste Schritt eine Anbindung an eine echte Dokumentenquelle (z. B. Notion, Confluence, SharePoint) statt lokaler Dateien.