Skip to main content
Glama
Ayushsharma109

OpsMCP

🚀 OpsMCP — KI-gestützter Agent für Unternehmensabläufe

Ein KI-gestützter Agent für Unternehmensabläufe, der das Model Context Protocol (MCP) nutzt, um KI-Interaktionen in natürlicher Sprache sicher mit einer PostgreSQL-Datenbank zu verbinden.

📌 Überblick

OpsMCP ermöglicht es Benutzern, mit Unternehmensdaten in natürlicher Sprache zu interagieren, anstatt manuell SQL-Abfragen zu schreiben oder komplexe Admin-Panels zu durchsuchen.

Das System verbindet einen KI-Agenten über MCP-Tools mit einer PostgreSQL-Datenbank, sodass der Agent Informationen abrufen, Benutzer analysieren und autorisierte Datenbankoperationen durchführen kann.

Für sensible Schreiboperationen verlangt das System eine ausdrückliche Benutzerbestätigung, bevor die Datenbank geändert wird.


Related MCP server: PostgreSQL MCP Server

🎯 Problem

Traditionelle interne Unternehmenssysteme erfordern oft, dass Benutzer:

  • Mehrere administrative Dashboards durchsuchen

  • Datenbankstrukturen verstehen

  • SQL-Abfragen schreiben

  • Wiederholte Operationen manuell durchführen

  • Datenbankänderungen separat nachverfolgen

Dies erzeugt unnötige Komplexität für routinemäßige Unternehmensabläufe.


💡 Lösung

OpsMCP bietet eine Schnittstelle in natürlicher Sprache für Unternehmensabläufe.

Anstatt zu schreiben:

SELECT id, name, email, role
FROM users
ORDER BY id;

kann ein Benutzer einfach fragen:

„Zeig mir alle Benutzer."

Die KI bestimmt, welches MCP-Tool erforderlich ist, führt es aus, erhält das Ergebnis und wandelt es in eine benutzerfreundliche Antwort um.


🧠 So funktioniert es

                   ┌──────────────────────┐
                   │      Web Dashboard   │
                   └──────────┬───────────┘
                              │
                              ▼
                   ┌──────────────────────┐
                   │      AI Agent        │
                   │  Natural Language    │
                   └──────────┬───────────┘
                              │
                       MCP Tool Calling
                              │
                              ▼
                   ┌──────────────────────┐
                   │     MCP Server       │
                   │                      │
                   │ Tools • Resources    │
                   │ Prompts • Security   │
                   └──────────┬───────────┘
                              │
                              ▼
                   ┌──────────────────────┐
                   │     PostgreSQL       │
                   │      Database        │
                   └──────────────────────┘

✨ Hauptfunktionen

🤖 Datenbankoperationen in natürlicher Sprache

Benutzer können mit Unternehmensdaten in normaler Sprache interagieren.

Beispiele:

Show me all users.
Find user with ID 2.
Create a new user named Rahul with role developer.
Change Rahul's role to manager.
Analyze all users and tell me which role has the most users.

🔧 MCP-Tools

Das Projekt stellt Datenbankoperationen als MCP-Tools bereit.

Aktuelle Tools umfassen:

Tool

Zweck

get_users

Alle Benutzer abrufen

get_user_by_id

Einen bestimmten Benutzer abrufen

create_user

Einen neuen Benutzer erstellen

update_user_role

Die Rolle eines Benutzers aktualisieren

analyze_users

Benutzerverteilung analysieren


📚 MCP-Ressourcen

Das Projekt demonstriert außerdem MCP-Ressourcen zur Bereitstellung strukturierter Kontextinformationen für den KI-Agenten.

Beispiel:

company://info

Diese Ressource enthält Informationen über:

  • Abteilungen

  • Unternehmensrollen

  • Organisationsstruktur


🧩 MCP-Prompts

Wiederverwendbare MCP-Prompts sind für strukturierte Operationen wie Benutzeranalysen enthalten.

Beispiel-Analyseworkflow:

1. Count total users
2. Group users by role
3. Identify unusual roles
4. Generate a summary

🔐 Sicherheit

Sicherheit ist ein wichtiger Bestandteil des Projekts.

API-Key-Authentifizierung

Der MCP-Server unterstützt die API-Key-Authentifizierung über HTTP-Autorisierungsheader.

Zwei Berechtigungsstufen sind implementiert:

READ_ONLY
READ_WRITE

Autorisierung

Leseoperationen können mit der Nur-Lese-Berechtigung durchgeführt werden.

Datenbankändernde Operationen erfordern:

READ_WRITE

Berechtigung.


⚠️ Bestätigung vor Schreiboperationen

Vor der Ausführung von Datenbankänderungen fragt der KI-Client den Benutzer um Bestätigung.

Beispiel:

⚠️ WRITE OPERATION REQUIRES CONFIRMATION

Tool      : update_user_role
Arguments : {
    "user_id": 2,
    "new_role": "manager"
}

Do you want to continue? (yes/no)

Die Datenbank wird erst nach ausdrücklicher Genehmigung geändert.


🛡️ Eingabevalidierung

Benutzereingaben werden vor Datenbankoperationen validiert.

Beispielsweise sind unterstützte Rollen:

developer
designer
product manager
manager

Ungültige Eingaben wie:

aestronuot

werden abgelehnt, anstatt in die Datenbank eingefügt zu werden.


📋 Audit-Protokollierung

Datenbankändernde Operationen werden in einem Audit-Protokoll aufgezeichnet.

Beispiel:

action          | tool_name        | status
----------------+------------------+---------
update_user_role| update_user_role  | SUCCESS

Dies bietet Rückverfolgbarkeit für sensible Operationen.


🗂️ Projektstruktur

OPSMCP-AI-AGENNT/
│
├── server/
│   ├── auth/
│   ├── database/
│   │   └── connection.py
│   │
│   ├── prompts/
│   │   └── user_analysis.py
│   │
│   ├── resources/
│   │   └── company.py
│   │
│   └── tools/
│       ├── audit.py
│       └── user_tools.py
│
├── static/
│   ├── app.js
│   └── style.css
│
├── templates/
│   └── index.html
│
├── ai_client.py
├── web_app.py
├── run_server.py
├── requirements.txt
├── .gitignore
└── README.md

🛠️ Technologie-Stack

Backend

  • Python

  • FastAPI

  • Uvicorn

KI

  • OpenAI-kompatible API

  • Funktions-/Tool-Aufrufe

  • Interaktion in natürlicher Sprache

Protokoll

  • Model Context Protocol (MCP)

  • Streamable HTTP-Transport

Datenbank

  • PostgreSQL

  • Psycopg

Frontend

  • HTML

  • CSS

  • JavaScript

Sicherheit

  • API-Key-Authentifizierung

  • Lese-/Schreib-Autorisierung

  • Bestätigungsbasierte Datenbankänderungen

  • Eingabevalidierung

  • Audit-Protokollierung


⚙️ Lokale Einrichtung

1. Repository klonen

git clone https://github.com/Ayushsharma109/OPSMCP-AI-AGENNT.git

cd OPSMCP-AI-AGENNT

2. Virtuelle Umgebung erstellen

Windows:

python -m venv .venv

Aktivieren:

.venv\Scripts\activate

3. Abhängigkeiten installieren

pip install -r requirements.txt

4. Umgebungsvariablen konfigurieren

Eine .env-Datei erstellen:

MCP_API_KEY=your_main_api_key
MCP_READONLY_KEY=your_readonly_api_key

OPENAI_API_KEY=your_api_key
OPENAI_BASE_URL=your_base_url
OPENAI_MODEL=your_model

DB_NAME=mcp_demo
DB_USER=postgres
DB_PASSWORD=your_password
DB_HOST=localhost
DB_PORT=5432

Committe niemals .env oder API-Schlüssel auf GitHub.

5. PostgreSQL starten

Stelle sicher, dass PostgreSQL läuft und die erforderliche Datenbank/die erforderlichen Tabellen existieren.

6. MCP-Server starten

python run_server.py

Der MCP-Server läuft auf:

http://127.0.0.1:8000

7. Webanwendung starten

Öffne ein weiteres Terminal:

python web_app.py

Das Dashboard ist verfügbar unter:

http://127.0.0.1:8080

🧪 Beispiel-Workflow

Benutzer

Show me all users.

KI-Agent

Stellt fest, dass get_users erforderlich ist.

MCP

Führt aus:

get_users()

PostgreSQL

Gibt die Benutzerdatensätze zurück.

KI

Wandelt das Datenbankergebnis in eine Antwort in natürlicher Sprache um.


🔄 Workflow für Schreiboperationen

User Request
     ↓
AI Agent
     ↓
MCP Tool Selection
     ↓
Permission Check
     ↓
User Confirmation
     ↓
Input Validation
     ↓
PostgreSQL Update
     ↓
Audit Log
     ↓
AI Response

Dieses Design hilft, versehentliche Datenbankänderungen zu verhindern.


🏆 Hackathon-MVP

OpsMCP wurde als fokussiertes MVP entwickelt, das demonstriert, wie MCP verwendet werden kann, um KI-Agenten mit echten Unternehmensdaten und kontrollierten Backend-Operationen zu verbinden.

Das Projekt konzentriert sich auf:

  • KI-Tool-Aufrufe

  • MCP-Architektur

  • Sichere Datenbankinteraktion

  • Menschliche Bestätigung für Änderungen

  • Auditierbarkeit

  • Unternehmensabläufe in natürlicher Sprache


🚀 Zukünftige Verbesserungen

Mögliche zukünftige Verbesserungen umfassen:

  • Rollenbasierter Dashboard-Zugriff

  • Weitere Enterprise-MCP-Tools

  • Erweiterte Analysen

  • Multi-Datenbank-Unterstützung

  • Bessere Visualisierung des Audit-Protokolls

  • Deployment-fähige Authentifizierung

  • Enterprise-SSO-Integration

  • Granularere Berechtigungen


👨💻 Autor

Ayush Sharma

Entwickelt als Solo-Hackathon-Projekt, das Folgendes erforscht:

KI-Agenten + MCP + PostgreSQL + Sichere Tool-Ausführung


📄 Lizenz

Dieses Projekt ist in erster Linie als Hackathon- und Lernprojekt gedacht.

Related MCP Connectors

Related MCP Servers

  • F
    license
    A
    quality
    Not graded
    maintenance
    Enables comprehensive PostgreSQL database management through natural language including queries, schema operations, user management, and administrative tasks. Features enterprise-grade connection pooling, transaction support, and full database administration capabilities.
    11
    67 npm
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables natural language interaction with PostgreSQL databases, supporting query execution, schema management, data operations, user management, and database maintenance with secure remote access via HTTP/SSE transport.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables secure, read-only PostgreSQL database interaction through natural language, with automatic database discovery and connection management.
    2
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI assistants to interact with PostgreSQL databases through natural language, with schema-aware query generation and enterprise safety controls.
    18
    161 npm
    2
    MIT