database-mcp
Multi-Datenbank-MCP-Server (von Legion AI)
Ein Server, der Benutzern mithilfe des Legion Query Runner mit Integration des Model Context Protocol (MCP) Python SDK beim Zugriff auf und Abfragen von Daten in Datenbanken hilft.
Starten Sie hier die Generierung
Dieses Tool wird von Legion AI bereitgestellt. Um das vollwertige und leistungsstarke KI-Datenanalysetool zu nutzen, besuchen Sie bitte die Website. Senden Sie uns eine E-Mail, wenn Sie Unterstützung für eine Datenbank wünschen.
Generierung hier beenden
Warum Database MCP wählen?
Database MCP unterscheidet sich aus mehreren überzeugenden Gründen von anderen Datenbankzugriffslösungen:
Einheitliche Schnittstelle für mehrere Datenbanken : Stellen Sie über eine einzige konsistente API eine Verbindung zu PostgreSQL, MySQL, SQL Server und anderen Datenbanken her – Sie müssen nicht für jeden Datenbanktyp unterschiedliche Clientbibliotheken erlernen.
KI-fähige Integration : Speziell für KI-Assistenteninteraktionen über das Model Context Protocol (MCP) entwickelt und ermöglicht Datenbankoperationen in natürlicher Sprache.
Schemaerkennung ohne Konfiguration : Erkennt und zeigt Datenbankschemata automatisch an, ohne dass eine manuelle Konfiguration oder Zuordnung erforderlich ist.
Datenbankunabhängige Tools : Suchen Sie Tabellen, erkunden Sie Schemata und führen Sie Abfragen mit demselben Satz an Tools aus, unabhängig von der zugrunde liegenden Datenbanktechnologie.
Sichere Anmeldeinformationsverwaltung : Behandelt Datenbankauthentifizierungsdetails sicher und trennt Anmeldeinformationen vom Anwendungscode.
Einfache Bereitstellung : Funktioniert mit modernen KI-Entwicklungsumgebungen wie LangChain, FastAPI und anderen mit minimalem Setup.
Erweiterbares Design : Fügen Sie einfach benutzerdefinierte Tools und Eingabeaufforderungen hinzu, um die Funktionalität für bestimmte Anwendungsfälle zu verbessern.
Unabhängig davon, ob Sie KI-Agenten erstellen, die Datenbankzugriff benötigen, oder einfach eine einheitliche Schnittstelle zu mehreren Datenbanken wünschen, bietet Database MCP eine optimierte Lösung, die Entwicklungszeit und Komplexität drastisch reduziert.
Related MCP server: MCP Database Server
Merkmale
Unterstützung mehrerer Datenbanken – stellen Sie gleichzeitig eine Verbindung zu mehreren Datenbanken her
Datenbankzugriff über Legion Query Runner
Model Context Protocol (MCP)-Unterstützung für KI-Assistenten
Bereitstellung von Datenbankoperationen als MCP-Ressourcen, -Tools und -Eingabeaufforderungen
Mehrere Bereitstellungsoptionen (eigenständiger MCP-Server, FastAPI-Integration)
Abfrageausführung und Ergebnisverarbeitung
Flexible Konfiguration über Umgebungsvariablen, Befehlszeilenargumente oder MCP-Einstellungen JSON
Benutzergesteuerte Datenbankauswahl für Multi-Datenbank-Setups
Unterstützte Datenbanken
Datenbank | DB_TYPE-Code |
PostgreSQL | Seite |
Rotverschiebung | Rotverschiebung |
CockroachDB | Kakerlake |
MySQL | MySQL |
RDS MySQL | rds_mysql |
Microsoft SQL Server | mssql |
Große Abfrage | große Abfrage |
Oracle-Datenbank | Orakel |
SQLite | SQLite |
Wir verwenden die Legion Query Runner-Bibliothek als Konnektoren. Weitere Informationen finden Sie in der API-Dokumentation .
Was ist MCP?
Das Model Context Protocol (MCP) ist eine Spezifikation zur Aufrechterhaltung des Kontexts in KI-Anwendungen. Dieser Server verwendet das MCP Python SDK für:
Datenbankoperationen als Werkzeuge für KI-Assistenten verfügbar machen
Bereitstellung von Datenbankschemata und Metadaten als Ressourcen
Generieren Sie nützliche Eingabeaufforderungen für Datenbankoperationen
Aktivieren Sie statusbehaftete Interaktionen mit Datenbanken
Installation und Konfiguration
Erforderliche Parameter
Für die Konfiguration einer einzelnen Datenbank:
DB_TYPE : Der Datenbanktypcode (siehe Tabelle oben)
DB_CONFIG : Eine JSON-Konfigurationszeichenfolge für die Datenbankverbindung
Für die Konfiguration mehrerer Datenbanken:
DB_CONFIGS : Ein JSON-Array von Datenbankkonfigurationen, die jeweils Folgendes enthalten:
db_type : Der Datenbanktypcode
Konfiguration : Datenbankverbindungskonfiguration
Beschreibung : Eine für Menschen lesbare Beschreibung der Datenbank
Das Konfigurationsformat variiert je nach Datenbanktyp. Datenbankspezifische Konfigurationsdetails finden Sie in der API-Dokumentation .
Installationsmethoden
Option 1: Verwendung von UV (empfohlen)
Bei Verwendung uv ist keine spezielle Installation erforderlich. Wir verwenden uvx , um database-mcp direkt auszuführen.
UV-Konfigurationsbeispiel (einzelne Datenbank):
REPLACE DB_TYPE and DB_CONFIG with your connection info.
{
"mcpServers": {
"database-mcp": {
"command": "uvx",
"args": [
"database-mcp"
],
"env": {
"DB_TYPE": "pg",
"DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}"
},
"disabled": true,
"autoApprove": []
}
}
}UV-Konfigurationsbeispiel (mehrere Datenbanken):
{
"mcpServers": {
"database-mcp": {
"command": "uvx",
"args": [
"database-mcp"
],
"env": {
"DB_CONFIGS": "[{\"id\":\"pg_main\",\"db_type\":\"pg\",\"configuration\":{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"postgres\"},\"description\":\"PostgreSQL Database\"},{\"id\":\"mysql_data\",\"db_type\":\"mysql\",\"configuration\":{\"host\":\"localhost\",\"port\":3306,\"user\":\"root\",\"password\":\"pass\",\"database\":\"mysql\"},\"description\":\"MySQL Database\"}]"
},
"disabled": true,
"autoApprove": []
}
}
}Option 2: Verwenden von PIP
Über Pip installieren:
pip install database-mcpPIP-Konfigurationsbeispiel (einzelne Datenbank):
{
"mcpServers": {
"database": {
"command": "python",
"args": [
"-m", "database_mcp",
"--repository", "path/to/git/repo"
],
"env": {
"DB_TYPE": "pg",
"DB_CONFIG": "{\"host\":\"localhost\",\"port\":5432,\"user\":\"user\",\"password\":\"pw\",\"dbname\":\"dbname\"}"
}
}
}
}Ausführen des Servers
Produktionsmodus
python mcp_server.pyKonfigurationsmethoden
Umgebungsvariablen (einzelne Datenbank)
export DB_TYPE="pg" # or mysql, postgresql, etc.
export DB_CONFIG='{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'
uv run src/database_mcp/mcp_server.pyUmgebungsvariablen (mehrere Datenbanken)
export DB_CONFIGS='[{"id":"pg_main","db_type":"pg","configuration":{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"},"description":"PostgreSQL Database"},{"id":"mysql_users","db_type":"mysql","configuration":{"host":"localhost","port":3306,"user":"root","password":"pass","database":"mysql"},"description":"MySQL Database"}]'
uv run src/database_mcp/mcp_server.pyWenn Sie keine ID angeben, generiert das System automatisch eine basierend auf dem Datenbanktyp und der Beschreibung:
export DB_CONFIGS='[{"db_type":"pg","configuration":{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"},"description":"PostgreSQL Database"},{"db_type":"mysql","configuration":{"host":"localhost","port":3306,"user":"root","password":"pass","database":"mysql"},"description":"MySQL Database"}]'
# IDs will be generated as something like "pg_postgres_0" and "my_mysqldb_1"
uv run src/database_mcp/mcp_server.pyBefehlszeilenargumente (Einzeldatenbank)
python mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'Befehlszeilenargumente (mehrere Datenbanken)
python mcp_server.py --db-configs '[{"id":"pg_main","db_type":"pg","configuration":{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"},"description":"PostgreSQL Database"},{"id":"mysql_users","db_type":"mysql","configuration":{"host":"localhost","port":3306,"user":"root","password":"pass","database":"mysql"},"description":"MySQL Database"}]'Beachten Sie, dass Sie mithilfe des id Felds benutzerdefinierte IDs für jede Datenbank angeben oder diese vom System basierend auf Datenbanktyp und -beschreibung generieren lassen können.
Unterstützung mehrerer Datenbanken
Wenn Sie eine Verbindung zu mehreren Datenbanken herstellen, müssen Sie für jede Abfrage angeben, welche Datenbank verwendet werden soll:
Verwenden Sie das Tool
list_databases, um verfügbare Datenbanken mit ihren IDs anzuzeigenVerwenden Sie
get_database_info, um Schemadetails von Datenbanken anzuzeigenVerwenden Sie
find_table, um eine Tabelle in allen Datenbanken zu findenGeben Sie den
db_idParameter an Tools wieexecute_query,get_table_columnsusw. weiter.
Datenbankverbindungen werden intern als Wörterbuch von DbConfig Objekten verwaltet, wobei jede Datenbank eine eindeutige ID hat. Schemainformationen werden als Liste von Tabellenobjekten dargestellt, wobei jede Tabelle ihren Namen und ihre Spalteninformationen enthält.
Die Eingabeaufforderung select_database führt Benutzer durch den Datenbankauswahlprozess.
Schemadarstellung
Datenbankschemata werden als Liste von Tabellenobjekten dargestellt, wobei jede Tabelle Informationen zu ihren Spalten enthält:
[
{
"name": "users",
"columns": [
{"name": "id", "type": "integer"},
{"name": "username", "type": "varchar"},
{"name": "email", "type": "varchar"}
]
},
{
"name": "orders",
"columns": [
{"name": "id", "type": "integer"},
{"name": "user_id", "type": "integer"},
{"name": "product_id", "type": "integer"},
{"name": "quantity", "type": "integer"}
]
}
]Diese Darstellung erleichtert den programmgesteuerten Zugriff auf Tabellen- und Spalteninformationen und behält gleichzeitig eine saubere hierarchische Struktur bei.
Offengelegte MCP-Funktionen
Ressourcen
Ressource | Beschreibung |
| Abrufen der Schemata für eine oder alle konfigurierten Datenbanken |
Werkzeuge
Werkzeug | Beschreibung |
| Führen Sie eine SQL-Abfrage aus und geben Sie die Ergebnisse als Markdown-Tabelle zurück |
| Führen Sie eine SQL-Abfrage aus und geben Sie die Ergebnisse als JSON zurück |
| Abrufen von Spaltennamen für eine bestimmte Tabelle |
| Abrufen von Spaltentypen für eine bestimmte Tabelle |
| Holen Sie sich den aktuellen Abfrageverlauf |
| Listen Sie alle verfügbaren Datenbankverbindungen auf |
| Erhalten Sie detaillierte Informationen zu einer Datenbank einschließlich Schema |
| Finden Sie heraus, welche Datenbank eine bestimmte Tabelle enthält |
| Erhalten Sie eine detaillierte Beschreibung einer Tabelle, einschließlich Spaltennamen und -typen |
| Abrufen einer Datenstichprobe aus einer Tabelle |
Alle datenbankspezifischen Tools (wie execute_query , get_table_columns usw.) erfordern einen db_id Parameter, um anzugeben, welche Datenbank verwendet werden soll.
Eingabeaufforderungen
Prompt | Beschreibung |
| Erstellen Sie eine SQL-Abfrage für die Datenbank |
| Erklären Sie, was eine SQL-Abfrage macht |
| Optimieren Sie eine SQL-Abfrage für eine bessere Leistung |
| Helfen Sie dem Benutzer bei der Auswahl der zu verwendenden Datenbank |
Entwicklung
Verwenden des MCP Inspector
Führen Sie dies aus, um den Inspektor zu starten
npx @modelcontextprotocol/inspector uv run src/database_mcp/mcp_server.pyGeben Sie dann im Befehlseingabefeld etwas wie
run src/database_mcp/mcp_server.py --db-type pg --db-config '{"host":"localhost","port":5432,"user":"username","password":"password","dbname":"database_name"}'Testen
uv pip install -e ".[dev]"
pytestVeröffentlichen
# Clean up build artifacts
rm -rf dist/ build/
# Remove any .egg-info directories if they exist
find . -name "*.egg-info" -type d -exec rm -rf {} + 2>/dev/null || true
# Build the package
uv run python -m build
# Upload to PyPI
uv run python -m twine upload dist/*Lizenz
Dieses Repository ist unter der GPL lizenziert
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceThis is a Model Context Protocol (MCP) server for executing SQL queries against Databricks using the Statement Execution API. It enables AI assistants to directly query Databricks data warehouses, analyze database schemas, and retrieve query results in a structured format42MIT
- AlicenseNot gradedqualityDmaintenanceThis server enables Claude to directly interact with SQLite, SQL Server, PostgreSQL, and MySQL databases through the Model Context Protocol, allowing for query execution, table management, and data export capabilities.MIT
- FlicenseNot gradedqualityDmaintenanceA FastAPI-based server that enables executing SQL queries, managing database connections, and retrieving analytics reports through MCP-integrated endpoints. It allows users to interact with database schemas, performance metrics, and access logs using structured queries.
- FlicenseNot gradedqualityBmaintenanceModel Context Protocol (MCP) server that gives AI assistants a safe, correct data-analyst capability over business metrics - without raw SQL improvisation.
Related MCP Connectors
GibsonAI MCP server: manage your databases with natural language
MCP server for interacting with the Supabase platform
MCP server for managing Prisma Postgres.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TheRaLabs/legion-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server