mcp-server-duckdb
mcp-server-duckdb
Eine Model Context Protocol (MCP)-Serverimplementierung für DuckDB, die Datenbankinteraktionsmöglichkeiten über MCP-Tools bietet. Eine Analyse durch LLM wäre interessant. DuckDB eignet sich für lokale Analysen.
Überblick
Dieser Server ermöglicht die Interaktion mit einer DuckDB-Datenbank über das Model Context Protocol und ermöglicht Datenbankoperationen wie Abfragen, Tabellenerstellung und Schemaprüfung.
Related MCP server: MotherDuck DuckDB MCP Server
Komponenten
Ressourcen
Derzeit sind keine benutzerdefinierten Ressourcen implementiert.
Eingabeaufforderungen
Derzeit sind keine benutzerdefinierten Eingabeaufforderungen implementiert.
Werkzeuge
Der Server implementiert das folgende Datenbankinteraktionstool:
Abfrage : Führen Sie eine beliebige SQL-Abfrage in der DuckDB-Datenbank aus
Eingabe :
query(Zeichenfolge) – Jede gültige DuckDB-SQL-AnweisungAusgabe : Abfrageergebnisse als Text (oder Erfolgsmeldung für Vorgänge wie CREATE/INSERT)
[!NOTE] Der Server bietet eine einzige einheitliche
queryanstelle separater spezialisierter Funktionen, da moderne LLMs für jeden Datenbankvorgang (SELECT, CREATE TABLE, JOIN usw.) geeignetes SQL generieren können, ohne dass separate Endpunkte erforderlich sind.
[!NOTE] Wenn der Server im
readonlyModus ausgeführt wird, wird der native Schreibschutz von DuckDB erzwungen. Dadurch wird sichergestellt, dass das Sprachmodell (LLM) keine Schreibvorgänge (CREATE, INSERT, UPDATE, DELETE) ausführen kann. Dadurch wird die Datenintegrität gewahrt und unbeabsichtigte Änderungen werden verhindert.
Konfiguration
Erforderliche Parameter
db-path (Zeichenfolge): Pfad zur DuckDB-Datenbankdatei
Der Server erstellt automatisch die Datenbankdatei und die übergeordneten Verzeichnisse, falls diese nicht vorhanden sind
Wenn
--readonlyangegeben ist und die Datenbankdatei nicht existiert, schlägt der Serverstart mit einem Fehler fehl
Optionale Parameter
--readonly : Server im schreibgeschützten Modus ausführen (Standard:
false)Beschreibung : Wenn dieses Flag gesetzt ist, arbeitet der Server im Nur-Lese-Modus. Das bedeutet:
Die DuckDB-Datenbank wird mit
read_only=Truegeöffnet, wodurch Schreibvorgänge verhindert werden.Wenn die angegebene Datenbankdatei nicht existiert, wird sie nicht erstellt.
Sicherheitsvorteil : Verhindert, dass das Sprachmodell (LLM) Schreibvorgänge durchführt, und stellt sicher, dass die Datenbank unverändert bleibt.
Referenz : Weitere Einzelheiten zu schreibgeschützten Verbindungen in DuckDB finden Sie in der DuckDB Python API-Dokumentation .
--keep-connection : Verwendet einen einzelnen DuckDB-Verbindungsmodus erneut (Standard:
false)Beschreibung : Wenn dieses Flag gesetzt ist, wird eine einzelne DuckDB-Verbindung für die gesamte Serverlebensdauer wiederverwendet. Aktiviert temporäre Objekte und etwas schnellere Abfragen, kann aber eine exklusive Sperre für die Datei halten.
Installation
Installation über Smithery
So installieren Sie DuckDB Server für Claude Desktop automatisch über Smithery :
npx -y @smithery/cli install mcp-server-duckdb --client claudeClaude Desktop Integration
Konfigurieren Sie den MCP-Server in der Konfigurationsdatei von Claude Desktop:
macOS
Speicherort: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows
Speicherort: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"duckdb": {
"command": "uvx",
"args": [
"mcp-server-duckdb",
"--db-path",
"~/mcp-server-duckdb/data/data.db"
]
}
}
}Hinweis:
~/mcp-server-duckdb/data/data.dbsollte durch den tatsächlichen Pfad zur DuckDB-Datenbankdatei ersetzt werden.
Entwicklung
Voraussetzungen
Python mit
uv-PaketmanagerDuckDB Python-Paket
MCP-Serverabhängigkeiten
Debuggen
Das Debuggen von MCP-Servern kann aufgrund ihrer stdio-basierten Kommunikation eine Herausforderung darstellen. Für optimales Debugging empfehlen wir die Verwendung des MCP Inspector .
Verwenden des MCP Inspector
Installieren Sie den Inspector mit npm:
npx @modelcontextprotocol/inspector uv --directory ~/codes/mcp-server-duckdb run mcp-server-duckdb --db-path ~/mcp-server-duckdb/data/data.dbÖffnen Sie die angegebene URL in Ihrem Browser, um auf die Debugging-Oberfläche zuzugreifen
Der Inspektor bietet Einblick in:
Anfrage-/Antwort-Kommunikation
Werkzeugausführung
Serverstatus
Fehlermeldungen
This server cannot be deployed
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Query your warehouse or a CSV with Claude/ChatGPT over MCP, governed by table-level ACL + audit.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server implementation that connects AI assistants to DuckDB, enabling them to query and analyze data from various sources including CSV, Parquet, JSON, and cloud storage through SQL.18MIT
- AlicenseAqualityDmaintenanceA local MCP server implementation that interacts with DuckDB and MotherDuck databases, providing SQL analytics capabilities to AI Assistants and IDEs.1MIT
- AlicenseNot gradedqualityDmaintenanceA local MCP server enabling AI assistants to query and analyze data via DuckDB SQL engine, supporting local files, memory, S3, and MotherDuck.19 npmApache 2.0
- AlicenseNot gradedqualityDmaintenanceMCP server for SQL analytics on DuckDB and MotherDuck databases, enabling AI assistants and IDEs to query data via natural language.1MIT