Skip to main content
Glama
deepan2003

Database-MCP

by deepan2003

🏢 Company Database AI Manager

📖 Überblick

Der Company Database AI Manager ist eine natürlichsprachliche Schnittstelle für eine Unternehmensdatenbank. Anstatt komplexe SQL-Abfragen zum Einfügen, Aktualisieren oder Abrufen von Daten zu schreiben, können Benutzer einfach Befehle in natürlicher Sprache eingeben (z. B. „Fügen Sie eine IT-Abteilung hinzu und weisen Sie ihr 5 Mitarbeiter zu“).

Das System nutzt das Model Context Protocol (MCP), um einen Groq-basierten LangGraph-Agenten sicher mit einem lokalen Python-Datenbankserver zu verbinden. Die KI analysiert den Prompt des Benutzers eigenständig, wählt die richtigen Datenbank-Tools aus, führt die SQL-Operationen aus und liefert das Ergebnis in einer übersichtlichen Streamlit-Weboberfläche zurück.

Related MCP server: PySqlitMCP

⚙️ Architektur & Funktionsweise

Dieses Projekt trennt die Datenbanklogik von der KI-Logik mithilfe einer echten Server/Client-Architektur:

  1. Der Server (server.py & models.py): Führt einen unabhängigen FastMCP-Server aus, der SQLite-Datenbank-Tools (setup_database, add_record, search_database) bereitstellt.

  2. Der Client (client.py & app.py): Führt einen LangGraph-Agenten aus, der von Groqs llama-3.3-70b-versatile oder openai/gpt-oss-120b angetrieben wird.

  3. Das Protokoll (MCP): Der Client verbindet sich sicher über Standardeingabe/-ausgabe (stdio) mit dem Server. Er fragt den Server nach verfügbaren Tools, übergibt sie an den LangGraph-Agenten und ruft die Python-Funktionen auf, ohne sie direkt zu importieren.

📂 Ordnerstruktur

📦 llm-db-mcp
 ┣ 📜 .env                # Stores secure API keys (Do NOT commit to GitHub)
 ┣ 📜 .gitignore          # Prevents sensitive files from being pushed to Git
 ┣ 📜 app.py              # The Streamlit web UI for interacting with the AI
 ┣ 📜 client.py           # The terminal-based LangGraph agent script
 ┣ 📜 company.db          # The automatically generated SQLite database file
 ┣ 📜 models.py           # SQLAlchemy schemas (Departments, Roles, Employees, Projects)
 ┣ 📜 requirements.txt    # Project dependencies and version numbers
 ┗ 📜 server.py           # The FastMCP server hosting the database tools

🚀 Einrichtung & Installation

1. Voraussetzungen

Python 3.10 oder höher.

Einen kostenlosen Groq-API-Schlüssel.

2. Umgebung einrichten

Erstellen und aktivieren Sie eine virtuelle Umgebung (Conda wird empfohlen):

conda create -n db_mcp python=3.11
conda activate db_mcp

3. Abhängigkeiten installieren

Installieren Sie alle erforderlichen Pakete aus der Datei requirements.txt:

pip install -r requirements.txt

4. API-Schlüssel konfigurieren

Erstellen Sie eine .env-Datei im Hauptverzeichnis und fügen Sie Ihren Groq-API-Schlüssel hinzu:

GROQ_API_KEY=gsk_your_api_key_here

🖥️ Verwendung

Option 1: Web-UI ausführen (empfohlen)

Um die interaktive Chat-Oberfläche zu starten, führen Sie Folgendes aus:

streamlit run app.py

Option 2: Terminal-Client ausführen

Um den Agenten ausschließlich über die Befehlszeile auszuführen:

🛠️ Beispiel-Prompts zum Ausprobieren

Sobald die App läuft, versuchen Sie, diese Prompts in den Chat einzugeben:

„Richten Sie die Datenbanktabellen ein.“ (Führen Sie dies zuerst aus!)

„Fügen Sie eine IT-Abteilung hinzu.“

„Fügen Sie einen neuen Mitarbeiter namens John Doe mit einem Gehalt von 75000 in der IT-Abteilung hinzu.“

„Zeigen Sie mir alle Mitarbeiter, die mehr als 50000 verdienen.“

🔒 Sicherheitshinweise

Committen Sie Ihre .env-Datei oder Ihre API-Schlüssel niemals in die Versionskontrolle.

Die Datei .gitignore ist vorkonfiguriert, um das Hochladen von .env und company.db auf GitHub zu blockieren.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language database operations and semantic document search through SQLite and vector database integration. Converts plain English instructions into SQL queries and provides RAG capabilities for uploaded documents.
    -
  • A
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables comprehensive SQLite database management through natural language, including database creation, table operations, data CRUD operations, backup/restore functionality, and CSV import/export capabilities.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables LLM agents to perform complete database operations on SQLite databases, including creating tables, executing queries, and managing data through CRUD operations with schema inspection capabilities.
    12 npm
    MIT