mcp-database-universal
MCP Database Server
Eine Reasoning-Schnittstelle für Datenbanken für MCP-fähige KI-Agenten – kein dünner SQL-Wrapper.
mcp-database-universal bietet KI-Agenten eine Reihe von 7 Reasoning-Tools, um eine Datenbank sicher zu erkunden und abzufragen, ihr Schema und ihre Datenstruktur zu verstehen, Fragen in natürlicher Sprache zu stellen und Beziehungen zu visualisieren – ohne rohe Verbindungsinterna preiszugeben.
Funktionen
7 Reasoning-Tools für KI-Agenten: Verbindung testen, Tabellen auflisten, eine Tabelle inspizieren, parametrisiertes SQL ausführen, Fragen in einfacher Sprache stellen, Daten profilieren und ein ER-Diagramm rendern.
Multi-Engine: SQLite (integriert) plus optional PostgreSQL, MySQL und MSSQL.
Sicherheit zuerst: standardmäßig schreibgeschützt, parametrisierte Abfragen, Anweisungsvalidierung, Zeilen-/Zeit-/Ausgabelimits.
LLM-freundliche Ausgabe: Typen übersetzt,
NULLs behandelt, Ergebnisse in Markdown-Tabellen mit Kontext formatiert.Schema-Introspection: automatisches Erkennen von Tabellen, Spalten, Indizes, Fremdschlüsseln und Beziehungen.
Natürliche Sprachabfragen: Übersetzen von Klartextfragen in SQL und Rückgabe der Ergebnisse.
Related MCP server: Universal Database MCP Server
Unterstützte Engines
Engine | Anforderung | Zusätzliche Installation |
SQLite | integriert | — |
PostgreSQL | psycopg |
|
MySQL | PyMySQL |
|
MSSQL | pyodbc + ODBC-Treiber |
|
alle | — |
|
Installation
pip install mcp-database-universal
# With optional engines:
pip install "mcp-database-universal[postgres]"
pip install "mcp-database-universal[mysql]"
pip install "mcp-database-universal[mssql]"
# or everything:
pip install "mcp-database-universal[all]"Schnellstart
Führen Sie den Server über STDIO aus (der Standardtransport für MCP-Clients):
DATABASE_URL=sqlite:///app.db python -m mcp_database_universalVerbindungs-URLs:
sqlite:///path/to/db.db SQLite (file)
sqlite:///:memory: SQLite (in-memory)
postgresql://user:pass@host:5432/db PostgreSQL
mysql://user:pass@host:3306/db MySQL
mssql://user:pass@host:1433/db MSSQL (uses ODBC Driver 18)Docker
docker build -t mcp-db .
# Mount a SQLite database read-only:
docker run --rm -i \
-v /host/path/app.db:/data/app.db:ro \
-e DATABASE_URL=sqlite:////data/app.db \
mcp-db
# Or in-memory:
docker run --rm -i -e DATABASE_URL=sqlite:///:memory: mcp-dbKonfiguration
Die gesamte Konfiguration erfolgt über Umgebungsvariablen.
Variable | Standard | Beschreibung |
| (erforderlich) | Datenbank-Verbindungs-URL. |
|
| Schreibgeschützten Modus erzwingen (blockiert Schreibvorgänge, selbst wenn |
|
| Schreibanweisungen erlauben, wenn |
|
| Maximale Anzahl von Zeilen pro Abfrage. |
|
| Abfrage-Timeout in Sekunden. |
|
| Obergrenze für die Größe der Ergebnisnutzlast. |
|
| Anzahl der Beispielzeilen in Tabellen-/Spaltenstatistiken. |
|
| Top-N-Werteverteilungseinträge im Profiling. |
| — | API-Schlüssel für den LLM-gestützten |
| — | API-Schlüssel für den LLM-gestützten |
Tools
Tool | Beschreibung |
| Datenbankverbindung testen; Engine, Version, Name, Größe, Tabellenanzahl melden. |
| Übersicht aller Tabellen mit Zeilenzahlen, Spaltenzahlen, Fremdschlüsselbeziehungen. |
| Vollständige Struktur einer Tabelle: Spalten, Typen, Indizes, Fremdschlüssel, Beispieldaten. |
| Eine sichere, parametrisierte SQL-Abfrage ausführen und Markdown-Ergebnisse erhalten. |
| Eine Frage in Klartext stellen; generiertes SQL + Ergebnisse erhalten. |
| Datenprofil: Verteilungen, NULL-Raten, Beziehungen, Größen. |
| Mermaid-ER-Diagramm der Tabellenbeziehungen. |
Beispiel: query mit Parametern
{
"sql": "SELECT * FROM users WHERE id = :id AND active = :active",
"params": "{\"id\": 42, \"active\": true}"
}Parameter verwenden :name-Platzhalter; übergeben Sie die Werte als JSON-String in params.
Beispiel: natural_query
question: "How many users are there?"
-> SELECT COUNT(*) FROM users
question: "Show me all orders"
-> SELECT * FROM orders LIMIT 100Ein funktionierendes Beispiel mit einer kleinen Beispieldatenbank finden Sie in examples/ zusammen mit gebrauchsfertigen Konfigurationsausschnitten für gängige MCP-Clients.
MCP-Client-Konfiguration
Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"database": {
"command": "python",
"args": ["-m", "mcp_database_universal"],
"env": {"DATABASE_URL": "sqlite:///C:/data/app.db"}
}
}
}Cursor / andere CLI-basierte Clients
{
"mcpServers": {
"database": {
"command": "uvx",
"args": ["mcp-database-universal"],
"env": {"DATABASE_URL": "sqlite:///C:/data/app.db"}
}
}
}Windows-Hinweis: Der asynchrone Postgres-Treiber erfordert die Windows-Selector-Ereignisschleife. Das Paket setzt diese Richtlinie automatisch auf
win32, daher ist keine zusätzliche Konfiguration erforderlich.
Entwicklung
pip install -e ".[dev]"
pytestIntegrationstests für PostgreSQL/MySQL verwenden Docker Compose und werden automatisch übersprungen, wenn die Server nicht erreichbar sind:
docker compose -f tests/integration/docker-compose.yml up -d
pytestSicherheitsmodell
Der Server ist standardmäßig schreibgeschützt;
INSERT/UPDATE/DELETE/DROP/ALTERund andere Schreibanweisungen werden blockiert.Schreibvorgänge sind nur möglich, wenn der Betreiber explizit
DATABASE_READ_ONLY=falseundDATABASE_WRITE_ENABLED=truesetzt.Abfrageergebnisse sind durch Zeilenanzahl, Timeout und Ausgabegröße begrenzt – außer Kontrolle geratene Abfragen werden verhindert.
Lizenz
MIT
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
- FlicenseNot gradedqualityDmaintenanceEnables AI agents to query and explore databases including SQLite, PostgreSQL, MySQL, and SQL Server through a secure, read-only workflow. It provides tools for listing connections, inspecting table schemas, and executing SELECT statements directly within VS Code.1
- AlicenseNot gradedqualityAmaintenanceConnect AI agents to SQL databases (SQLite, PostgreSQL, MySQL) with a unified interface for querying data, exploring schemas, inserting rows, and exporting results to CSV. Includes safety features like dangerous query blocking and write guards.13MIT
- AlicenseNot gradedqualityDmaintenanceEnables AI assistants to connect to and interact with PostgreSQL, MySQL, SQLite, and MongoDB databases through natural language, supporting schema exploration, query execution, data export, and more.MIT
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with PostgreSQL or MySQL databases using natural language. Supports SQL queries, schema discovery, and pre-built aggregations without writing SQL.289MIT
Related MCP Connectors
Query PostgreSQL databases in plain English — LLM-generated, safety-validated SQL.
Explore, query, and inspect SQLite databases with ease. List tables, preview results, and view det…
Give your agent live data from Twitter, Reddit, the web and GitHub. No API keys, no scraping stack.
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/kobramantra-debug/mcp-database-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server