Skip to main content
Glama

MCP-Datenbank-Intelligenz-Server-Architektur

Systemübersicht

Das System stellt KI-Agenten Datenbankfunktionen über das Model Context Protocol (MCP) zur Verfügung.

Der MCP-Server fungiert als Brücke zwischen:

  • KI-Assistenten

  • Datenbank-Metadaten

  • gespeicherten Prozeduren

  • Datenbank-Erkundungstools

Architektur auf hoher Ebene

KI-Agent / MCP-Client │ ▼ MCP-Server (FastMCP) │ ├── Erkundungstools │ (Datenbankerkundung) │ ├── Dynamische Prozedur-Tools │ (generiert aus Datenbankprozeduren) │ ▼ Intelligenz-Engine (Prozedur-Metadaten + Kategorisierung) │ ▼ Datenbank-Zugriffsschicht │ ▼ MySQL-Datenbank

Kernkomponenten

Related MCP server: MySQL MCP Server

1. MCP-Server (main.py)

Der MCP-Server wird mit FastMCP erstellt.

Verantwortlichkeiten:

  • Initialisierung des MCP-Servers

  • Registrierung von Erkundungstools

  • Registrierung dynamischer Prozedur-Tools

2. Datenbank-Zugriffsschicht (db.py)

Dieses Modul verwaltet die gesamte Datenbankkommunikation.

Verantwortlichkeiten:

  • Verwaltung von Datenbankverbindungen

  • Ausführung gespeicherter Prozeduren

  • Abruf von Metadaten

  • Durchsetzung von Ergebnisbeschränkungen

Alle Datenbankinteraktionen laufen über diese Schicht.

3. Tool-Generator (tool_generator.py)

Dieses Modul konvertiert Datenbank-Prozeduren dynamisch in MCP-Tools.

Durchgeführte Schritte:

  1. Laden der Prozedur-Metadaten aus der Datenbank

  2. Erkennung von Prozedurparametern

  3. Dynamische Generierung von MCP-Tool-Funktionen

  4. Registrierung der Tools beim MCP-Server

Dies ermöglicht es dem System, neue, der Datenbank hinzugefügte Prozeduren automatisch zu unterstützen.

4. Intelligenz-Engine (intelligence_engine.py)

Die Intelligenz-Engine analysiert gespeicherte Prozeduren, um Metadaten zu generieren.

Zu den Funktionen gehören:

  • Prozedurkategorisierung

  • Generierung von Beschreibungen

  • Parameteranalyse

Beispielkategorien:

Prozedurmuster

Kategorie

GetLinkCount

Netzwerkanalyse

GetWeekData

Zeitanalyse

InterfaceLinkType

Schnittstellenanalyse

Diese Metadaten helfen KI-Agenten, den Zweck jedes Tools zu verstehen.

5. Erkundungstools (discovery_tools.py)

Erkundungstools ermöglichen es KI-Agenten, die Datenbankstruktur zu erforschen.

Implementierte Tools:

list_databases list_tables describe_table

Diese Tools basieren auf Datenbank-Metadaten aus:

INFORMATION_SCHEMA

Sicherheitsarchitektur

Es wurden mehrere Schutzmaßnahmen implementiert, um eine sichere Datenbankinteraktion zu gewährleisten.

Schlüsselwortbeschränkungen

Prozeduren, die gefährliche Schlüsselwörter enthalten, werden blockiert.

Beispiele:

DELETE DROP TRUNCATE UPDATE INSERT ALTER

Abfrageergebnis-Beschränkungen

Das System begrenzt die Ergebnisgröße mithilfe eines konfigurierbaren Wertes:

MAX_QUERY_ROWS

Dies verhindert die Extraktion großer Datenmengen.

Ratenbegrenzung

Der MCP-Server erzwingt Ratenbegrenzungen für Anfragen, um eine übermäßige Nutzung zu verhindern.

Eingeschränkter Datenbankbenutzer

Der vom MCP-Server verwendete Datenbankbenutzer sollte nur über folgende Berechtigungen verfügen:

SELECT EXECUTE

Dies verhindert die Änderung von Produktionsdaten.

Metadatenquellen

Das System ruft Metadaten aus MySQL-Systemtabellen ab.

Beispiele:

INFORMATION_SCHEMA.ROUTINES INFORMATION_SCHEMA.PARAMETERS INFORMATION_SCHEMA.TABLES INFORMATION_SCHEMA.COLUMNS

Diese Tabellen ermöglichen es dem MCP-Server, die Datenbankstruktur automatisch zu verstehen.

Beispiel für einen KI-Interaktionsfluss

Beispiel für eine Interaktion zwischen einem KI-Agenten und der Datenbank:

list_databases() ↓ list_tables() ↓ describe_table("interface_stats") ↓ GetLinkCount("NodeA")

Dies ermöglicht es der KI, die Datenbankstruktur zu erkunden, bevor analytische Prozeduren ausgeführt werden.

Erweiterbarkeit

Das System ist so konzipiert, dass es zusätzliche Datenbankobjekte unterstützt.

Zukünftige Erweiterungen könnten umfassen:

list_views list_functions list_triggers search_tables explain_query

Die modulare Architektur ermöglicht es, neue Tools einfach hinzuzufügen.

Fazit

Diese Architektur zeigt, wie MCP-Server Datenbankfunktionen sicher für KI-Systeme zugänglich machen können.

Wichtige Designprinzipien:

• modulare Architektur • dynamische Tool-Generierung • metadatengesteuerte Erkundung • sicherer Datenbankzugriff

Dieser Ansatz ermöglicht eine sichere und skalierbare KI-Datenbank-Integration.

Detaillierte Systemdiagramme sind im Verzeichnis docs/ verfügbar.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    A high-performance MCP server that enables AI assistants to safely interact with MySQL databases through secure CRUD operations, schema inspection, and parameterized queries with built-in SQL injection prevention.
    1
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    A MySQL MCP server for secure database interaction, enabling schema inspection, query execution, and RBAC via AI coding assistants.
    1,352 npm
    5
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    MCP server that connects AI agents to MySQL databases for schema exploration, data querying, and SQL execution via natural language.
    2
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A production-ready MCP server for MySQL database integration with AI agents, enabling database exploration, CRUD operations, schema management, and performance monitoring through natural language.
    744 npm
    MIT