Skip to main content
Glama

DuckDB MCP サーバー

PyPI - バージョン PyPI - ライセンス

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

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

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

  • CSV、Parquet、JSON などのさまざまなソースから直接データをクエリします。

  • 複雑な設定なしでクラウドストレージ(S3など)からデータにアクセス

  • SQLを使用して高度なデータ分析を実行する

  • 適切なコンテキストと理解に基づいてデータの洞察を生成する

Related MCP server: mcp-server-motherduck

🚀 主な機能

  • 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ファイルを参照してください。

🙏 貢献する

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

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