Skip to main content
Glama

DuckDB MCP-Server

PyPI - Version PyPI - Lizenz

Eine Model Context Protocol (MCP)-Serverimplementierung, die es KI-Assistenten wie Claude ermöglicht, mit DuckDB zu interagieren, um leistungsstarke Datenanalysefunktionen zu nutzen.

🌟 Was ist der DuckDB MCP-Server?

Der DuckDB MCP Server verbindet KI-Assistenten über das Model Context Protocol (MCP) mit DuckDB – einer leistungsstarken analytischen Datenbank. Dies ermöglicht KI-Modellen:

  • Fragen Sie Daten direkt aus verschiedenen Quellen wie CSV, Parquet, JSON usw. ab.

  • Greifen Sie ohne komplexe Einrichtung auf Daten aus Cloud-Speichern (S3 usw.) zu

  • Führen Sie anspruchsvolle Datenanalysen mit SQL durch

  • Generieren Sie Dateneinblicke mit dem richtigen Kontext und Verständnis

Related MCP server: MCP Database Server

🚀 Hauptfunktionen

  • SQL-Abfragetool : Führen Sie jede SQL-Abfrage mit der leistungsstarken Syntax von DuckDB aus

  • Mehrere Datenquellen : Abfrage direkt von:

    • Lokale Dateien (CSV, Parquet, JSON usw.)

    • S3-Buckets und Cloud-Speicher

    • SQLite-Datenbanken

    • Alle anderen von DuckDB unterstützten Datenquellen

  • Auto-Connection Management : Automatische Datenbankdateierstellung und Verbindungsverwaltung

  • Intelligente Anmeldeinformationsverwaltung : Nahtlose Verwaltung von AWS/S3-Anmeldeinformationen

  • Dokumentationsressourcen : Integriertes DuckDB SQL und Datenimportreferenz für KI-Assistenten

📋 Voraussetzungen

  • Python 3.10+

  • Ein MCP-kompatibler Client (Claude Desktop, Cursor, VS Code mit Copilot usw.)

💻 Installation

Verwenden von pip

pip install duckdb-mcp-server

Aus der Quelle

git clone https://github.com/mustafahasankhan/duckdb-mcp-server.git cd duckdb-mcp-server pip install -e .

🔧 Konfiguration

Befehlszeilenoptionen

duckdb-mcp-server --db-path path/to/database.db [options]

Erforderliche Parameter:

  • --db-path – Pfad zur DuckDB-Datenbankdatei (wird erstellt, falls nicht vorhanden)

Optionale Parameter:

  • --readonly – Im schreibgeschützten Modus ausführen (gibt einen Fehler aus, wenn die Datenbank nicht vorhanden ist)

  • --s3-region – AWS S3-Region (Standard: verwendet die Umgebungsvariable AWS_DEFAULT_REGION)

  • --s3-profile – AWS-Profil für S3-Anmeldeinformationen (Standard: verwendet AWS_PROFILE oder „default“)

  • --creds-from-env – AWS-Anmeldeinformationen aus Umgebungsvariablen verwenden

🔌 Einrichten mit Claude Desktop

  1. Installieren Sie Claude Desktop von claude.ai/download

  2. Bearbeiten Sie die Konfigurationsdatei von Claude Desktop:

    macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
    Windows : %APPDATA%/Claude/claude_desktop_config.json

  3. Fügen Sie die DuckDB MCP-Serverkonfiguration hinzu:

{ "mcpServers": { "duckdb": { "command": "duckdb-mcp-server", "args": [ "--db-path", "~/claude-duckdb/data.db" ] } } }

📊 Anwendungsbeispiel

Nach der Konfiguration können Sie Ihren KI-Assistenten bitten, Daten mit DuckDB zu analysieren:

"Load the sales.csv file and show me the top 5 products by revenue"

Die KI generiert und führt das entsprechende SQL aus:

-- Load and query the CSV data SELECT product_name, SUM(quantity * price) AS revenue FROM read_csv('sales.csv') GROUP BY product_name ORDER BY revenue DESC LIMIT 5;

Arbeiten mit S3-Daten

Daten direkt aus S3-Buckets abfragen:

"Analyze the daily user signups from our analytics data in S3"

Die KI generiert entsprechendes SQL zur Abfrage von S3:

SELECT date_trunc('day', signup_timestamp) AS day, COUNT(*) AS num_signups FROM read_parquet('s3://my-analytics-bucket/signups/*.parquet') GROUP BY day ORDER BY day DESC;

🌩️ Cloud-Speicherauthentifizierung

Der DuckDB MCP-Server verarbeitet die AWS-Authentifizierung in dieser Reihenfolge:

  1. Explizite Anmeldeinformationen (wenn --creds-from-env aktiviert ist)

  2. Anmeldeinformationen für benannte Profile (über --s3-profile )

  3. Standard-Anmeldeinformationskette (Umgebung, gemeinsam genutzte Anmeldeinformationsdatei usw.)

🛠️ Entwicklung

# Clone the repository git clone https://github.com/yourusername/duckdb-mcp-server.git cd duckdb-mcp-server # Set up a virtual environment python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate # Install in development mode pip install -e ".[dev]" # Run tests pytest

📜 Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert – Einzelheiten finden Sie in der Datei LICENSE .

🙏 Beitragen

Beiträge sind willkommen! Senden Sie gerne einen Pull Request.

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

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/mustafahasankhan/duckdb-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server