mcp-server-duckdb
mcp-сервер-duckdb
Реализация сервера Model Context Protocol (MCP) для DuckDB, предоставляющая возможности взаимодействия с базой данных через инструменты MCP. Было бы интересно, чтобы LLM проанализировал это. DuckDB подходит для локального анализа.
Обзор
Этот сервер обеспечивает взаимодействие с базой данных DuckDB через протокол контекста модели, позволяя выполнять такие операции с базой данных, как запросы, создание таблиц и проверка схем.
Related MCP server: MotherDuck DuckDB MCP Server
Компоненты
Ресурсы
В настоящее время пользовательские ресурсы не реализованы.
Подсказки
В настоящее время пользовательские подсказки не реализованы.
Инструменты
На сервере реализован следующий инструмент взаимодействия с базой данных:
запрос : выполнение любого SQL-запроса к базе данных DuckDB
Ввод :
query(строка) — любой допустимый оператор DuckDB SQLВывод : результаты запроса в виде текста (или сообщение об успешном выполнении для таких операций, как CREATE/INSERT)
[!ПРИМЕЧАНИЕ] Сервер предоставляет единую унифицированную функцию
query, а не отдельные специализированные функции, поскольку современные LLM могут генерировать соответствующий SQL для любой операции с базой данных (SELECT, CREATE TABLE, JOIN и т. д.) без необходимости в отдельных конечных точках.
[!ПРИМЕЧАНИЕ] Когда сервер работает в режиме
readonly, применяется собственная защита DuckDB только для чтения. Это гарантирует, что языковая модель (LLM) не сможет выполнять операции записи (CREATE, INSERT, UPDATE, DELETE), поддерживая целостность данных и предотвращая непреднамеренные изменения.
Конфигурация
Требуемые параметры
db-path (строка): Путь к файлу базы данных DuckDB
Сервер автоматически создаст файл базы данных и родительские каталоги, если они не существуют.
Если указано
--readonlyи файл базы данных не существует, сервер не запустится с ошибкой
Необязательные параметры
--readonly : Запустить сервер в режиме только для чтения (по умолчанию:
false)Описание : Когда этот флаг установлен, сервер работает в режиме только для чтения. Это означает:
База данных DuckDB будет открыта с
read_only=True, что предотвращает любые операции записи.Если указанный файл базы данных не существует, он не будет создан.
Преимущество безопасности : предотвращает выполнение каких-либо операций записи языковой моделью (LLM), гарантируя неизменность базы данных.
Ссылка : Более подробную информацию о соединениях только для чтения в DuckDB см. в документации DuckDB Python API .
--keep-connection : повторно использует один режим подключения DuckDB (по умолчанию:
false)Описание : Когда этот флаг установлен, повторно использует одно соединение DuckDB на весь срок службы сервера. Включает объекты TEMP и немного ускоряет запросы, но может удерживать исключительную блокировку файла.
Установка
Установка через Smithery
Чтобы автоматически установить DuckDB Server для Claude Desktop через Smithery :
npx -y @smithery/cli install mcp-server-duckdb --client claudeИнтеграция рабочего стола Клода
Настройте сервер MCP в файле конфигурации Claude Desktop:
MacOS
Расположение: ~/Library/Application Support/Claude/claude_desktop_config.json
Окна
Расположение: %APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"duckdb": {
"command": "uvx",
"args": [
"mcp-server-duckdb",
"--db-path",
"~/mcp-server-duckdb/data/data.db"
]
}
}
}Примечание:
~/mcp-server-duckdb/data/data.dbследует заменить на фактический путь к файлу базы данных DuckDB.
Разработка
Предпосылки
Python с менеджером пакетов
uvПакет Python DuckDB
Зависимости сервера MCP
Отладка
Отладка серверов MCP может быть сложной из-за их stdio-ориентированной коммуникации. Мы рекомендуем использовать MCP Inspector для лучшего отладки.
Использование MCP-инспектора
Установите инспектор с помощью npm:
npx @modelcontextprotocol/inspector uv --directory ~/codes/mcp-server-duckdb run mcp-server-duckdb --db-path ~/mcp-server-duckdb/data/data.dbОткройте предоставленный URL-адрес в браузере, чтобы получить доступ к интерфейсу отладки.
Инспектор обеспечивает видимость:
Запрос/ответная коммуникация
Исполнение инструмента
Состояние сервера
Сообщения об ошибках
This server cannot be deployed
Maintenance
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Query, join, profile, clean and convert CSV/JSON/Parquet with server-side DuckDB over MCP.
Analytical memory for AI agents: a real Postgres queried in plain English over MCP. One command.
Query your warehouse or a CSV with Claude/ChatGPT over MCP, governed by table-level ACL + audit.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceA Model Context Protocol server implementation that connects AI assistants to DuckDB, enabling them to query and analyze data from various sources including CSV, Parquet, JSON, and cloud storage through SQL.18MIT
- AlicenseAqualityDmaintenanceA local MCP server implementation that interacts with DuckDB and MotherDuck databases, providing SQL analytics capabilities to AI Assistants and IDEs.1MIT
- AlicenseNot gradedqualityDmaintenanceA local MCP server enabling AI assistants to query and analyze data via DuckDB SQL engine, supporting local files, memory, S3, and MotherDuck.19 npmApache 2.0
- AlicenseNot gradedqualityDmaintenanceMCP server for SQL analytics on DuckDB and MotherDuck databases, enabling AI assistants and IDEs to query data via natural language.1MIT