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-server-motherduck

🚀 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.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    A Model Context Protocol server implementation that enables AI assistants to execute SQL queries and interact with SQLite databases through a structured interface.
    7
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables SQL analytics on DuckDB and MotherDuck databases, allowing AI assistants and IDEs to query and analyze data.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    A local MCP server enabling AI assistants to query and analyze data via DuckDB SQL engine, supporting local files, memory, S3, and MotherDuck.
    15 npm
    Apache 2.0