Skip to main content
Glama

Servidor MCP de DuckDB

PyPI - Versión PyPI - Licencia

Una implementación de servidor de Protocolo de contexto de modelo (MCP) que permite a los asistentes de IA como Claude interactuar con DuckDB para obtener potentes capacidades de análisis de datos.

🌟¿Qué es DuckDB MCP Server?

El servidor MCP de DuckDB conecta los asistentes de IA con DuckDB , una base de datos analítica de alto rendimiento, mediante el Protocolo de Contexto de Modelo (MCP) . Esto permite a los modelos de IA:

  • Consulta datos directamente desde varias fuentes como CSV, Parquet, JSON, etc.

  • Acceda a datos desde el almacenamiento en la nube (S3, etc.) sin una configuración compleja

  • Realice análisis de datos sofisticados utilizando SQL

  • Generar información sobre datos con el contexto y la comprensión adecuados

Related MCP server: MCP Database Server

🚀 Características principales

  • Herramienta de consulta SQL : ejecute cualquier consulta SQL con la potente sintaxis de DuckDB

  • Múltiples fuentes de datos : consulta directamente desde:

    • Archivos locales (CSV, Parquet, JSON, etc.)

    • Cubos S3 y almacenamiento en la nube

    • bases de datos SQLite

    • Todas las demás fuentes de datos compatibles con DuckDB

  • Gestión de conexión automática : creación automática de archivos de base de datos y gestión de conexiones

  • Manejo inteligente de credenciales : gestión fluida de credenciales de AWS/S3

  • Recursos de documentación : Referencia de importación de datos y SQL de DuckDB integrada para asistentes de IA

📋 Requisitos

  • Python 3.10+

  • Un cliente compatible con MCP (Claude Desktop, Cursor, VS Code con Copilot, etc.)

💻 Instalación

Usando pip

pip install duckdb-mcp-server

De la fuente

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

🔧 Configuración

Opciones de línea de comandos

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

Parámetros requeridos:

  • --db-path - Ruta al archivo de base de datos DuckDB (se creará si no existe)

Parámetros opcionales:

  • --readonly - Ejecutar en modo de solo lectura (generará un error si la base de datos no existe)

  • --s3-region : región de AWS S3 (predeterminado: utiliza la variable de entorno AWS_DEFAULT_REGION)

  • --s3-profile : perfil de AWS para credenciales S3 (predeterminado: usa AWS_PROFILE o 'predeterminado')

  • --creds-from-env : utiliza las credenciales de AWS de las variables de entorno

🔌 Configuración con Claude Desktop

  1. Instalar Claude Desktop desde claude.ai/download

  2. Editar el archivo de configuración de Claude Desktop:

    macOS : ~/Library/Application Support/Claude/claude_desktop_config.json
    Ventanas : %APPDATA%/Claude/claude_desktop_config.json

  3. Agregar configuración del servidor DuckDB MCP:

{ "mcpServers": { "duckdb": { "command": "duckdb-mcp-server", "args": [ "--db-path", "~/claude-duckdb/data.db" ] } } }

📊 Ejemplo de uso

Una vez configurado, puedes pedirle a tu asistente de IA que analice datos usando DuckDB:

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

La IA generará y ejecutará el SQL apropiado:

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

Trabajar con datos S3

Consultar datos directamente desde los buckets S3:

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

La IA generará SQL apropiado para consultar 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;

🌩️ Autenticación de almacenamiento en la nube

El servidor MCP de DuckDB maneja la autenticación de AWS en este orden:

  1. Credenciales explícitas (si --creds-from-env está habilitado)

  2. Credenciales de perfil con nombre (a través de --s3-profile )

  3. Cadena de credenciales predeterminada (entorno, archivo de credenciales compartidas, etc.)

🛠️ Desarrollo

# 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

📜 Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

🙏 Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

-
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