MCP Toolbox for Databases ist eine quelloffene Plattform zur Verwaltung von Datenbankwerkzeugen, die Entwicklern helfen soll, Datenbankwerkzeuge einfacher, schneller und sicherer zu erstellen und zu verwalten. Sie fungiert als Steuerungsebene zwischen Anwendungen und Datenbanken und vereinfacht die Entwicklung, Verteilung und den Aufruf von Tools. Die Plattform unterstützt mehrere Entwicklungsframeworks wie LangChain, LlamaIndex und GoogleGenAI für den lokalen oder Cloud-Einsatz. Die MCP Toolbox bietet Verbindungspooling, Authentifizierung und andere Funktionen, um Leistung und Sicherheit zu gewährleisten. Sie eignet sich für Szenarien, die eine schnelle Entwicklung von Datenbankwerkzeugen erfordern, wie z. B. Datenzugriff für KI-Agenten oder automatisierte Datenbankverwaltung. Die aktuelle Version ist 0.9.0 und befindet sich noch in der Betaphase, mit der Möglichkeit von größeren Updates in der Zukunft.
Funktionsliste
- Zentralisierte Verwaltung von Tools: Bietet eine einheitliche Plattform für die Speicherung und Aktualisierung von Tools und unterstützt die gemeinsame Nutzung von Anwendungen und Agenten.
- Dynamisches Laden von Werkzeugen: Unterstützt das dynamische Laden von Werkzeugen zur Aktualisierung der Werkzeugkonfiguration ohne Neustart der Anwendung.
- Optimierung von Datenbankverbindungen: Integriertes Verbindungspooling und Authentifizierungsmechanismen zur Verbesserung von Leistung und Sicherheit.
- Multi-Framework-Unterstützung: kompatibel mit LangChain, LlamaIndex, GoogleGenAI und anderen Entwicklungs-Frameworks.
- Abfragen in natürlicher Sprache: Ermöglicht die direkte Abfrage von Datenbanken in natürlicher Sprache, ohne dass komplexes SQL geschrieben werden muss.
- Automatisierte Datenbankverwaltung: Unterstützung für die automatische Generierung von Abfragen, die Erstellung von Tabellen und das Hinzufügen von Indizes.
- Kontextabhängige Codegenerierung: Generierung von Anwendungscode und Testfällen auf der Grundlage des Datenbankschemas.
- Plattformübergreifende Bereitstellung: Linux, Windows, macOS und containerisierte Bereitstellungen (z. B. Docker) werden unterstützt.
Hilfe verwenden
Einbauverfahren
Die MCP Toolbox bietet verschiedene Installationsmethoden für unterschiedliche Entwicklungsumgebungen. Im Folgenden werden die einzelnen Installationsschritte beschrieben:
1. binäre Installation
Die Benutzer können die Binärdatei direkt für ihr Betriebssystem herunterladen:
- Besuchen Sie die offizielle Veröffentlichungsseite und wählen Sie die entsprechende Version (derzeit
0.9.0
). - Je nach Betriebssystem und CPU-Architektur (z. B.
linux/amd64
vielleichtdarwin/arm64
) Laden Sie die Binärdatei herunter:export OS="linux/amd64" curl -O https://storage.googleapis.com/genai-toolbox/v0.9.0/$OS/toolbox chmod +x toolbox
- Oberbefehlshaber (Militär)
toolbox
Verschieben Sie die Datei in einen Systempfad (z. B./usr/local/bin
) auszuführen.
2. die Installation in Containern
Die Installation mit Docker ist für Produktionsumgebungen besser geeignet:
- Ziehen Sie das offizielle Docker-Image:
export VERSION=0.9.0 docker pull us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION
- Starten Sie den Container und stellen Sie sicher, dass der Port (Standard
5000
) Verfügbar:docker run -p 5000:5000 us-central1-docker.pkg.dev/database-toolbox/toolbox/toolbox:$VERSION
3. die Installation des Quellcodes
Erfordert die Go-Sprachumgebung (neueste Version empfohlen):
- Führen Sie den folgenden Befehl zur Installation aus:
go install github.com/googleapis/genai-toolbox@v0.9.0
- Sobald die Konfiguration abgeschlossen ist, führen Sie
toolbox
Starten Sie den Server.
4. tools.yaml konfigurieren
Nach der Installation müssen Sie Folgendes konfigurieren tools.yaml
Datei für die Definition von Datenquellen und Werkzeugen:
- einrichten.
tools.yaml
Datei ist die Beispielkonfiguration wie folgt:sources: my-pg-source: kind: postgres host: 127.0.0.1 port: 5432 database: toolbox_db user: ${USER_NAME} password: ${PASSWORD} tools: search-hotels-by-name: kind: postgres-sql source: my-pg-source description: Search for hotels based on name. parameters: - name: name type: string description: The name of the hotel.
- Verwenden Sie Umgebungsvariablen (z. B.
${USER_NAME}
) Speichern Sie sensible Informationen und vermeiden Sie Hard-Coding. - Nachdem Sie die Datei gespeichert haben, führen Sie den folgenden Befehl aus, um den Server zu starten:
./toolbox
- Das dynamische Überladen ist standardmäßig aktiviert und kann durch Hinzufügen der Option
--disable-reload
Logo.
Hauptfunktionen
1. werkzeuge laden
Die MCP Toolbox unterstützt das Laden von Tools über SDKs für eine Vielzahl von Frameworks. Hier ist ein Beispiel für das Python-SDK:
- Installieren Sie das SDK (je nach Framework ausgewählt):
pip install toolbox-langchain
- Werkzeugsatz laden:
from toolbox_langchain import ToolboxClient async with ToolboxClient("http://127.0.0.1:5000") as client: tools = await client.load_toolset("toolset_name")
- Geladene Tools können direkt an die Anwendung oder den KI-Agenten übergeben werden.
2. natürlichsprachliche Abfragen
Die Benutzer können die Datenbank in natürlicher Sprache abfragen. Zum Beispiel die Abfrage "Im Jahr 2024 gelieferte Bestellungen und die darin enthaltenen Waren":
- Nach der Konfiguration der Datenquelle wandelt das Tool die natürliche Sprache automatisch in SQL-Abfragen um.
- Geben Sie in einer unterstützten IDE etwas ein wie "Finde Hotels in Basel mit Basel im Namen", und das Tool ruft
search-hotels-by-name
das die Ergebnisse liefert.
3. automatisierte Datenbankverwaltung
MCP Toolbox kann automatisch Datenbankoperationen erzeugen. Zum Beispiel:
- Tabelle erstellen: Beschreiben Sie die Anforderung, z. B. "Erstellen Sie eine Datentabelle zum Speichern von Benutzerinformationen", und das Tool generiert das entsprechende SQL.
- Index hinzufügen: Geben Sie "Index zur Benutzertabelle hinzufügen" ein und das Tool wird automatisch ausgeführt.
- Der Benutzer gibt einfach die Anforderungen in die IDE ein, und das Tool übernimmt die komplexen Vorgänge.
4. kontextabhängige Codegenerierung
Das Tool generiert Code auf der Grundlage des Datenbankschemas. Beispiel:
- Geben Sie "Generate User Management Module Code" ein und das Tool generiert den CRUD-Operationscode auf der Grundlage der Tabellenstruktur.
- Unterstützung bei der Erstellung von Testfällen, um die Zuverlässigkeit des Codes zu gewährleisten.
Anhalten des Servers
Auf laufende Server kann über den Ctrl+C
Beenden. Um im Hintergrund zu laufen, verwenden Sie Docker oder das Tool System Service Manager.
caveat
- Die aktuelle Version ist beta (
0.9.0
), kann es zu Instabilitäten kommen; es wird empfohlen, die offizielle Versionsseite zu beachten. - Vergewissern Sie sich, dass Sie über eine stabile Internetverbindung verfügen. Das Ziehen von Docker-Images kann eine wissenschaftliche Internetverbindung erfordern.
- Sensible Informationen (z.B. Datenbankpasswörter) sollten mit Hilfe von Umgebungsvariablen verwaltet werden, um eine Offenlegung zu vermeiden.
Anwendungsszenario
- Entwicklung von AI-Agenten
Entwickler verwenden die MCP Toolbox, um schnell Datenbank-Tools für KI-Agenten zu erstellen. So kann beispielsweise ein Hotelbuchungs-Bot Hotelinformationen in natürlicher Sprache abfragen und Buchungsvorgänge automatisieren, wodurch sich der manuelle Programmieraufwand verringert. - Automatisierung der Datenbankverwaltung
Datenanalysten müssen kein komplexes SQL schreiben, durch die natürlichsprachliche Beschreibung der Anforderungen (z. B. "Statistiken über den Umsatz im Jahr 2024"), können Sie die Ergebnisse der Abfrage, geeignet für die schnelle Datenexploration zu erhalten. - Teamübergreifende Nutzung von Werkzeugen
Entwicklungsteams können Tools in der MCP Toolbox speichern und sie für mehrere Projekte oder KI-Agenten freigeben, was die Wiederverwendung von Tools ermöglicht und die Wartungskosten reduziert. - Code-Generierung in Echtzeit
Anfänger oder vielbeschäftigte Entwickler können die Vorteile der kontextabhängigen Funktion nutzen, um schnell datenbankbezogenen Anwendungscode zu generieren und Entwicklungszyklen zu verkürzen.
QA
- Welche Datenbanken werden von der MCP Toolbox unterstützt?
Derzeit wird hauptsächlich PostgreSQL unterstützt, andere Datenbanken sind in der Entwicklung. Die Benutzer müssen dietools.yaml
Konfigurieren Sie die entsprechende Datenquelle in der - Wie gewährleisten Sie die Sicherheit der Werkzeuge?
Die Plattform bietet einen integrierten Authentifizierungsmechanismus und unterstützt Umgebungsvariablen zur Verwaltung sensibler Informationen und zur Vermeidung von Hardcoding. Für die Serverbereitstellung wird HTTPS empfohlen. - Erfordert es eine hochgradig konfigurierbare Umgebung?
Nein, die MCP Toolbox ist so konzipiert, dass sie leichtgewichtig ist und auf normalen Entwicklungsmaschinen oder Cloud-Servern ausgeführt werden kann, und die Docker-Bereitstellung reduziert die Umgebungsanforderungen noch weiter. - Wie kann ich das Tool aktualisieren, ohne die Anwendung neu zu starten?
Das dynamische Neuladen ist standardmäßig aktiviert. Neue Tools oder Konfigurationsaktualisierungen werden automatisch wirksam, ohne dass der Server neu gestartet werden muss.