DuckDB MCP Server

MIT License
3
  • Apple

Integrations

  • Enables direct SQL queries on various data sources including CSV, Parquet, JSON, and cloud storage like S3, allowing for sophisticated data analysis with DuckDB's analytical database capabilities.

  • Provides ability to query and analyze SQLite databases through DuckDB's interface, extending analytical capabilities to SQLite data sources.

DuckDB MCP サーバー

Claude のような AI アシスタントが DuckDB と対話して強力なデータ分析機能を実現できるようにするモデル コンテキスト プロトコル (MCP) サーバー実装。

🌟 DuckDB MCP サーバーとは何ですか?

DuckDB MCPサーバーは、モデルコンテキストプロトコル(MCP)を介してAIアシスタントを高性能分析データベースであるDuckDBに接続します。これにより、AIモデルは以下のことが可能になります。

  • CSV、Parquet、JSON などのさまざまなソースから直接データをクエリします。
  • 複雑な設定なしでクラウドストレージ(S3など)からデータにアクセス
  • SQLを使用して高度なデータ分析を実行する
  • 適切なコンテキストと理解に基づいてデータの洞察を生成する

🚀 主な機能

  • SQLクエリツール: DuckDBの強力な構文を使用して任意のSQLクエリを実行します
  • 複数のデータ ソース: 以下から直接クエリを実行:
    • ローカル ファイル (CSV、Parquet、JSON など)
    • S3バケットとクラウドストレージ
    • SQLite データベース
    • DuckDBでサポートされているその他すべてのデータソース
  • 自動接続管理: 自動データベースファイル作成と接続処理
  • スマートな認証情報処理: シームレスな AWS/S3 認証情報管理
  • ドキュメントリソース: AIアシスタント用の組み込みDuckDB SQLとデータインポートリファレンス

📋 要件

  • Python 3.10以上
  • MCP 互換クライアント (Claude Desktop、Cursor、VS Code with Copilot など)

💻 インストール

pipの使用

pip install duckdb-mcp-server

出典

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

🔧 構成

コマンドラインオプション

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

必須パラメータ:

  • --db-path - DuckDB データベース ファイルへのパス (存在しない場合は作成されます)

オプションパラメータ:

  • --readonly - 読み取り専用モードで実行します(データベースが存在しない場合はエラーが発生します)
  • --s3-region - AWS S3 リージョン (デフォルト: AWS_DEFAULT_REGION 環境変数を使用)
  • --s3-profile - S3 認証情報の AWS プロファイル (デフォルト: AWS_PROFILE または 'default' を使用)
  • --creds-from-env - 環境変数から AWS 認証情報を使用する

🔌 Claude Desktop での設定

  1. claude.ai/downloadからClaude Desktopをインストールします。
  2. Claude Desktop の設定ファイルを編集します。macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
    Windows : %APPDATA%/Claude/claude_desktop_config.json
  3. DuckDB MCP サーバー構成を追加します。
{ "mcpServers": { "duckdb": { "command": "duckdb-mcp-server", "args": [ "--db-path", "~/claude-duckdb/data.db" ] } } }

📊 使用例

設定が完了したら、AI アシスタントに DuckDB を使用してデータを分析するよう依頼できます。

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

AI は適切な SQL を生成して実行します。

-- 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;

S3 データの操作

S3 バケットから直接データをクエリします。

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

AI は S3 をクエリするための適切な SQL を生成します。

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;

🌩️ クラウドストレージ認証

DuckDB MCP サーバーは、次の順序で AWS 認証を処理します。

  1. 明示的な資格情報( --creds-from-envが有効な場合)
  2. 名前付きプロファイルの認証情報( --s3-profile経由)
  3. デフォルトの資格情報チェーン (環境、共有資格情報ファイルなど)

🛠️ 開発

# 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

📜 ライセンス

このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。

🙏 貢献する

貢献を歓迎します!お気軽にプルリクエストを送信してください。

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

AI アシスタントを DuckDB に接続し、CSV、Parquet、JSON、クラウド ストレージなどのさまざまなソースから SQL 経由でデータをクエリおよび分析できるようにするモデル コンテキスト プロトコル サーバー実装。

  1. 🌟 What is DuckDB MCP Server?
    1. 🚀 Key Features
      1. 📋 Requirements
        1. 💻 Installation
          1. Using pip
          2. From source
        2. 🔧 Configuration
          1. Command Line Options
        3. 🔌 Setting Up with Claude Desktop
          1. 📊 Example Usage
            1. Working with S3 Data
          2. 🌩️ Cloud Storage Authentication
            1. 🛠️ Development
              1. 📜 License
                1. 🙏 Contributing
                  ID: 6ui00x9yzh