DBeaver MCP Server
OmniSQL MCP
Universeller Datenbank-MCP-Server — geben Sie KI-Assistenten Lese-/Schreibzugriff auf Ihre Datenbanken unter Verwendung von Verbindungen, die bereits in Ihrem lokalen DB-Client-Arbeitsbereich (DBeaver-kompatibel) gespeichert sind.
Datenbankunterstützung
Nativ unterstützt (direkter Treiber, schnell):
PostgreSQL (via
pg)MySQL / MariaDB (via
mysql2)SQL Server / MSSQL (via
mssql)SQLite (via
sqlite3CLI)
Postgres-kompatibel (wird automatisch über den pg-Treiber geleitet):
CockroachDB, TimescaleDB, Amazon Redshift, YugabyteDB, AlloyDB, Supabase, Neon, Citus
Andere Datenbanken: Fallback auf ein externes CLI, das über OMNISQL_CLI_PATH konfiguriert wurde. Die Ergebnisse variieren je nach CLI.
Related MCP server: Alibaba Cloud DMS MCP Server
Funktionen
Wiederverwendung von Verbindungen, die bereits in Ihrem lokalen DB-Client-Arbeitsbereich konfiguriert sind — keine doppelte Einrichtung
Native Abfrageausführung für PostgreSQL, MySQL/MariaDB, SQLite, SQL Server
Verbindungspooling mit konfigurierbarer Poolgröße und Timeouts
Transaktionsunterstützung (BEGIN/COMMIT/ROLLBACK)
Analyse von Abfrageausführungsplänen (EXPLAIN)
Schemavergleich zwischen Verbindungen mit Generierung von Migrationsskripten
Schreibgeschützter Modus mit erzwungenem SELECT-only bei
execute_queryVerbindungs-Whitelist zur Einschränkung der zugänglichen Datenbanken
Tool-Filterung zur Deaktivierung spezifischer Operationen
Abfragevalidierung zur Blockierung gefährlicher Operationen (DROP DATABASE, TRUNCATE, DELETE/UPDATE ohne WHERE)
Datenexport nach CSV/JSON
Sauberes Herunterfahren mit Bereinigung des Verbindungspools
Anforderungen
Node.js 18+
Ein lokaler DB-Client (DBeaver-kompatibel) mit mindestens einer konfigurierten Verbindung
Installation
npm install -g omnisql-mcpKonfiguration
Claude Desktop
Hinzufügen zu ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"omnisql": {
"command": "omnisql-mcp"
}
}
}Claude Code
Hinzufügen zu ~/.claude/settings.json:
{
"mcpServers": {
"omnisql": {
"command": "omnisql-mcp"
}
}
}Cursor
Hinzufügen zu Cursor Settings > MCP Servers:
{
"mcpServers": {
"omnisql": {
"command": "omnisql-mcp"
}
}
}Umgebungsvariablen
Variable | Beschreibung | Standard |
| Pfad zum externen DB-Client-CLI (wird für Fallback bei nicht unterstützten Treibern verwendet) | Nicht gesetzt |
| Pfad zum Arbeitsbereichsverzeichnis des lokalen DB-Clients | OS-Standard |
| Abfrage-Timeout (ms) |
|
| Debug-Logging aktivieren |
|
| Alle Schreiboperationen deaktivieren |
|
| Kommagetrennte Whitelist von Verbindungs-IDs oder Namen | Alle |
| Kommagetrennte Liste zu deaktivierender Tools | Keine |
| Minimale Verbindungen pro Pool |
|
| Maximale Verbindungen pro Pool |
|
| Timeout für inaktive Verbindungen (ms) |
|
| Timeout für den Erhalt einer Verbindung (ms) |
|
Schreibgeschützter Modus
Blockiert alle Schreiboperationen. Das execute_query-Tool erlaubt nur SELECT-, EXPLAIN-, SHOW- und DESCRIBE-Anweisungen. Transaktionstools sind vollständig deaktiviert.
{
"mcpServers": {
"omnisql": {
"command": "omnisql-mcp",
"env": {
"OMNISQL_READ_ONLY": "true"
}
}
}
}Verbindungs-Whitelist
Schränkt ein, welche Arbeitsbereichsverbindungen sichtbar sind. Akzeptiert Verbindungs-IDs oder Anzeigenamen, kommagetrennt:
{
"mcpServers": {
"omnisql": {
"command": "omnisql-mcp",
"env": {
"OMNISQL_ALLOWED_CONNECTIONS": "dev-postgres,staging-mysql"
}
}
}
}Spezifische Tools deaktivieren
{
"mcpServers": {
"omnisql": {
"command": "omnisql-mcp",
"env": {
"OMNISQL_DISABLED_TOOLS": "drop_table,alter_table,write_query"
}
}
}
}Verfügbare Tools
Verbindungsverwaltung
list_connections- Alle Datenbankverbindungen auflistenget_connection_info- Verbindungsdetails abrufentest_connection- Konnektivität testen
Datenoperationen
execute_query- Schreibgeschützte Abfragen ausführen (nur SELECT, EXPLAIN, SHOW, DESCRIBE)write_query- INSERT/UPDATE/DELETE ausführenexport_data- Export nach CSV/JSON
Schemamanagement
list_tables- Tabellen und Views auflistenget_table_schema- Tabellenstruktur abrufencreate_table- Tabellen erstellenalter_table- Tabellen änderndrop_table- Tabellen löschen (erfordert Bestätigung)
Transaktionen
begin_transaction- Neue Transaktion startenexecute_in_transaction- Abfrage innerhalb einer Transaktion ausführencommit_transaction- Transaktion bestätigenrollback_transaction- Transaktion zurückrollen
Abfrageanalyse
explain_query- Abfrageausführungsplan analysierencompare_schemas- Schemata zwischen zwei Verbindungen vergleichenget_pool_stats- Statistiken des Verbindungspools abrufen
Sonstiges
get_database_stats- Datenbankstatistikenappend_insight- Analyse-Notizen speichernlist_insights- Gespeicherte Notizen abrufen
Sicherheit
Erzwingung des schreibgeschützten Modus:
execute_queryakzeptiert nur schreibgeschützte Anweisungen (SELECT, EXPLAIN, SHOW, DESCRIBE, PRAGMA). Schreiboperationen müssenwrite_queryverwenden.Abfragevalidierung: Blockiert DROP DATABASE, DROP SCHEMA, TRUNCATE, DELETE/UPDATE ohne WHERE, GRANT, REVOKE sowie Benutzerverwaltungsanweisungen.
Verbindungs-Whitelist: Schränkt über
OMNISQL_ALLOWED_CONNECTIONSein, welche Verbindungen freigegeben werden.Tool-Filterung: Deaktivieren Sie jedes Tool über
OMNISQL_DISABLED_TOOLS.Eingabesanitisierung: Verbindungs-IDs und SQL-Bezeichner werden bereinigt, um Injektionen zu verhindern.
Empfehlung: Verwenden Sie für den Produktionseinsatz zusätzlich einen schreibgeschützten Datenbankbenutzer für eine tiefgreifende Verteidigung.
Unterstützung des Arbeitsbereichsformats
Unterstützt beide Konfigurationsformate, die von DBeaver-kompatiblen DB-Clients geschrieben werden:
Legacy: XML-Konfiguration in
.metadata/.plugins/org.jkiss.dbeaver.core/Modern: JSON-Konfiguration in
General/.dbeaver/
Anmeldedaten werden automatisch aus der credentials-config.json des Arbeitsbereichs entschlüsselt.
Entwicklung
git clone https://github.com/srthkdev/omnisql-mcp.git
cd omnisql-mcp
npm install
npm run build
npm test
npm run lintLizenz
MIT
Available Tools
14 toolsalter_tableC
Modify existing table schema (add columns, rename tables, etc.)
Inputs: connectionId (required), query (required).
append_insightA
Add a business insight or analysis note to the memo
Inputs: insight (required), connection, tags.
create_tableC
Create new tables in the database
Inputs: connectionId (required), query (required).
drop_tableA
Remove a table from the database with safety confirmation
Inputs: confirm (required), connectionId (required), tableName (required).
execute_queryA
Execute a SQL query on a specific DBeaver connection (read-only queries)
Inputs: connectionId (required), query (required), maxRows.
export_dataC
Export query results to various formats (CSV, JSON, etc.)
Inputs: connectionId (required), query (required), format, includeHeaders, +1 more.
get_connection_infoC
Get detailed information about a specific DBeaver connection
Inputs: connectionId (required).
get_database_statsC
Get statistics and information about a database
Inputs: connectionId (required).
get_table_schemaB
Get schema information for a specific table
Inputs: connectionId (required), tableName (required), includeIndexes.
list_connectionsB
List all available DBeaver database connections
Inputs: includeDetails.
list_insightsA
List all stored business insights and analysis notes
Inputs: connection, tags.
list_tablesC
List all tables in a database
Inputs: connectionId (required), includeViews, schema.
test_connectionC
Test connectivity to a DBeaver connection
Inputs: connectionId (required).
write_queryA
Execute INSERT, UPDATE, or DELETE queries on a specific DBeaver connection
Inputs: connectionId (required), query (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 14 tools
Most tools have distinct purposes, but 'execute_query' and 'write_query' could cause confusion as both execute SQL queries, with the distinction being read-only vs. write operations. Other tools like 'create_table', 'alter_table', and 'drop_table' are clearly differentiated for table management.
All tools follow a consistent verb_noun naming pattern (e.g., 'create_table', 'list_connections', 'execute_query'), with no mixing of conventions like camelCase or snake_case variations. This predictability makes the tool set easy to navigate and understand.
With 14 tools, the count is well-scoped for a database management server, covering core operations like connection handling, query execution, table management, and data export. Each tool serves a specific function without redundancy, fitting the domain appropriately.
The tool set provides comprehensive coverage for database operations, including CRUD for tables, connection management, and query execution. A minor gap exists in data manipulation beyond basic queries, such as bulk operations or transaction handling, but core workflows are well-supported.
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Draxlr's remote MCP server connects AI assistants to your SQL databases and dashboards. Explore schemas, run read-only queries, manage saved queries and dashboards, and export results, all with row-level security so each user sees only their own data.
Hosted SQL Server MCP server for Claude, ChatGPT and Cursor, with each action switched per account.
Related MCP Servers
FlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that enables Large Language Models to access and interact with database connections, including viewing schemas and performing CRUD operations on connected databases.-- AlicenseAqualityCmaintenanceA Model Context Protocol server that enables large language models to access database metadata and perform cross-engine data querying across diverse database ecosystems.1654Apache 2.0
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server that provides AI assistants with comprehensive access to SQL databases, enabling schema inspection, query execution, and database operations with enterprise-grade security.55 npm9MIT
- AlicenseBqualityDmaintenanceA Model Context Protocol server that provides real-time database schema information to AI assistants, supporting both low-code system schema queries and traditional database metadata queries.4MIT