Сервер DuckDB MCP
Реализация сервера 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
Установите Claude Desktop с claude.ai/download
Отредактируйте файл конфигурации Claude Desktop:
macOS :
~/Library/Application Support/Claude/claude_desktop_config.json
Windows :%APPDATA%/Claude/claude_desktop_config.jsonДобавьте конфигурацию сервера 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 в следующем порядке:
Явные учетные данные (если включен
--creds-from-env)Учетные данные именованного профиля (через
--s3-profile)Цепочка учетных данных по умолчанию (среда, общий файл учетных данных и т. д.)
🛠️ Развитие
# 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 .
🙏 Вклад
Вклады приветствуются! Пожалуйста, не стесняйтесь отправлять запрос на включение.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.