Skip to main content
Glama

Сервер DuckDB MCP

PyPI - Версия PyPI - Лицензия

Реализация сервера Model Context Protocol (MCP), которая позволяет помощникам на основе искусственного интеллекта, таким как Клод, взаимодействовать с DuckDB для получения мощных возможностей анализа данных.

🌟 Что такое MCP-сервер DuckDB?

DuckDB MCP Server подключает помощников ИИ к DuckDB — высокопроизводительной аналитической базе данных — через Model Context Protocol (MCP) . Это позволяет моделям ИИ:

  • Запрашивайте данные напрямую из различных источников, таких как CSV, Parquet, JSON и т. д.

  • Доступ к данным из облачного хранилища (S3 и т. д.) без сложной настройки

  • Выполнять сложный анализ данных с использованием SQL

  • Генерируйте аналитические данные с надлежащим контекстом и пониманием

Related MCP server: MCP Database Server

🚀 Основные характеристики

  • Инструмент SQL-запросов : выполнение любого SQL-запроса с помощью мощного синтаксиса DuckDB

  • Несколько источников данных : прямой запрос из:

    • Локальные файлы (CSV, Parquet, JSON и т. д.)

    • S3-корзины и облачное хранилище

    • Базы данных SQLite

    • Все остальные источники данных, поддерживаемые DuckDB

  • Управление автоматическим подключением : автоматическое создание файла базы данных и обработка подключений

  • Интеллектуальная обработка учетных данных : бесперебойное управление учетными данными AWS/S3

  • Ресурсы документации : встроенный DuckDB SQL и справочник по импорту данных для помощников на основе искусственного интеллекта

📋 Требования

  • Питон 3.10+

  • Клиент, совместимый с MCP (Claude Desktop, Cursor, VS Code с Copilot и т. д.)

💻 Установка

Использование пипа

pip install duckdb-mcp-server

Из источника

git clone https://github.com/mustafahasankhan/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 — профиль AWS для учетных данных S3 (по умолчанию: использует AWS_PROFILE или «default»)

  • --creds-from-env — использовать учетные данные AWS из переменных среды

🔌 Настройка с помощью Claude Desktop

  1. Установите Claude Desktop с claude.ai/download

  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" ] } } }

📊 Пример использования

После настройки вы можете попросить своего помощника на основе искусственного интеллекта проанализировать данные с помощью DuckDB:

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

ИИ сгенерирует и выполнит соответствующий 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"

ИИ сгенерирует соответствующий SQL для запроса 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;

🌩️ Аутентификация облачного хранилища

Сервер 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

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